Spaces:
Sleeping
Sleeping
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() | |