File size: 1,462 Bytes
21e41a7 8d7364a 21e41a7 8d7364a 21e41a7 8d7364a 21e41a7 8d7364a 21e41a7 8d7364a 21e41a7 ae89794 53590e1 ae89794 151d5cd 21e41a7 06a1c83 53590e1 06a1c83 21e41a7 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
import gradio as gr
from transformers import pipeline
# Inicialización del traductor
traductor = pipeline(task='text2text-generation', model='facebook/m2m100_418M')
def traducir_texto(texto, idioma_destino):
respuesta = traductor(texto, forced_bos_token_id=traductor.tokenizer.get_lang_id(lang=idioma_destino))
return respuesta[0]["generated_text"]
def traducir_ingles_a_espanol(texto):
return traducir_texto(texto, "es")
def traducir_espanol_a_ingles(texto):
return traducir_texto(texto, "en")
def limpiar_entrada(texto):
return ""
with gr.Blocks() as demo:
with gr.Row():
with gr.Column(scale=4):
entrada_texto = gr.Textbox()
etiqueta_respuesta = gr.Textbox()
with gr.Column(scale=1):
with gr.Row():
boton_limpiar = gr.Button("Limpiar")
with gr.Row():
boton_ingles_espanol = gr.Button("Inglés a Español")
with gr.Row():
boton_espanol_ingles = gr.Button("Español a Inglés")
boton_ingles_espanol.click(
fn=traducir_ingles_a_espanol,
inputs=entrada_texto,
outputs=etiqueta_respuesta)
boton_espanol_ingles.click(
fn=traducir_espanol_a_ingles,
inputs=entrada_texto,
outputs=etiqueta_respuesta)
boton_limpiar.click(
fn=limpiar_entrada,
inputs=entrada_texto,
outputs=entrada_texto)
demo.launch()
|