La clonación de voz con inteligencia artificial ya puede ejecutarse íntegramente en un ordenador doméstico sin enviar la grabación a servicios externos. Un proyecto publicado en GitHub por el desarrollador jceronch1 combina Qwen3-TTS 12Hz 1.7B, el formato GGUF y llama.cpp en una aplicación web que permite grabar una muestra de voz, escribir un texto y sintetizarlo posteriormente con características de esa voz utilizando CPU o GPU.
Las claves de la clonación de voz local en 30 segundos
- El proyecto utiliza Qwen3-TTS-12Hz-1.7B-Base en GGUF sobre llama.cpp y funciona en Windows, Linux y macOS.
- Una grabación limpia de unos 10-15 segundos sirve como referencia para generar nuevas frases.
- El procesamiento puede realizarse con CPU o GPU y, tras descargar los modelos, no necesita conexión.
- Admite diez idiomas, entre ellos español, inglés, francés, alemán, portugués, italiano, chino y japonés.
- El código se distribuye con licencia MIT, mientras que los pesos mantienen su propia licencia.
El proyecto resulta interesante por algo más que la clonación de voz. Refleja cómo capacidades de IA generativa que hasta hace poco se asociaban principalmente a servicios en la nube empiezan a estar al alcance de equipos personales mediante modelos relativamente pequeños y versiones cuantizadas.
Qwen3-TTS es una familia de modelos de síntesis de voz desarrollada por el equipo Qwen de Alibaba. Su modelo Base de 1.700 millones de parámetros admite clonación rápida a partir de audio de referencia. La implementación oficial soporta diez idiomas: chino, inglés, japonés, coreano, alemán, francés, ruso, portugués, español e italiano.
La aplicación de jceronch1 intenta convertir esas capacidades técnicas en una herramienta más accesible. En lugar de obligar al usuario a trabajar directamente desde una terminal, proporciona una interfaz web desde la que puede grabar la voz, almacenar referencias, escribir textos y gestionar los audios generados.
Qwen3-TTS y llama.cpp llevan la síntesis de voz al PC
El componente central es Qwen3-TTS-12Hz-1.7B-Base, concretamente una conversión al formato GGUF preparada para llama.cpp.
El propio proyecto Qwen describe su modelo Base como capaz de realizar clonación rápida a partir de apenas tres segundos de audio. La aplicación recomienda utilizar muestras de entre 10 y 15 segundos, de una única persona y sin música, ruido ni eco, para intentar conseguir mejores resultados.
La transcripción del audio de referencia es opcional en la interfaz, aunque el proyecto aconseja proporcionarla para mejorar el parecido.
El uso de GGUF tiene otra consecuencia práctica: permite aplicar cuantización para reducir las necesidades de memoria y ejecutar el modelo mediante llama.cpp, un proyecto que ha extendido mucho su alcance desde sus orígenes vinculados a los grandes modelos de lenguaje.
llama.cpp dispone actualmente de la herramienta llama-tts y documenta expresamente el funcionamiento de Qwen3-TTS, incluido el uso de un archivo de voz de referencia.
La configuración predeterminada de esta aplicación descarga aproximadamente 1,5 GB repartidos en dos archivos:
| Componente | Configuración predeterminada | Tamaño aproximado |
|---|---|---|
| Modelo Qwen3-TTS | Q4_K_M | 1,04 GB |
| mmproj / vocoder | Q8_0 | 446 MB |
| Total | Ambos archivos | ~1,5 GB |
El primero genera los tokens de audio. El segundo interviene en su conversión al sonido final. Los dos son necesarios para la configuración utilizada por la aplicación.
Una vez instalados los componentes y descargados los pesos, el procesamiento puede permanecer en el equipo. Según la documentación del proyecto, no necesita una cuenta, una API comercial ni subir la grabación a un servidor remoto.
Esto tiene implicaciones interesantes para privacidad. Una grabación utilizada para crear una voz de referencia puede ser un dato especialmente sensible para su propietario. Mantener tanto el audio original como las voces almacenadas y los resultados dentro del ordenador evita que ese material tenga que enviarse a un proveedor de síntesis en la nube.
Local, sin embargo, no significa automáticamente seguro. La protección final también dependerá de cómo esté configurado y protegido el ordenador, quién tenga acceso a los archivos y si la aplicación se expone o no a otras máquinas de la red.
CPU, GPU y un cuello de botella que puede multiplicar el tiempo de generación
Otro aspecto poco habitual de la aplicación es que no exige una GPU dedicada.
Puede utilizar CPU, seleccionar automáticamente una GPU o escoger una concreta cuando el ordenador dispone de varias. Esto resulta especialmente útil en portátiles que combinan una gráfica integrada con otra dedicada.
El desarrollador también ha documentado una diferencia importante relacionada con el vocoder. Descargar las capas principales del modelo en la GPU no necesariamente consigue todo el rendimiento disponible si la segunda parte del proceso continúa ejecutándose en CPU.
Para evitarlo, la aplicación utiliza -mmdev junto con --device para colocar también el componente correspondiente en el dispositivo seleccionado.
Las mediciones publicadas por el autor se realizaron con una frase de aproximadamente cuatro segundos en un portátil equipado con una Nvidia GeForce RTX 4070, utilizando Vulkan:
| Configuración probada | Tiempo total | Tiempo del vocoder |
|---|---|---|
GPU con -mmdev | 1,9 s | 0,14 s |
GPU sin -mmdev | 29,7 s | 23,6 s |
| CPU, 16 hilos | 4,7 s | 2,2 s |
Son pruebas realizadas por el propio desarrollador sobre un equipo concreto, por lo que no deben interpretarse como un benchmark general de Qwen3-TTS o llama.cpp. El rendimiento puede cambiar considerablemente dependiendo del procesador, GPU, controladores, backend, cuantización, longitud del texto y configuración utilizada.
Resulta llamativo, aun así, que en esa prueba la CPU sea considerablemente más rápida que una configuración incompleta de GPU. Es un buen ejemplo de que utilizar aceleración gráfica no garantiza por sí sola que todo el flujo de inferencia esté acelerado.
La interfaz añade además controles de temperatura, Top-P, Top-K, semilla, longitud de los bloques, pausas, número máximo de frames e hilos de CPU.
Para textos extensos, la aplicación los divide en frases, genera los fragmentos y después los une. También conserva un historial de resultados y permite crear una biblioteca con diferentes voces de referencia.
De una demostración técnica a una aplicación local
El proyecto necesita Python 3.10 o posterior, llama.cpp y FFmpeg. El soporte de Qwen3-TTS en llama-tts es relativamente reciente, por lo que el repositorio exige una compilación compatible.
La instalación está preparada para Windows, Linux y macOS. En Windows dispone de un archivo iniciar.bat; Linux y macOS cuentan con iniciar.sh. Después del arranque, la interfaz se sirve localmente desde el navegador.
Además de la interfaz gráfica, existe una API local. Permite consultar el estado del sistema, descargar modelos, administrar voces, iniciar síntesis, seguir su progreso y consultar los audios generados. Eso abre la posibilidad de integrar el motor con otras aplicaciones sin recurrir a una API externa.
La herramienta tampoco modifica las capacidades fundamentales de Qwen3-TTS. Es una capa que reúne y automatiza componentes existentes: el modelo procede de Qwen, la conversión GGUF utilizada procede de ggml-org y llama.cpp proporciona el motor de inferencia.
La versión oficial de Qwen3-TTS fue presentada en enero de 2026 en variantes de 600 millones y 1.700 millones de parámetros. Además de clonación, la familia incluye modelos orientados al diseño de voces y voces predefinidas controlables.
Para la clonación utilizada aquí interesa especialmente el modelo Base. Qwen afirma que puede trabajar con muestras muy breves, aunque la fidelidad final depende de factores como la calidad de la grabación, ruido, pronunciación, idioma y configuración de generación.
Poder clonar una voz localmente también aumenta el riesgo de suplantación
Que una tecnología de clonación de voz pueda funcionar sin servidores externos tiene una contrapartida evidente: también desaparecen los controles que podría imponer un proveedor centralizado.
Una aplicación local no puede saber por sí misma si la grabación pertenece al usuario o si existe consentimiento de la persona cuya voz se está reproduciendo.
El propio repositorio advierte expresamente contra la utilización de voces ajenas sin autorización y pide no emplear el programa para suplantar identidades, engañar o acosar.
Esta precaución es especialmente relevante cuando unos pocos segundos de grabación pueden obtenerse de un vídeo, una entrevista, un mensaje de audio o una publicación en redes sociales.
La capacidad técnica, por tanto, debe separarse del derecho a utilizar una voz determinada. Que un modelo permita reproducir sus características no concede permiso para hacerlo.
El proyecto muestra al mismo tiempo hacia dónde se está desplazando una parte de la IA generativa. Un modelo de 1.700 millones de parámetros cuantizado, un motor como llama.cpp y una interfaz relativamente sencilla permiten ejecutar en un ordenador personal una tarea que normalmente se asocia con plataformas especializadas de síntesis de voz.
En este caso la ventaja no es únicamente ahorrarse el precio de una API. El audio de referencia puede quedarse en el ordenador, la aplicación continúa funcionando sin Internet y el usuario conserva el control sobre los archivos generados.
Es una combinación que ayuda a explicar el creciente interés por la IA local: modelos más manejables, cuantización y motores capaces de aprovechar desde una CPU convencional hasta una GPU dedicada están reduciendo la distancia entre experimentar con un modelo y convertirlo en una aplicación que cualquiera puede ejecutar en su propio equipo.











