Mds21/Traslation-Transformer
0
1import gradio as gr 2from transformers import pipeline3translation_pipeline_german = pipeline('translation_en_to_de')4translation_pipeline_hindi = pipeline('translation_en_to_de')5def hindi_translate(text_):6 from transformers import MarianMTModel, MarianTokenizer7 # Load the English to Hindi translation model and tokenizer8 model_name = "Helsinki-NLP/opus-mt-en-hi"9 model = MarianMTModel.from_pretrained(model_name)10 tokenizer = MarianTokenizer.from_pretrained(model_name)11 # English text to be translated12 english_text = text_13 # Tokenize the input text14 inputs = tokenizer.encode(english_text, return_tensors="pt")15 # Perform translation16 translation = model.generate(inputs)17 # Decode the translation18 hindi_translation = tokenizer.decode(translation[0], skip_special_tokens=True)19 return hindi_translation20 21def en_hi_translate(text):22 from googletrans import Translator23 # Initialize the translator24 translator = Translator()25 26 # English text to be translated27 english_text = text28 29 # Translate text from English to Hindi30 translation = translator.translate(english_text, src='en', dest='hi')31 return translation.text32 33# results = translation_pipeline('I love ice cream')34# results[0]['translation_text']35def translate_transformers(English,Language_To_Translate):36 if "German" in Language_To_Translate:37 results = translation_pipeline_german(English)38 return results[0]['translation_text']39 elif "Hindi" in Language_To_Translate:40 results = en_hi_translate(English)41 return results42 43 44interface = gr.Interface(fn=translate_transformers, 45 inputs=[gr.inputs.Textbox(lines=2, placeholder='Text to translate'),46 gr.CheckboxGroup(["German", "Hindi"])],47 outputs='text')48 49interface.launch()