Spaces:
Sleeping
Sleeping
| from transformers import MarianMTModel, MarianTokenizer | |
| import gradio as gr | |
| # Diccionario con modelos de traducción | |
| modelos = { | |
| "Español a Inglés": "Helsinki-NLP/opus-mt-es-en", | |
| "Español a Francés": "Helsinki-NLP/opus-mt-es-fr", | |
| "Español a Alemán": "Helsinki-NLP/opus-mt-es-de", | |
| "Español a Italiano": "Helsinki-NLP/opus-mt-es-it", | |
| "Español a Portugués": "Helsinki-NLP/opus-mt-es-pt" | |
| } | |
| # Función de traducción | |
| def traducir(texto, idioma_destino): | |
| modelo = modelos[idioma_destino] | |
| tokenizer = MarianTokenizer.from_pretrained(modelo) | |
| model = MarianMTModel.from_pretrained(modelo) | |
| tokens = tokenizer(texto, return_tensors="pt", padding=True) | |
| traduccion = model.generate(**tokens) | |
| resultado = tokenizer.decode(traduccion[0], skip_special_tokens=True) | |
| return resultado | |
| # Interfaz con Gradio | |
| interfaz = gr.Interface( | |
| fn=traducir, | |
| inputs=[ | |
| gr.Textbox(lines=5, label="Texto en Español"), | |
| gr.Dropdown(choices=list(modelos.keys()), label="Traducir a", value="Español a Inglés") | |
| ], | |
| outputs="text", | |
| title="🌍 Traductor Multilingüe", | |
| description="Traducí textos desde español a varios idiomas con inteligencia artificial 🤖" | |
| ) | |
| # Lanzar la app | |
| interfaz.launch() | |