| | import gradio as gr |
| | from transformers import pipeline |
| |
|
| | |
| | translator = pipeline("translation_en_to_fr", model="google-t5/t5-base") |
| |
|
| | |
| | def translate_text(text, source_lang, target_lang): |
| | |
| | prompt = f"translate {source_lang} to {target_lang}: {text}" |
| | |
| | |
| | translation = translator(prompt, max_length=512) |
| | |
| | |
| | return translation[0]['translation_text'] if 'translation_text' in translation[0] else "Translation failed." |
| |
|
| | |
| | with gr.Blocks() as demo: |
| | gr.Markdown("# π AI Translator\nTranslate text between languages using `google-t5/t5-base`.") |
| |
|
| | with gr.Row(): |
| | input_text = gr.Textbox(label="Enter text to translate") |
| | |
| | with gr.Row(): |
| | source_lang = gr.Dropdown(choices=["English", "French"], value="English", label="Source Language") |
| | target_lang = gr.Dropdown(choices=["English", "French"], value="French", label="Target Language") |
| |
|
| | translate_button = gr.Button("Translate") |
| | output_text = gr.Textbox(label="Translated Text", interactive=False) |
| |
|
| | |
| | translate_button.click(translate_text, inputs=[input_text, source_lang, target_lang], outputs=[output_text]) |
| |
|
| | |
| | demo.launch() |