farouk1's picture
Update app.py
530bd36 verified
raw
history blame
1.48 kB
import gradio as gr
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
MODEL = "google/flan-t5-base" # نموذج مجاني وخفيف
tokenizer = AutoTokenizer.from_pretrained(MODEL)
model = AutoModelForSeq2SeqLM.from_pretrained(MODEL)
def generate_content(topic, type_choice):
if type_choice == "YouTube Script":
prompt = f"اكتب سكربت يوتيوب احترافي بالعربية عن: {topic}. اجعله دقيقة واحدة مع مقدمة جذابة ونقاط أساسية وخاتمة."
elif type_choice == "YouTube Title":
prompt = f"أنشئ عنوان يوتيوب جذاب قصير لا يتجاوز 60 حرفاً عن: {topic}"
elif type_choice == "Description + SEO":
prompt = f"اكتب وصف يوتيوب مُحسَّن للسيو عن: {topic} مع هاشتاغات مقترحة."
else:
prompt = f"اكتب منشور لينكدإن احترافي قصير بالعربية عن: {topic}"
inputs = tokenizer(prompt, return_tensors="pt")
outs = model.generate(**inputs, max_length=300)
return tokenizer.decode(outs[0], skip_special_tokens=True)
iface = gr.Interface(
fn=generate_content,
inputs=[
gr.Textbox(label="الموضوع"),
gr.Radio(["YouTube Script", "YouTube Title", "Description + SEO", "LinkedIn Post"], label="نوع المحتوى")
],
outputs=gr.Textbox(label="النتيجة")
)
if __name__ == "__main__":
iface.launch()