Kokoro no para de aparecer — fue número 1 en Hacker News, encabeza las clasificaciones abiertas de texto a voz, y los creadores no dejan de preguntar si un modelo de 82 millones de parámetros que funciona en una CPU normal puede realmente sustituir a una API de voz de pago. Así que lo instalamos, lo ejecutamos en un portátil y generamos las muestras que puedes reproducir abajo. Esto es un análisis práctico: qué es Kokoro, qué tal suena en realidad, las dos trampas de configuración que nos hicieron perder tiempo y cuándo una herramienta alojada es la mejor opción. Fuente: github.com/hexgrad/kokoro (Apache-2.0).
¿Qué es Kokoro y quién lo ha creado?
Kokoro es un modelo de texto a voz de pesos abiertos publicado por hexgrad como Kokoro-82M. El titular está en el propio nombre: 82 millones de parámetros — diminuto para los estándares de 2026, lo bastante pequeño como para ejecutarse en un teléfono — y aun así produce una narración natural y expresiva. Se basa en la línea de StyleTTS 2 y se publica bajo la licencia permisiva Apache-2.0, así que es realmente gratuito para uso comercial.
A fecha de 2026-07-11, el repositorio principal hexgrad/kokoro tiene alrededor de 7.900 estrellas en GitHub. Lo ejecutamos con el runtime ONNX de la comunidad thewh1teagle/kokoro-onnx (unas 2.600 estrellas, MIT), que es la forma más fácil de ejecutarlo en CPU sin instalar PyTorch.
Al trastear con el archivo real de pesos, contamos 54 voces integradas repartidas en 9 grupos de idiomas y acentos — inglés americano y británico, español, francés, hindi, italiano, japonés, portugués de Brasil y chino mandarín. Las voces de inglés americano son claramente las más pulidas.
Lo ejecutamos de verdad (Apple M3 Pro, solo CPU)
Sin GPU, sin nube — solo un MacBook Pro con un M3 Pro y 18 GB de RAM. Aquí va el relato honesto, paso a paso.
Instalación y pesos
El paquete de Python se instala en segundos: pip install kokoro-onnx soundfile. Pero aquí viene la primera trampa — el paquete pip trae el código, no el modelo. Tienes que descargar a mano dos archivos desde la página de releases de kokoro-onnx en GitHub: kokoro-v1.0.onnx (310 MB) y voices-v1.0.bin (27 MB). El quickstart pasa por alto este detalle, así que la primera ejecución falla con un error de archivo inexistente hasta que te bajas los pesos.
El bug de la ruta de espeak-ng (el que nos hizo perder tiempo de verdad)
Kokoro convierte texto en fonemas con espeak-ng. En la primera síntesis nos encontramos con esto:
Error processing file '/Users/runner/work/espeakng-loader/.../espeak-ng-data/phontab': No such file or directoryEsa ruta /Users/runner/work/ es una pista clarísima: la wheel pip de espeakng-loader incluye un libespeak-ng compilado en CI con una ruta de datos codificada que no existe en tu máquina. Lo más frustrante: definir una variable de entorno ESPEAK_DATA_PATH no sirve de nada, porque kokoro-onnx nunca la lee — toma la ruta de datos directamente del loader incluido.
La solución que nos funcionó: instalar un espeak-ng real del sistema y apuntar Kokoro a él explícitamente mediante su EspeakConfig:
brew install espeak-ng # macOS; apt install espeak-ng on Linux
from kokoro_onnx import Kokoro, EspeakConfig
cfg = EspeakConfig(
lib_path="/opt/homebrew/lib/libespeak-ng.dylib",
data_path="/opt/homebrew/share/espeak-ng-data",
)
k = Kokoro("kokoro-v1.0.onnx", "voices-v1.0.bin", espeak_config=cfg)Después de eso, la generación funciona sin más. Si alguna vez te has peleado con este error exacto phontab: No such file, esa es la solución.
Velocidad (medida, en caliente)
Solo con CPU, el modelo carga en unos 1.7 segundos, y la síntesis va cómodamente más rápido que en tiempo real. Un párrafo de narración de 22 segundos se renderizó en 3.5 segundos — un factor de tiempo real de alrededor de 0.16×, aproximadamente seis veces más rápido que la reproducción. Las frases cortas de una sola oración vuelven en uno o dos segundos. Para un modelo tan pequeño en un portátil, es un rendimiento realmente válido para producción. Aquí tienes la forma de onda real de ese render del párrafo:

Muestras que generamos (sin editar)
Cada clip de abajo lo producimos nosotros con Kokoro en la CPU M3 Pro descrita arriba — salida cruda del modelo, sin limpieza ni posprocesado. Reprodúcelos y juzga tú mismo la calidad.
Generado por VisionStory con Kokoro-82M vía kokoro-onnx, 2026-07-11. Fíjate en la pista evidente: es una pista de voz limpia — pero es solo una voz. No hay cara, no hay movimiento de labios, no hay presentador en pantalla. Ese hueco es precisamente el objetivo de la siguiente sección.
Veredicto honesto: puntos fuertes y límites reales
Lo que de verdad nos impresionó:
- La calidad por byte es impresionante. Para 82 millones de parámetros, las voces de inglés americano son naturales y expresivas — lo bastante cerca de un TTS de pago como para que la mayoría de oyentes no lo detecten en un clip corto.
- De verdad funciona en CPU, y rápido. Seis veces más rápido que el tiempo real en un portátil sin GPU es la gran promesa, y la cumple.
- Realmente gratis y apto para uso comercial. Apache-2.0 sin cobro por carácter. Para locuciones de gran volumen, esa economía es difícil de superar.
Dónde flojea — y estos puntos son reales:
- Sin clonación de voz. Tienes 54 voces predefinidas fijas. No puedes clonar tu propia voz ni la de un cliente — si ese es tu caso de uso, Kokoro no te sirve.
- La calidad del inglés depende de espeak-ng, lo que implica el bug de empaquetado de arriba, además de algún nombre, marca o acrónimo pronunciado mal de vez en cuando.
- Los textos largos requieren troceado manual. Hay un límite de longitud de fonemas por llamada, así que tienes que partir los guiones largos tú mismo y unir el audio.
- Las voces no inglesas pueden salir bien o mal — son notablemente más variables que el conjunto estrella de inglés americano.
- Devuelve un WAV “pelado”. Sin marcas de tiempo por palabra, sin visemas — nada para impulsar el lip-sync de serie.
- Es solo voz. Sin cara, sin vídeo. Para conseguir un presentador parlante tienes que combinar Kokoro con un sistema aparte de lip-sync o avatares y gestionar tú mismo la sincronización.
Autoalojar Kokoro vs una herramienta alojada: ¿cuál deberías elegir?
Kokoro y una herramienta de avatares alojada resuelven mitades distintas del problema. Kokoro te da una voz; una herramienta como VisionStory te da un presentador parlante — voz, cara y lip-sync en una sola salida. Aquí tienes el compromiso real.
| Kokoro (autoalojado) | VisionStory (alojado) | |
|---|---|---|
| Coste | Gratis (tu propio hardware) | Suscripción / Créditos |
| Configuración | pip + pesos de 330 MB + corrección de espeak-ng | Ninguna — se ejecuta en el navegador |
| Qué obtienes | Solo pista de voz (WAV) | Vídeo de avatar parlante (voz + cara + lip-sync) |
| Clonación de voz | No — 54 preajustes | Sí — clona tu propia voz |
| Velocidad por clip | ~0.16× en tiempo real en CPU (segundos) | Segundos, alojado — sin cómputo local |
| Uso comercial | Sí (Apache-2.0) | Sí (según el plan) |
| Mantenimiento | Tú parcheas espeak, dependencias, troceado | Ninguno |
| Mejor cuando | Solo necesitas una pista de voz gratis y sabes programar | Necesitas un vídeo parlante terminado, rápido |
Elige Kokoro si solo necesitas una locución gratis, te manejas en Python y vas a gestionar la cara y el lip-sync por separado (o no necesitas cara en absoluto). Elige una herramienta alojada si necesitas la voz unida a un presentador que haga lip-sync, o necesitas clonar la voz de una persona concreta — Kokoro no puede hacer ninguna de las dos cosas.
Lo que Kokoro nos enseñó
La gran lección de ejecutar Kokoro es que la voz se está comoditizando. Un modelo de 82 MB en un portátil ya produce voces en off lo bastante buenas para trabajo real, gratis. Si lo único que ofrecía tu producto era “hacemos texto a voz”, ese foso ya ha desaparecido.
La parte difícil, todavía sin resolver, es todo lo que viene después de la voz: convertir una pista de audio en una cara parlante creíble — lip-sync preciso, expresiones, movimiento de cabeza y una sincronización que encaje en conjunto. Esa es exactamente la capa en la que trabajamos. Por eso nuestra conclusión no es “no uses Kokoro” — es un motor de voz legítimamente bueno. Es que una voz por sí sola es la mitad de un vídeo. Si quieres la otra mitad, VisionStory convierte una foto y un guion en un presentador parlante con lip-sync en un solo paso, y si tienes una voz concreta que igualar, también puede clonarla.
