loudness.ai

Guía

Texto a voz local y gratuito para Open WebUI

Open WebUI puede leer las respuestas en voz alta con cualquier servidor que hable la API de voz de OpenAI. loudness-tts es uno de ellos, gratuito y local, con voces en 31 variantes regionales. La configuración tarda unos cinco minutos.

Actualizada el 16 de octubre de 2026

  1. 1Inicia el servidor de voz

    Con Docker, que incluye FFmpeg:

    docker run -d --name loudness-tts -p 8880:8880 -v loudness-tts:/data ghcr.io/loudness-ai/loudness-tts

    O con Python, escuchando en todas las interfaces de red para que el contenedor de Open WebUI pueda llegar a él:

    python -m pip install loudness-tts
    loudness-tts serve --host 0.0.0.0 --port 8880 --api-key elige-una-clave

    Comprueba que responde: http://127.0.0.1:8880/health en tu navegador muestra "status": "ok".

  2. 2Abre los ajustes de audio

    En Open WebUI, abre Admin Panel → Settings → Audio (los nombres aparecen traducidos si usas la interfaz en español).

  3. 3Completa los ajustes de texto a voz

    • Text-to-Speech Engine: OpenAI
    • API Base URL: http://host.docker.internal:8880/v1 si Open WebUI funciona en Docker, o http://127.0.0.1:8880/v1 si funciona directamente en el mismo ordenador
    • API Key: la clave que elegiste, o cualquier texto si el servidor no tiene clave
    • TTS Model: tts-1
    • TTS Voice: best:es-ES para la mejor voz en español, o el identificador de una voz

    Después, selecciona Save. En Linux, inicia el contenedor de Open WebUI con --add-host=host.docker.internal:host-gateway para que host.docker.internal llegue a tu ordenador.

  4. 4Pruébalo

    Empieza un chat nuevo, envía un mensaje y pulsa el icono del altavoz bajo la respuesta. La primera respuesta puede tardar unos segundos más mientras se descarga la voz.

  5. 5Elige voces e idiomas

    Como voz de TTS sirve el identificador de cualquier voz, por ejemplo es_MX-claude-high para el español de México, o best: seguido del idioma. También puedes iniciar el servidor con --language es-ES. loudness-tts voices --language es muestra los identificadores; escúchalas antes en la demo en el navegador o en Piper Voice Explorer. Los nombres de voz de OpenAI corresponden a buenas voces en inglés (EE. UU.): nova, shimmer, coral, sage y marin son femeninas; echo, onyx, ash, ballad, verse y cedar son masculinas; alloy y fable son las mejores en general.

  6. 6Opcional: ejecuta los dos con Docker Compose

    Para iniciar Open WebUI y el servidor de voz juntos, con los ajustes de audio completos desde el primer arranque:

    services:
      open-webui:
        image: ghcr.io/open-webui/open-webui:main
        ports: ["3000:8080"]
        volumes: ["open-webui:/app/backend/data"]
        environment:
          AUDIO_TTS_ENGINE: openai
          AUDIO_TTS_OPENAI_API_BASE_URL: http://loudness-tts:8880/v1
          AUDIO_TTS_OPENAI_API_KEY: local
          AUDIO_TTS_MODEL: tts-1
          AUDIO_TTS_VOICE: "best:es-ES"
      loudness-tts:
        image: ghcr.io/loudness-ai/loudness-tts
        volumes: ["loudness-tts:/data"]
    volumes:
      open-webui:
      loudness-tts:

    Open WebUI aplica estos valores en su primer arranque; después, cámbialos en el Admin Panel. Más detalles en la documentación de Open WebUI (en inglés).

Problemas habituales

Open WebUI no se conecta

Dentro de un contenedor, 127.0.0.1 es el propio contenedor. Usa http://host.docker.internal:8880/v1, o http://loudness-tts:8880/v1 con Docker Compose, e inicia el servidor de Python con --host 0.0.0.0.

Error 401

La clave de API de Open WebUI debe coincidir con la --api-key del servidor.

El texto en español suena con acento inglés

Elige una voz del idioma de tus respuestas, por ejemplo best:es-ES, o inicia el servidor con --language es-ES.

La primera respuesta tarda

La voz se descarga una sola vez. Descárgala antes con loudness-tts download --language es-ES, o añade -e LOUDNESS_TTS_PRELOAD="es-ES" al comando de Docker.

Siguientes pasos

Más guías

Todas las guías para desarrolladores

Más de Loudness.ai

Inicia sesión en Loudness.ai