Spaces:
Runtime error
Runtime error
| # Install necessary libraries first | |
| !pip install gradio transformers sentencepiece | |
| # Now, import everything | |
| import gradio as gr | |
| from transformers import MarianMTModel, MarianTokenizer | |
| # Load models | |
| en_to_ur_model_name = "Helsinki-NLP/opus-mt-en-ur" | |
| ur_to_en_model_name = "Helsinki-NLP/opus-mt-ur-en" | |
| en_to_ur_tokenizer = MarianTokenizer.from_pretrained(en_to_ur_model_name) | |
| en_to_ur_model = MarianMTModel.from_pretrained(en_to_ur_model_name) | |
| ur_to_en_tokenizer = MarianTokenizer.from_pretrained(ur_to_en_model_name) | |
| ur_to_en_model = MarianMTModel.from_pretrained(ur_to_en_model_name) | |
| # Define translation functions | |
| def translate_en_to_ur(text): | |
| inputs = en_to_ur_tokenizer(text, return_tensors="pt", padding=True) | |
| translated = en_to_ur_model.generate(**inputs) | |
| result = en_to_ur_tokenizer.decode(translated[0], skip_special_tokens=True) | |
| return result | |
| def translate_ur_to_en(text): | |
| inputs = ur_to_en_tokenizer(text, return_tensors="pt", padding=True) | |
| translated = ur_to_en_model.generate(**inputs) | |
| result = ur_to_en_tokenizer.decode(translated[0], skip_special_tokens=True) | |
| return result | |
| # Create Gradio Interface | |
| with gr.Blocks() as app: | |
| gr.Markdown("## π English β Urdu Translator (Free, Open Source)") | |
| with gr.Row(): | |
| input_text = gr.Textbox(lines=4, placeholder="Enter your text here...") | |
| with gr.Row(): | |
| en_to_ur_button = gr.Button("Translate English β Urdu") | |
| ur_to_en_button = gr.Button("Translate Urdu β English") | |
| output_text = gr.Textbox(lines=4, label="Translated Text") | |
| en_to_ur_button.click(fn=translate_en_to_ur, inputs=input_text, outputs=output_text) | |
| ur_to_en_button.click(fn=translate_ur_to_en, inputs=input_text, outputs=output_text) | |
| # Launch app | |
| app.launch() | |