EchoraEchora
Volver a los modelos

Kyutai Pocket TTS: el modelo que probó la aceleración por GPU y descubrió que no la necesitaba

11 de septiembre de 2026
•
7 min de lectura

El equipo de Kyutai hizo algo que la mayoría de los laboratorios de TTS ni siquiera se molesta en intentar: ejecutó benchmarks de Pocket TTS en una GPU para comprobar cuánto aumentaría la velocidad. La respuesta fue que no hubo ninguna mejora significativa. Con un batch size de uno, el coste de trasladar datos hacia y desde la GPU supera, de hecho, cualquier ventaja que la potencia de cálculo adicional pudiera aportar a un modelo diseñado con tanta eficiencia. No se trata de presentar una limitación como si fuera una ventaja; es una señal auténtica de que Pocket TTS se construyó desde cero para rendir de forma excelente en CPU, no solo para funcionar de manera aceptable en ella.

¿Qué es Kyutai Pocket TTS?

Kyutai Pocket TTS es un modelo de texto a voz de 100 millones de parámetros, con licencia MIT, que el laboratorio parisino Kyutai publicó el 13 de enero de 2026. El modelo base en inglés se entrenó exclusivamente con conjuntos de datos públicos que suman 88.000 horas de audio. Más tarde, el proyecto amplió su cobertura lingüística con la versión v2.0.0 de abril de 2026, que añadió francés, alemán, español, portugués e italiano. Se diseñó específicamente como la contraparte para ejecución en dispositivos del modelo de streaming más grande de Kyutai, Kyutai TTS 1.6B —utilizado en el producto Unmute del laboratorio—, que sigue siendo la opción más adecuada para implementaciones en servidores donde la GPU ya forma parte de la infraestructura.

Ventajas funcionales de Kyutai Pocket TTS

  • Verdaderamente nativo para CPU, no solo compatible con CPU. La arquitectura está optimizada específicamente para ejecutarse en CPU, hasta el punto de que se probó la aceleración por GPU y se comprobó que no aportaba ninguna mejora real de velocidad para el diseño de este modelo.
  • Latencia extremadamente baja: entrega el primer fragmento de audio en unos 200ms y genera audio a una velocidad aproximada de 6 veces el tiempo real en una CPU de consumo —el benchmark se realizó en un MacBook Air M4— usando solo 2 núcleos de CPU.
  • Clonación de voz zero-shot, que captura una voz objetivo a partir de un breve clip de referencia sin necesidad de ningún proceso de ajuste fino.
  • Arquitectura de streaming capaz de procesar texto de longitud arbitraria, en lugar de limitarse a generaciones cortas y de longitud fija.
  • Cobertura de seis idiomas desde la versión v2.0.0: inglés, francés, alemán, español, portugués e italiano; algunos cuentan además con variantes más ligeras de 6 capas para entornos con restricciones de implementación aún mayores.
  • Gran flexibilidad de implementación, incluida una versión que se ejecuta en el navegador del lado del cliente mediante WebAssembly, además de la API de Python y la CLI estándar.

Cómo el modelado continuo de audio evita el cuello de botella de la tokenización

Esta decisión arquitectónica concreta es la que hace posible la eficiencia de Pocket TTS, y responde a una filosofía de base similar a la de otros enfoques sin tokenizer del sector. Pocket TTS se basa en Continuous Audio Language Modeling (CALM) y hereda la línea técnica del códec Mimi de la propia Kyutai, pero trabaja con vectores latentes continuos durante todo el proceso de generación, en vez de usar tokens discretos. La mayoría de los códecs de audio neuronales recurren a la cuantización vectorial residual (RVQ) para producir tokens discretos que después predice un modelo de lenguaje. Es una compensación razonable a gran escala, pero se convierte en un cuello de botella desproporcionadamente costoso a medida que el modelo se reduce, porque el mecanismo del codebook discreto no disminuye con tanta facilidad como el resto de la arquitectura. Al predecir directamente vectores continuos en lugar de elegir entre un vocabulario fijo de códigos discretos, Pocket TTS evita por completo ese cuello de botella. Esta es una parte importante de la razón por la que un modelo de 100M de parámetros puede igualar o acercarse a la calidad de sistemas varias veces mayores.

Una prueba de escucha que conviene interpretar con cuidado

En la evaluación de la propia Kyutai, los participantes utilizaron comparaciones por pares al estilo Elo y otorgaron a la calidad de audio de Pocket TTS una puntuación de 2016, frente a 1884 para las grabaciones humanas reales de referencia con las que se comparó; es decir, consideraron que el audio sintético sonaba mejor. Conviene entender este resultado en su contexto correcto y no tomarlo como una afirmación general: las grabaciones reales incluyen la coloración del micrófono, el eco de la sala, sonidos de respiración y niveles irregulares que el audio sintético limpio sencillamente no presenta; además, Kyutai limpió específicamente los prompts de referencia antes de la prueba. El resultado refleja un hallazgo real y concreto para una determinada métrica de calidad percibida y un conjunto de prueba específico, no una afirmación universal de que Pocket TTS «suena más humano que los humanos» en todos los sentidos.

Primeros pasos con Kyutai Pocket TTS

  1. Instálalo mediante uv o pip. uv es el instalador recomendado porque gestiona automáticamente las dependencias en un entorno aislado, aunque pip install pocket-tts funciona como alternativa manual directa. El proyecto admite Python 3.10 a 3.14 y requiere PyTorch 2.5 o posterior; lo importante es que basta con la versión estándar de PyTorch, sin GPU.
  2. Carga el modelo y selecciona una voz. Usa from pocket_tts import TTSModel y después tts_model = TTSModel.load_model() para cargar el modelo principal; tts_model.get_state_for_audio_prompt("alba") selecciona por nombre una de las voces predefinidas incorporadas —Alba es una de las opciones predeterminadas documentadas—.
  3. Usa tu propio clip de referencia para la clonación o recupéralo de Hugging Face. Puedes pasar la ruta de un archivo WAV local o una URI hf:// que apunte a un clip de referencia alojado —por ejemplo, de la colección de voces Expresso de la propia Kyutai— del mismo modo que seleccionarías el nombre de una voz predefinida.
  4. Genera audio con generate_audio(). audio = tts_model.generate_audio(voice_state, "Hello world, this is a test.") devuelve un tensor unidimensional de PyTorch con datos de audio PCM, que puedes guardar en un archivo WAV mediante una biblioteca como scipy.io.wavfile.
  5. Mantén el modelo y los estados de voz residentes en memoria para reutilizarlos. Tanto load_model() como get_state_for_audio_prompt() son operaciones relativamente lentas; cargarlos una vez y reutilizarlos en varias llamadas de generación evita sobrecarga innecesaria en cualquier aplicación de ejecución prolongada.
  6. Prueba primero la demo del navegador si solo quieres escucharlo. Kyutai ofrece en su sitio web una versión que funciona dentro del navegador, donde puedes probar el texto de entrada y distintas voces sin instalar nada antes de decidirte por una instalación local.

Consejos para obtener mejores resultados

  • No prepares una GPU para este modelo concreto. Dado que los benchmarks de Kyutai no mostraron ninguna mejora de velocidad con aceleración por GPU y un batch size de uno, dedicar esfuerzo a una infraestructura de implementación con GPU específicamente para Pocket TTS es un trabajo que se aprovecharía mejor en otra parte.
  • Almacena en caché los estados de voz en lugar de volver a cargarlos en cada solicitud. Como tanto la carga del modelo como la preparación del estado de voz son pasos relativamente lentos, estructura cualquier servicio de producción para mantenerlos en memoria en vez de volver a calcularlos para cada solicitud entrante.
  • Comprueba si existe una variante ligera de 6 capas para tu idioma objetivo. En implementaciones sobre hardware especialmente limitado, estas versiones más pequeñas para cada idioma sacrifican algo de calidad a cambio de una huella aún menor.
  • Establece expectativas de calidad realistas frente a modelos mucho más grandes. La restricción de 100M de parámetros es lo que hace posible el rendimiento en tiempo real sobre CPU. Aunque se defiende de forma extraordinaria frente a sistemas mucho mayores, no se garantiza que iguale a todos los modelos grandes dependientes de GPU en cada aspecto de la naturalidad; pruébalo con tu propio contenido en vez de dar por supuesta la paridad en todos los casos.
  • Espera cierta variabilidad en arquitecturas de CPU antiguas o integradas. Los benchmarks publicados corresponden a hardware moderno, como el MacBook Air M4. El rendimiento puede ser diferente en procesadores más antiguos o plataformas integradas especializadas, así que valida el modelo en el dispositivo objetivo real antes de cerrar un plan de implementación.

Kyutai Pocket TTS frente a otros modelos ligeros y de streaming

Pocket TTSKyutai TTS 1.6BKaniTTS
Parámetros100M1.6B350M–450M
Implementación objetivoCPU, dispositivo, edgeStreaming en servidor (impulsa Unmute)GPU con poca VRAM
Latencia del primer fragmento~200msOptimizado para streaming a escala de servidor<300ms (modo streaming)
Clonación de vozSí, zero-shotSíSí (Kani-TTS-2)
Representación principalContinua (CALM), sin tokenización discretaArquitectura de streaming basada en MimiTokens discretos mediante NanoCodec
LicenciaMITConsulta las condiciones actualesApache 2.0

El nicho específico de Pocket TTS está en el extremo del espectro de implementación que funciona realmente solo con CPU. Para infraestructuras de servidor que ya disponen de capacidad de GPU, el modelo 1.6B más grande de la propia Kyutai resulta más natural; pero Pocket TTS se construyó precisamente para esa restricción en dispositivos edge, aplicaciones sin conexión e implementaciones en navegador donde sencillamente no hay GPU, en lugar de adaptarse a ella a posteriori.

Preguntas frecuentes

¿Kyutai Pocket TTS realmente no se beneficia de una GPU?

Según las pruebas de la propia Kyutai, así es: con un batch size de uno, la sobrecarga de transferencia de datos de la GPU supera cualquier ventaja de cálculo para el eficiente diseño de este modelo concreto. Por tanto, la implementación en CPU no es una concesión, sino el funcionamiento previsto.

¿Cuánto audio de referencia necesita Pocket TTS para clonar una voz?

Basta con un clip breve para la clonación zero-shot, sin necesidad de ajuste fino. También puedes elegir entre un catálogo de voces preparadas si no necesitas clonar una referencia concreta.

¿Qué idiomas admite Pocket TTS?

Inglés en su lanzamiento; la versión v2.0.0 de abril de 2026 amplió la compatibilidad con francés, alemán, español, portugués e italiano, y algunos idiomas disponen de variantes más ligeras de 6 capas para implementaciones con restricciones mayores.

¿Pocket TTS se puede usar gratuitamente con fines comerciales?

Sí. Se publica bajo la licencia MIT, una de las opciones más permisivas entre los modelos TTS de código abierto.

¿Cómo se compara la calidad de Pocket TTS con la de modelos TTS mucho más grandes?

Está diseñado para igualar o acercarse a la calidad de modelos varias veces mayores y obtuvo resultados excepcionales en las pruebas de escucha de la propia Kyutai. No obstante, como ocurre con cualquier modelo muy compacto, los resultados pueden variar según el caso de uso, por lo que conviene probarlo con tu propio contenido antes de asumir que igualará a sistemas más grandes en todos los contextos.

Convierte texto en voz con Echora

Para un flujo en el navegador con un objetivo similar, utiliza Texto a voz de Echora. Introduce hasta 5.000 caracteres, elige una voz integrada o una voz personalizada guardada, añade etiquetas de interpretación compatibles cuando las necesites y ajusta la estabilidad. Después podrás escuchar el resultado y descargar el MP3 terminado.

Crear voz desde texto →