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): doc = fitz.open(stream=file.read(), filetype="pdf") text = "" for page in doc: text += page.get_text() if not question.strip(): return "يرجى كتابة سؤال لبدء التحليل." result = qa(question=question, context=text[:4000]) # قص النص لتفادي الطول الزائد return result["answer"] gr.Interface( fn=answer_pdf, inputs=[ gr.File(label="ملف PDF"), gr.Textbox(label="ما سؤالك؟", placeholder="مثال: ما هي الأدوات المذكورة؟") ], outputs=gr.Textbox(label="الإجابة"), title="تحليل ملفات PDF بالعربية", description="ارفع ملف PDF واسأل سؤالًا وسيتم الإجابة باستخدام نموذج Arabic BERT" ).launch()