Saltearse al contenido

Piper TTS

Piper TTS es un componente que convierte cualquier texto que le proporciones en un archivo de audio. Se ejecuta localmente en tu servidor Nappai usando el binario de Piper y los modelos que ya tienes instalados. El resultado es un archivo de audio que puedes reproducir, guardar o usar como herramienta para que un agente de IA lo lea.

¿Cómo funciona?

El componente llama al ejecutable /usr/local/bin/piper con el modelo que se encuentra en /app/models/piper. Le pasas el texto y el idioma que elijas, y Piper genera un archivo de audio en formato WAV (o el formato que soporte el modelo). El componente devuelve ese archivo como datos binarios, listos para ser usados en el flujo de trabajo.

Entradas

Modo de Mapeo (Mapping Mode)

Este componente cuenta con un modo especial llamado “Mapping Mode” (Modo de Mapeo). Cuando activas este modo mediante el interruptor, se habilita una entrada adicional llamada “Mapping Data” y cada campo de entrada te ofrece tres formas diferentes de proporcionar datos:

  • Fixed (Fijo): Escribes el valor directamente en el campo.
  • Mapped (Mapeado): Conectas la salida de otro componente para usar su resultado como valor.
  • Javascript: Escribes código Javascript para calcular el valor dinámicamente.

Esta flexibilidad te permite crear flujos de trabajo más dinámicos y conectados.

Campos de Entrada

  • Language: Selecciona el idioma en el que quieres que se genere la voz. El componente soporta varios idiomas preentrenados que están disponibles en la carpeta de modelos.
  • Mapping Mode: Activa o desactiva el modo de mapeo para procesar varios registros a la vez.
  • Text to Speech: Escribe o conecta el texto que quieres convertir en audio. Puede ser un mensaje, una respuesta de un agente o cualquier otro contenido textual.
  • Tool Name: Si conectas este componente como una herramienta para un agente, escribe el nombre que aparecerá en la lista de herramientas disponibles.
  • Tool Description: Proporciona una descripción detallada de lo que hace la herramienta. Esto ayuda al agente a decidir cuándo usarla.
  • Tools arguments metadata: Define la metadata de los argumentos que la herramienta aceptará. Se usa cuando el componente se expone como una herramienta.

Salidas

  • Data: Devuelve los datos binarios del archivo de audio generado. Puedes usar esta salida para reproducir el sonido, guardarlo en un archivo o enviarlo a otro componente que lo necesite.
  • Tool: Si el componente se usa como herramienta, esta salida convierte la configuración en un objeto de herramienta que el agente puede invocar.

Ejemplo de Uso

  1. Convertir un mensaje a voz

    • Arrastra el componente Piper TTS al flujo.
    • En Language, selecciona English (US).
    • En Text to Speech, escribe: “Hello, welcome to Nappai. How can I help you today?”
    • Ejecuta el flujo.
    • La salida Data contendrá un archivo WAV que puedes reproducir en un reproductor de audio o enviar a un cliente.
  2. Usar como herramienta de un agente

    • Configura Tool Name como “Speak”.
    • En Tool Description, escribe: “Converts text to spoken audio for the user.”
    • Conecta la salida Tool a la entrada de un componente de agente.
    • Cuando el agente necesite hablar, llamará a la herramienta Speak y recibirá el audio generado.

Componentes Relacionados

  • Text to Speech (Google TTS) – Usa la API de Google para generar voz.
  • Audio Player – Reproduce archivos de audio dentro del dashboard.
  • File Storage – Guarda archivos generados en un bucket o base de datos.

Consejos y Mejores Prácticas

  • Usa Mapping Mode cuando necesites convertir varios textos a la vez; así ahorras tiempo y recursos.
  • Elige el idioma correcto: Piper necesita que el modelo esté disponible para ese idioma; si no lo está, el componente fallará.
  • Controla el tamaño del texto: Los modelos de Piper tienen límites de longitud; si el texto es muy largo, divídelo en partes.
  • Reproduce el audio en el cliente: Si el flujo se ejecuta en un servidor, envía el archivo a un componente de reproducción para que el usuario lo escuche en su navegador.

Consideraciones de Seguridad

  • El componente ejecuta un binario local; asegúrate de que el servidor Nappai esté protegido y que el usuario no pueda ejecutar comandos arbitrarios.
  • Los archivos de audio se generan en memoria y se devuelven como datos binarios; no se guardan en disco a menos que conectes un componente de almacenamiento.
  • Si expones el componente como herramienta, limita los parámetros que el agente puede pasar para evitar inyecciones de código o uso indebido.