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()