juancamval's picture
Update README.md
2af2df3 verified

A newer version of the Gradio SDK is available: 5.42.0

Upgrade
metadata
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. 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):

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.
  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.