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