Spaces:
Sleeping
Sleeping
import gradio as gr | |
from transformers import pipeline | |
import torch | |
from diffusers import DiffusionPipeline | |
from transformers import pipeline, AutoTokenizer | |
headline_gen = pipeline("text2text-generation", model="Michau/t5-base-en-generate-headline") | |
ar_to_en_translator = pipeline("translation", model="Helsinki-NLP/opus-mt-ar-en") | |
en_to_ar_translator = pipeline("translation", model="Helsinki-NLP/opus-mt-en-ar") | |
pipe_image = DiffusionPipeline.from_pretrained("runwayml/stable-diffusion-v1-5") | |
def generate_headline(selected_language, text): | |
if selected_language == "Arabic": | |
translated_text = translate_ar_to_en(text) # Translate Arabic to English | |
english_headline = generate_headline_english(translated_text) # Generate headline in English | |
arabic_headline = translate_en_to_ar(english_headline) # Translate headline back to Arabic | |
image = generate_image(english_headline) # Generate image based on English headline | |
return arabic_headline, image | |
elif selected_language == "English": | |
english_headline = generate_headline_english(text) | |
image = generate_image(english_headline) | |
return english_headline, image | |
def translate_ar_to_en(text): | |
var_ar_to_en = ar_to_en_translator(text)[0]['translation_text'] | |
return var_ar_to_en | |
def translate_en_to_ar(text): | |
var_en_to_ar - en_to_ar_translator(text)[0]['translation_text'] | |
return var_en_to_ar | |
def generate_headline_english(text): | |
result1 = headline_gen(text, max_length=100, truncation=True) | |
result2 = result1[0]['generated_text'] | |
return result2 | |
def generate_image(text): | |
my_image = pipe_image(text).images[0] | |
return my_image | |
examples = [ | |
#First parameter is for the dropdown menu, and the second parameter is for the starter of the poem | |
["Arabic", "تعتبر انبعاثات الغازات الدفيئة، مثل ثاني أكسيد الكربون (CO2) والميثان (CH4)، من الأسباب الرئيسية لتغير المناخ العالمي. تؤدي الأنشطة البشرية، مثل حرق الوقود الأحفوري لإنتاج الطاقة وإزالة الغابات والعمليات الصناعية، إلى زيادة كبيرة في تركيز هذه الغازات في الغلاف الجوي. وفقًا للهيئة الحكومية الدولية المعنية بتغير المناخ (IPCC)، ارتفعت مستويات ثاني أكسيد الكربون بأكثر من 50٪ منذ عصر ما قبل الصناعة، مما ساهم في ارتفاع درجات الحرارة العالمية."] | |
] | |
interface = gr.Interface( | |
fn=generate_headline, | |
inputs=[ | |
gr.Dropdown(choices=["Arabic", "English"], label="Select Language"), | |
gr.Textbox(lines=5, placeholder="Enter article text here...") | |
], | |
outputs=[ | |
gr.Textbox(label="Generated Headline"), | |
gr.Image(label="Generated Image") | |
], | |
examples=examples | |
) | |
interface.launch() | |
if __name__ == "__main__": | |
app.run(host="0.0.0.0", port=7860) |