Spaces:
Runtime error
Runtime error
title: Gui Ejemplo Transformer Encoder Decoder | |
emoji: 📉 | |
colorFrom: green | |
colorTo: gray | |
sdk: gradio | |
sdk_version: 3.50.2 | |
app_file: app.py | |
pinned: false | |
# Traductor Inglés a Español con Gradio | |
Esta aplicación web utiliza la librería Gradio y un modelo de Hugging Face Transformers para traducir texto del inglés al español. | |
## Funcionalidades | |
* **Entrada de texto en inglés:** Un cuadro de texto grande para que los usuarios peguen o escriban el texto que desean traducir. | |
* **Traducción automática:** Utiliza un modelo preentrenado de Hugging Face Transformers para traducir el texto del inglés al español. | |
* **Salida de texto traducido:** Un cuadro de texto grande donde se muestra la traducción al español. Este cuadro es de solo lectura. | |
* **Botón "Borrar todo":** Permite limpiar fácilmente el cuadro de texto de entrada. | |
* **Instrucciones para copiar:** Se incluye un texto informativo indicando cómo copiar el texto traducido utilizando los atajos estándar del sistema operativo (Ctrl+C / Cmd+C en macOS). | |
## Cómo usar | |
Esta aplicación está diseñada para ser desplegada en [Hugging Face Spaces](https://huggingface.co/spaces). Una vez que la aplicación esté corriendo: | |
1. Ingresa el texto que deseas traducir al inglés en el cuadro de texto etiquetado como "Texto en inglés". | |
2. La traducción al español aparecerá automáticamente en el cuadro de texto etiquetado como "Traducción al español". | |
3. Si necesitas borrar el texto de entrada, haz clic en el botón "Borrar todo". | |
4. Para copiar el texto traducido, selecciónalo en el cuadro de "Traducción al español" y utiliza los atajos de teclado estándar (Ctrl+C en Windows/Linux, Cmd+C en macOS) o el menú contextual del navegador. | |
## Código | |
Aquí está el código Python de la aplicación (puedes copiar y pegar esto en tu archivo `app.py`): | |
```python | |
from transformers import pipeline | |
import gradio as gr | |
# Define el modelo de traducción inglés-español | |
modelo_traduccion = pipeline("translation", model="Helsinki-NLP/opus-mt-en-es") | |
def traducir_texto(texto_en): | |
""" | |
Traduce directamente el texto de entrada del inglés al español. | |
""" | |
if not texto_en.strip(): | |
return "" | |
try: | |
resultado = modelo_traduccion(texto_en) | |
return resultado[0]['translation_text'] | |
except Exception as e: | |
return f"Error en la traducción: {e}" | |
def borrar_entrada(texto_entrada): | |
""" | |
Borra el texto del cuadro de texto de entrada. | |
""" | |
return "" | |
with gr.Blocks() as interfaz_traductor: | |
""" | |
Define la interfaz gráfica de la aplicación de traducción de inglés a español (básica). | |
""" | |
gr.Markdown("# Traductor Inglés a Español") | |
with gr.Row(): | |
with gr.Column(): | |
texto_entrada_en = gr.Textbox(label="Texto en inglés", placeholder="Pega aquí el texto en inglés", lines=10) | |
boton_borrar = gr.Button("Borrar todo") | |
with gr.Column(): | |
texto_salida_es = gr.Textbox(label="Traducción al español", placeholder="La traducción aparecerá aquí", interactive=False, lines=10) | |
gr.Markdown("*Puedes copiar el texto traducido seleccionándolo y usando Ctrl+C (o Cmd+C en macOS).*") | |
texto_entrada_en.change(traducir_texto, inputs=texto_entrada_en, outputs=texto_salida_es) | |
boton_borrar.click(borrar_entrada, inputs=texto_entrada_en, outputs=texto_entrada_en) | |
interfaz_traductor.launch() | |
``` | |
## Requisitos | |
Asegúrate de tener la librería `gradio` y `transformers` instaladas. Si estás utilizando Hugging Face Spaces, puedes incluir las siguientes líneas en tu archivo `requirements.txt`: | |
``` | |
gradio | |
transformers | |
``` | |
## Despliegue en Hugging Face Spaces | |
1. Crea un nuevo Space en [Hugging Face Spaces](https://huggingface.co/spaces). | |
2. Elige una plantilla de Gradio (Gradio Static o Gradio Python SDK). | |
3. Sube tu archivo `app.py` (con el código de arriba) y un archivo `requirements.txt` (con las dependencias). | |
4. Hugging Face Spaces se encargará de construir y desplegar tu aplicación automáticamente. | |