Faisalaldwaish1's picture
Create app.py
1fb8bfb verified
import re
import gradio as gr
from transformers import pipeline
# تحميل النموذج باستخدام pipeline
text_generator = pipeline("text-generation", model="aubmindlab/aragpt2-medium")
# قراءة القصيدة من الملف
def load_poem(file_path):
with open(file_path, 'r', encoding='utf-8') as file:
text = file.read()
return text
# دالة لإكمال النص مع التحقق مما إذا كان الإدخال جزءًا من القصيدة
def complete_poem(user_input):
# قراءة النص من الملف
file_text = load_poem("poem.txt")
# التحقق مما إذا كان النص المدخل جزءًا من القصيدة
if user_input not in file_text:
return "النص المدخل ليس جزءًا من القصيدة."
# توليد النص المكتمل
combined_text = file_text + "\n" + user_input
completion = text_generator(combined_text, max_length=300, num_return_sequences=1)
# استخراج جزء بسيط بعد النص المدخل
generated_text = completion[0]["generated_text"]
match = re.search(re.escape(user_input) + r'([\s\S]*?)[.!?]', generated_text)
if match:
return match.group(1).strip()
else:
return "لم يتم العثور على جملة كاملة بعد الإدخال مباشرة."
# واجهة Gradio
interface = gr.Interface(fn=complete_poem,
inputs="text",
outputs="text",
title="إكمال النصوص الشعرية",
description="تكملة لقصيدة متعب التركي.")
# تشغيل الواجهة
interface.launch()