Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

uttera-tts-vllm

Servidor TTS de alto rendimiento basado en vLLM con batching continuo, optimizado para despliegue multi-inquilino en GPU grande (≥32GB VRAM). Soporta VoxCPM2, clonación de voz ad-hoc y API compatible con OpenAI.

Ficha actualizada 25 sept 2026, 8:53 · upstream 25 sept 2026, 8:45 · release v1.5.0

Ver códigoProblemas y ayudaRepositorio ↗Sitio oficial
00

Qué es uttera-tts-vllm

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

uttera-tts-vllm es un servidor Text-to-Speech construido sobre nano-vllm-voxcpm, diseñado para entornos cloud multi-inquilino que requieren alto throughput. Utiliza el motor de batching continuo de vLLM para maximizar la utilización de GPU en cargas concurrentes significativas.

El repositorio implementa una arquitectura monolítica en Python con FastAPI como capa de control, exponiendo endpoints compatibles con OpenAI (/v1/audio/speech, /v1/voices, /health). Incluye clonación de voz ad-hoc nativa desde el día uno mediante subida de archivos multipart, algo que diferencia a este proyecto de otras implementaciones TTS. El sistema gestiona caché SHA-256 en disco con control granular por solicitud para privacidad.

La versión v1.5.0 estabiliza la API bajo SemVer, añade circuit breaker para resiliencia, headers de integridad (Content-Digest RFC 9530) y soporte para formatos MP3/WAV/PCM/Opus/FLAC. El despliegue es standalone: cualquier load balancer puede estar delante del servidor sin necesidad de coordinación externa.

CASOS DE USO
  • Servicio TTS multi-inquilino en GPU grande (≥24GB VRAM) para empresas con alta concurrencia
  • Clonación de voz ad-hoc para aplicaciones que requieren síntesis personalizada por usuario
  • Infraestructura cloud donde el modelo debe residir en VRAM 24/7 para throughput máximo
  • API compatible con OpenAI para integración con clientes existentes sin cambios de protocolo
PUNTOS DESTACADOS
  • Clonación de voz ad-hoc nativa mediante subida multipart, única entre implementaciones TTS basadas en vLLM
  • Circuit breaker integrado con auto-recuperación sin reinicio del proceso
  • Control granular de caché por solicitud (cache:false) para privacidad en cargas sensibles
  • Headers de integridad completos: X-Audio-Duration, X-Audio-SHA256 y Content-Digest RFC 9530
  • Métricas Prometheus nativas con series de bajo cardinalidad para scraping directo
  • API surface congelada bajo SemVer en rama 1.x sin cambios breaking
PRECAUCIONES
  • Requiere GPU con ≥32GB VRAM; no apto para hardware consumer (RTX 4070/4080)
  • Registro de voces estático basado en archivo voices.json, sin API dinámica POST/DELETE
  • Clonación de voz ad-hoc no disponible en endpoint streaming /v1/audio/speech/stream
  • Modelo residente en VRAM 24/7; no soporta carga base baja con picos ocasionales
  • Sin harness de benchmarking interno; métricas referenciales en repositorio externo
VISUAL

Capturas del proyecto

Imágenes reales detectadas en la documentación del repositorio.

uttera.ai — The voice layer for your AI
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU4 vCPUrecomendación inicial
MEMORIA8 GBRAM estimada
DISCO10 GBalmacenamiento base
COMPLEJIDADmediumnivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Listo para automatizar

Desplegar con docker compose up -d configurando GPU passthrough. Ajustar VLLM_GPU_MEM_UTIL (default 0.45) según VRAM disponible. Para cargas sensibles, usar CACHE_TTL_MINUTES=0 o cache:false por solicitud. Instalar en /etc/systemd/system/uttera-tts-vllm.service para systemd. El puerto canónico es 9004; STT usa 9005. Verificar ENGINE_FAIL_THRESHOLD (default 3) para circuit breaker.

✓Dockerfile
✓Compose
✓One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Node.jsFastAPIPython
SERVICIOS
No detectados
BASES DE DATOS
No detectadas
PUERTOS
9004
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.