import gradio as gr from translate import Translator def translate_text(text, source_lang, target_lang): translator = Translator(from_lang=source_lang, to_lang=target_lang) translation = translator.translate(text) return translation # List of language codes languages = ["id", "en", "es", "fr", "de", "zh", "ja", "ko", "ru", "it", "pt", "nl", "ar", "hi"] with gr.Blocks() as demo: gr.Markdown("# Text Translation") with gr.Row(): with gr.Column(): source_lang = gr.Dropdown(label="Source Language", choices=languages, value="id") target_lang = gr.Dropdown(label="Target Language", choices=languages, value="en") input_text = gr.Textbox(label="Input Text") with gr.Column(): output_text = gr.Textbox(label="Translated Text", interactive=False) translate_button = gr.Button("Translate") translate_button.click(translate_text, inputs=[input_text, source_lang, target_lang], outputs=output_text) demo.launch()