Spaces:
Sleeping
Sleeping
from transformers import T5ForConditionalGeneration, AutoTokenizer | |
import gradio as gr | |
model_name = "google/flan-t5-large" | |
tokenizer = AutoTokenizer.from_pretrained(model_name) | |
model = T5ForConditionalGeneration.from_pretrained(model_name) | |
def translate(input_text, src_lang, to_lang): | |
prompt = f"Translate {src_lang} to {to_lang}: {input_text}" | |
input_ids = tokenizer(prompt, return_tensors="pt").input_ids | |
outputs = model.generate(input_ids, max_new_tokens=1000) | |
model_translation = tokenizer.decode(outputs[0]) | |
final_translation = model_translation[5:-4] | |
return final_translation | |
languages = [ | |
'English', 'Spanish', 'Japanese', 'Persian', 'Hindi', 'French', 'Chinese', | |
'Bengali', 'Gujarati', 'German', 'Telugu', 'Italian', 'Arabic', 'Polish', | |
'Tamil', 'Marathi', 'Malayalam', 'Oriya', 'Panjabi', 'Portuguese', 'Urdu', | |
'Galician', 'Hebrew', 'Korean', 'Catalan', 'Thai', 'Dutch', 'Indonesian', | |
'Vietnamese', 'Bulgarian', 'Filipino', 'Central Khmer', 'Lao', 'Turkish', | |
'Russian', 'Croatian', 'Swedish', 'Yoruba', 'Kurdish', 'Burmese', 'Malay', | |
'Czech', 'Finnish', 'Somali', 'Tagalog', 'Swahili', 'Sinhala', 'Kannada', | |
'Zhuang', 'Igbo', 'Xhosa', 'Romanian', 'Haitian', 'Estonian', 'Slovak', | |
'Lithuanian', 'Greek', 'Nepali', 'Assamese', 'Norwegian' | |
] | |
version = "v-0.0.1" | |
desc = "<h1><em>tTranslaterR</em> is a translation app powered by AI models capable of translating text between 50+ languages</h1>" | |
translator = gr.Interface(fn=translate, | |
inputs=[gr.Textbox(label="Input Text", placeholder="Input Text To Be Translated"), | |
gr.Dropdown(label="From", | |
choices=languages, | |
value="English",), | |
gr.Dropdown(label="To", | |
choices=languages, | |
value="German")], | |
outputs=gr.Textbox(label="Translation"), | |
title=f"tTranslatorR {version} model {model_name}", | |
description=desc | |
) | |
translator.launch() | |