JyothiMR/Multi_Language_Translator
0
1# Use a pipeline as a high-level helper2from transformers import pipeline3import torch4import gradio as gr5import json6 7json_file_path = 'languages.json'8 9with open(json_file_path, 'r') as file:10 language_data = json.load(file)11 12Lang_list = [item['Language'] for item in language_data]13#print(Lang_list)14 15def get_flores_200_code(language):16 for entry in language_data:17 if entry['Language'].lower() == language.lower():18 return entry['FLORES-200 code']19 return None20 21 22translator = pipeline("translation", model="facebook/nllb-200-distilled-600M")23 24def translation(text, source_lang, target_lang):25 translated_text = translator(text,26 src_lang=get_flores_200_code(source_lang),27 tgt_lang = get_flores_200_code(target_lang))28 return translated_text[0]['translation_text']29 30demo = gr.Interface(fn = translation, 31 inputs=[gr.Textbox(label = 'Input text to translate', lines = 6),32 gr.Dropdown(Lang_list, label = 'Select Source language'),33 gr.Dropdown(Lang_list, label = 'Select destination language')],34 outputs=[gr.Textbox(label ='Translated Text', lines = 6)],35 title= 'Language Translator',36 description = 'This application will be used for Language Translation')37 38demo.launch()