Spaces:
Sleeping
Sleeping
File size: 1,304 Bytes
e8d23f1 6d0a141 e8d23f1 6d0a141 e8d23f1 6d0a141 e8d23f1 6d0a141 e8d23f1 6d0a141 e8d23f1 6d0a141 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
import fitz # PyMuPDF
import gradio as gr
from transformers import pipeline
# تحميل نموذج لغة عربية للإجابة على الأسئلة
qa = pipeline("question-answering", model="aubmindlab/bert-base-arabertv2")
def answer_pdf(file, question):
# فتح ملف PDF من المسار المؤقت
doc = fitz.open(file.name)
text = ""
for page in doc:
text += page.get_text()
if not question.strip():
return "يرجى كتابة سؤال لبدء التحليل."
# الإجابة على السؤال باستخدام النص المستخرج
result = qa(question=question, context=text[:4000]) # تقصير النص لتجنب تجاوز الحد
return result["answer"]
# واجهة المستخدم عبر Gradio
gr.Interface(
fn=answer_pdf,
inputs=[
gr.File(label="📄 ارفع ملف PDF"),
gr.Textbox(label="❓ سؤالك", placeholder="مثال: ما الأدوات التي تعالج الصور؟")
],
outputs=gr.Textbox(label="🤖 الإجابة"),
title="📚 قارئ ملفات PDF الذكي بالعربية",
description="استخدم هذه الأداة لتحليل ملفات PDF المكتوبة بالعربية وطرح أسئلتك عليها",
).launch(share=True)
|