Spaces:
Runtime error
Runtime error
import gradio as gr | |
from transformers import pipeline | |
translation_pipeline_german = pipeline('translation_en_to_de') | |
translation_pipeline_hindi = pipeline('translation_en_to_de') | |
def hindi_translate(text_): | |
from transformers import MarianMTModel, MarianTokenizer | |
# Load the English to Hindi translation model and tokenizer | |
model_name = "Helsinki-NLP/opus-mt-en-hi" | |
model = MarianMTModel.from_pretrained(model_name) | |
tokenizer = MarianTokenizer.from_pretrained(model_name) | |
# English text to be translated | |
english_text = text_ | |
# Tokenize the input text | |
inputs = tokenizer.encode(english_text, return_tensors="pt") | |
# Perform translation | |
translation = model.generate(inputs) | |
# Decode the translation | |
hindi_translation = tokenizer.decode(translation[0], skip_special_tokens=True) | |
return hindi_translation | |
def en_hi_translate(text): | |
from googletrans import Translator | |
# Initialize the translator | |
translator = Translator() | |
# English text to be translated | |
english_text = text | |
# Translate text from English to Hindi | |
translation = translator.translate(english_text, src='en', dest='hi') | |
return translation.text | |
# results = translation_pipeline('I love ice cream') | |
# results[0]['translation_text'] | |
def translate_transformers(English,Language_To_Translate): | |
if "German" in Language_To_Translate: | |
results = translation_pipeline_german(English) | |
return results[0]['translation_text'] | |
elif "Hindi" in Language_To_Translate: | |
results = en_hi_translate(English) | |
return results | |
interface = gr.Interface(fn=translate_transformers, | |
inputs=[gr.inputs.Textbox(lines=2, placeholder='Text to translate'), | |
gr.CheckboxGroup(["German", "Hindi"])], | |
outputs='text') | |
interface.launch() |