28 de agosto de 2026 · Por YasKad
OpenBMB/VoxCPM

VoxCPM: síntesis de voz multilingüe sin tokenizador

OpenBMB/VoxCPM · 37.974★ · 4.314 forks

Todo lo que hay que saber sobre OpenBMB/VoxCPM: un sistema de text-to-speech de código abierto y pesos abiertos que genera audio continuo directamente, sin tokenización discreta, y cuya versión 2 soporta 30 idiomas, diseño de voz por descripción y clonación con 48 kHz.


Qué es VoxCPM

VoxCPM es un sistema de síntesis de voz (TTS) sin tokenizador (tokenizer-free): en lugar de convertir el audio en un vocabulario de tokens discretos y luego decodificarlos, genera representaciones continuas de audio de forma directa mediante una arquitectura difusión autorregresiva de extremo a extremo. El producto es un modelo de pesos abiertos (Apache-2.0) con su API de Python, CLI y demostración web.

La versión actual es VoxCPM2, un modelo de 2B parámetros entrenado con más de 2 millones de horas de habla multilingüe, que soporta 30 idiomas y 9 dialectos del chino, Voice Design (crear una voz nueva a partir de una descripción en lenguaje natural, sin audio de referencia), clonación controlable (clonar una voz desde un clip corto y ajustar estilo, ritmo y emoción) y clonación de máxima fidelidad por continuación de audio, con salida nativa de 48 kHz. Está construida sobre el esqueleto de MiniCPM-4 de la misma organización.

Origen

El repositorio fue creado el 16 de septiembre de 2025 por la organización OpenBMB, el equipo de modelos MiniCPM de ModelBest (empresa china) en colaboración con THUHCSI (grupo de investigación de la Universidad Tsinghua).

La cronología que documenta el propio README: septiembre de 2025, publicación del informe técnico de VoxCPM y lanzamiento del modelo VoxCPM-0.5B, que alcanzó el número 1 del trending de HuggingFace (dato del README); 5 de diciembre de 2025, publicación de los pesos de VoxCPM1.5 con ajuste fino SFT y LoRA, número 1 del trending de GitHub (dato del README); 6 de abril de 2026, lanzamiento de VoxCPM2 — 2B, 30 idiomas, Voice Design y clonación controlable, salida a 48 kHz — con informe técnico en arXiv.

La línea de trabajo es una extensión de la familia MiniCPM (10.222 estrellas), con la que comparte filosofía de modelos pequeños y capaces que se ejecutan localmente. El README agradece explícitamente a DiTAR por el esqueleto de difusión autorregresiva, a CosyVoice (FunAudioLLM) por la implementación de Flow Matching de LocDiT y a DAC (descript-audio-codec) por el backbone del VAE de audio.

Una visualización arquitectónica detallada isométrica en modo oscuro estilo cyberpunk de una arquitectura de síntesis de voz de cuatro etapas sin tokenizador. Cuatro etapas modulares brillantes se disponen en un pipeline: un codificador local que fusiona texto y audio de referencia opcional en un único flujo de vectores continuo, un backbone de lenguaje autorregresivo de 2B decidiendo parches de audio a 6,25 Hz, un modelo de refinamiento residual añadiendo detalle prosódico, y un pintor de difusión o flow-matching renderizando cada parche de audio latente. El espacio latente se muestra como un campo continuo suave, no tokens discretos, con un decodificador asimétrico AudioVAE V2 translúcido convirtiendo audio latente de 16 kHz en una forma de onda nítida de 48 kHz. Acentos neón cian, violeta y ámbar, fondo de cuadrícula oscura, ultra detallado, resolución 8K, sin texto legible, solo iconos de módulo abstractos.

Filosofía y principios

El informe técnico y el README dejan ver cuatro decisiones de diseño coherentes:

  1. Sin tokenización discreta: el modelo opera íntegramente en el espacio latente del AudioVAE V2 y «pinta» el audio con un paso de difusión (LocDiT) en cada posición, en vez de elegir entre tokens cuantizados. El argumento es que un cuantizador discreto introduce un cuello de botella de calidad; sin él, el VAE puede reconstruir directamente a 48 kHz.
  2. Un modelo, varios modos: el informe técnico describe una «organización unificada de secuencia» donde todos los modos de generación (texto a voz, diseño de voz, clonación con referencia, clonación por continuación) se expresan como distintas disposiciones de los mismos bloques de entrada.
  3. Calidad de estudio sin upsampler externo: el AudioVAE V2 tiene un diseño asimétrico de codificar a 16 kHz y reconstruir a 48 kHz, lo que incorpora super-resolución implícita en el propio decodificador.
  4. Apertura total y uso comercial: pesos y código bajo Apache-2.0, «free for commercial use» según el README. El README incluye una sección «Risks and Limitations» que prohíbe explícitamente el uso para suplantación, fraude o desinformación y recomienda etiquetar el contenido generado.

Una imagen en modo oscuro estilo cyberpunk sobre síntesis de voz responsable. Una forma de onda de audio central está protegida por un escudo translúcido, con iconos de advertencia bloqueando escenarios de mal uso como suplantación, fraude y desinformación. Un pequeño icono de etiqueta holográfica indica el etiquetado de contenido generado, mientras una balanza y un candado representan las salvaguardas éticas. El fondo muestra un centro de datos oscuro con acentos de advertencia rojos contenidos y líneas de seguridad cian tranquilas, transmitiendo límites de riesgo y uso responsable. Ultra detallado, resolución 8K, sin texto legible.

Una imagen conceptual en modo oscuro estilo cyberpunk sobre diseño de voz por descripción en lenguaje natural. Una burbuja de habla brillante y un icono de micrófono se disuelven en un nuevo retrato de voz sintetizada hecho de partículas suaves de forma de onda neón. A la izquierda, palabras descriptivas abstractas aparecen como glifos luminosos flotantes, sin clip de audio de referencia presente, enfatizando la creación de voz solo por texto. La voz emergente tiene un timbre cálido y suave representado por una forma de onda cian y magenta suave, mientras 30 nodos de idioma flotan en el fondo. Fondo tecnológico oscuro, paneles de UI holográficos, acentos neón, ultra detallado, resolución 8K, sin texto legible.

Cómo funciona

La arquitectura de VoxCPM2 sigue cuatro etapas que operan en el espacio latente de AudioVAE V2: LocEnc (encoder local, fusiona texto y audio de referencia opcional); TSLM (el modelo de lenguaje autorregresivo, backbone MiniCPM-4 de 2B parámetros, decide qué «parche» de audio viene a continuación, a 6,25 Hz); RALM (residual autoregressive language model, un segundo pase que refina cada parche con detalle prosódico); LocDiT (un estimador de difusión que pinta el latente de audio, decodificado por AudioVAE V2 a 48 kHz).

Los cuatro modos de generación: Text-to-Speech (model.generate(text=...)); Voice Design (la descripción va entre paréntesis al inicio del texto, sin audio de referencia); Controllable Voice Cloning (se pasa reference_wav_path, un clip de 5–30 s, con instrucciones de estilo opcionales); Ultimate Cloning (se pasa prompt_wav_path y prompt_text, la transcripción exacta del clip).

Una visualización controlable en modo oscuro estilo cyberpunk de clonación de voz y continuación de audio de máxima fidelidad. Un clip de audio de referencia corto se renderiza como una cápsula neón compacta en una línea de tiempo; de ella, una forma de onda continua se extiende hacia adelante, preservando timbre, ritmo, emoción y estilo. Tres diales de control flotan cerca, etiquetados solo por iconos abstractos para estilo, velocidad y emoción, con deslizadores brillantes suaves. Una segunda cápsula muestra audio de prompt más transcripción exacta como partículas de texto alineadas abstractas, permitiendo continuación sin fisuras. Detalles de forma de onda de 48 kHz, fondo de circuito oscuro, neón cian y naranja, ultra detallado, resolución 8K, sin texto legible.

Hay además API de streaming (model.generate_streaming) y un CLI (voxcpm design, voxcpm clone, voxcpm batch) con soporte de marcas de tiempo por palabra o carácter. El README reporta RTF ~0,30 en NVIDIA RTX 4090 con PyTorch estándar, ~0,13 con Nano-vLLM, y ~1,76 (Q8_0) en Apple M4 Pro / Metal vía llama.cpp-omni. VRAM: ~8 GB para VoxCPM2.

Un globo en modo oscuro estilo cyberpunk representando síntesis de voz multilingüe de 30 idiomas. La esfera está construida de continentes translúcidos conectados por haces de audio luminosos, con 30 nodos de idioma principales brillando a su alrededor y 9 nodos más pequeños de dialectos chinos orbitando la región de Asia. Formas de onda continuas viajan entre nodos en lugar de paquetes de tokens discretos, sugiriendo generación sin tokenizador. Acentos neón azul, verde y magenta, fondo oscuro tipo espacio con cuadrícula sutil, glifos abstractos flotantes, ultra detallado, resolución 8K, sin texto legible.

El ecosistema

El README mantiene una tabla de ecosistema oficial (proyectos de comunidad, no mantenidos por OpenBMB). Motores de inferencia y despliegue: vllm-project/vllm-omni (extensión omni-modal del proyecto oficial vLLM con soporte nativo de VoxCPM2, endpoint compatible con OpenAI; 6.263 estrellas — el despliegue semi-oficial más relevante); a710128/nanovllm-voxcpm (292 estrellas, RTF ~0,13 en 4090); tc-mb/llama.cpp-omni (253 estrellas, soporte nativo de GGUF en CPU/Metal/CUDA/Vulkan); bluryar/VoxCPM.cpp (89 estrellas); 0xShug0/audio.cpp (1.957 estrellas, marco C++ unificado para varios modelos de audio).

Un diagrama de ecosistema en modo oscuro estilo cyberpunk para motores de despliegue e inferencia rodeando un núcleo neuronal central tipo VoxCPM. Alrededor del núcleo, iconos de módulo abstractos representan vLLM-omni, llama.cpp-omni, pesos GGUF, exportación ONNX, reimplementación en Rust, Apple Neural Engine, nodos de ComfyUI y un endpoint de API compatible con OpenAI, conectados por tuberías de datos neón. El núcleo central emite una forma de onda de audio continua de 48 kHz hacia un rack de servidor, una laptop, un teléfono y un dispositivo edge, mostrando despliegue local y en la nube. Fondo tecnológico oscuro, paneles holográficos, neón cian y violeta, ultra detallado, resolución 8K, sin texto legible.

Interfaces y aplicaciones de la comunidad: nodos de ComfyUI (wildminder/ComfyUI-VoxCPM, 509 estrellas; Saganaki22/ComfyUI-VoxCPM2, 195); liuzhao1225/YouDub-webui (5.345 estrellas, herramienta de localización de videos con doblaje por clonación de voz — el caso más grande de adopción como motor dentro de otra aplicación); maomao-2001/Whispera (100 estrellas, conversación en tiempo real con TTS de streaming).

Una imagen en modo oscuro estilo cyberpunk de IA de voz abierta con pesos abiertos. Un núcleo de modelo neuronal transparente flota sobre una estación de trabajo local, con un sello de licencia holográfico desbloqueado y un emblema abstracto estilo Apache, enfatizando pesos abiertos amigables comercialmente. A su alrededor, pequeños dispositivos incluyen una tarjeta GPU, laptop, teléfono y PC de escritorio, con un medidor sutil de 8 GB de VRAM y una forma de onda de estudio nítida de 48 kHz. La escena se siente accesible y local-first, con acentos neón cian y ámbar, cuadrícula oscura, ultra detallado, resolución 8K, sin texto legible.

Estado oficial / semioficial

  • vLLM-Omni publica soporte nativo de VoxCPM2 con ejemplos de despliegue en su propio repositorio: es una adopción por parte del proyecto oficial de vLLM, lo que significa en la práctica que VoxCPM2 puede servirse con la misma infraestructura que los modelos de lenguaje de mayor tráfico, con API compatible con OpenAI.
  • ICLR 2026: el README enlaza la revisión de VoxCPM-0.5B en OpenReview bajo «ICLR 2026». La aceptación no pudo verificarse directamente en esta investigación; se cita como el estado que declara el propio proyecto.
  • El README declara que VoxCPM-0.5B fue número 1 del trending de HuggingFace y VoxCPM1.5 número 1 del trending de GitHub. Son afirmaciones del propio README.
  • No existe un marketplace oficial en el sentido de agentes: el estado de facto es más bien de referencia para TTS local multilingüe, reforzada por la presencia en PyPI, HuggingFace, ModelScope y el ecosistema de motores.

Una imagen en modo oscuro estilo cyberpunk sobre la evolución de la familia de un modelo de voz. Un camino horizontal brillante se mueve de izquierda a derecha a través de tres hitos principales: un lanzamiento compacto de modelo 0.5B, una versión intermedia 1.5B con ajuste fino y LoRA, y un lanzamiento insignia 2B con 30 idiomas, diseño de voz, clonación controlable y salida de 48 kHz. Insignias de tendencia abstractas aparecen como chispas neón, y un emblema de familia MiniCPM se sugiere mediante anillos en capas. El fondo incluye un laboratorio de investigación, un logo abstracto estilo OpenBMB, y un motivo académico inspirado en Tsinghua, todos renderizados como hologramas futuristas. Ultra detallado, resolución 8K, sin texto legible.

Guía rápida de uso

Instalación y primer arranque

Prerrequisitos: Python ≥ 3.10 y < 3.13, PyTorch ≥ 2.5.0, CUDA ≥ 12.0 para GPU NVIDIA. VoxCPM2 ocupa ~8 GB de VRAM.

pip install voxcpm

Primer arranque (API de Python):

from voxcpm import VoxCPM
import soundfile as sf

model = VoxCPM.from_pretrained(
  "openbmb/VoxCPM2",
  load_denoiser=False,
)
wav = model.generate(
    text="VoxCPM2 is the current recommended release for realistic multilingual speech synthesis.",
    cfg_value=2.0,
    inference_timesteps=10,
    seed=42,
)
sf.write("demo.wav", wav, model.tts_model.sample_rate)

La primera llamada descarga los pesos desde HuggingFace. Alternativa: python app.py --port 8808 abre una demo web en http://localhost:8808, con --device auto|cpu|mps|cuda|cuda:N.

Flujos de trabajo habituales

  • Diseñar una voz sin audio de referencia: voxcpm design --text "..." --control "Young female voice, warm and gentle" --seed 42 --output out.wav.
  • Clonar una voz desde un clip corto: voxcpm clone --text "..." --reference-audio voice.wav --output out.wav.
  • Clonación de máxima fidelidad: se pasa prompt_wav_path con el clip, prompt_text con su transcripción exacta y, opcionalmente, el mismo clip en reference_wav_path.
  • Lotes: voxcpm batch --input examples/input.txt --output-dir outs. Con marcas de tiempo: pip install "voxcpm[timestamps]" y --timestamps --timestamp-level word.
  • Servir en producción: vllm serve openbmb/VoxCPM2 --omni --port 8000 expone POST /v1/audio/speech compatible con clientes de OpenAI.
  • Ajuste fino (5–10 minutos de audio bastan): python scripts/train_voxcpm_finetune.py --config_path conf/voxcpm_v2/voxcpm_finetune_lora.yaml.

Configuración esencial

  • cfg_value: escala de guía de la difusión; el README usa 2,0.
  • inference_timesteps: número de pasos de difusión; el README usa 10.
  • seed: semilla para reproducibilidad; sin ella, Voice Design y clonación controlable pueden variar entre ejecuciones.
  • load_denoiser: activa el denoizador para el audio de referencia; se recomienda False cuando no se necesite.
  • optimize: optimize=False desactiva torch.compile; recomendado ante errores de Triton/torch.compile.

Trampas frecuentes y soluciones

  • Errores de Triton en Windows: instalar Triton del proyecto comunitario triton-windows y emparejar versiones PyTorch↔Triton; si persiste, optimize=False.
  • libtorchcodec no se carga: torchaudio ≥ 2.9 requiere FFmpeg instalado; alternativa: torchaudio.set_audio_backend("soundfile").
  • Errores de torch.compile en el primer arranque: desactivarlo con optimize=False.
  • MPS en Apple Silicon: si hay error, forzar device="cpu".
  • Python 3.14+: la instalación puede fallar; usar 3.10–3.12.
  • Recorte de voz al final de palabras (issue abierto con 51 comentarios): problema conocido documentado en el repositorio.

Integraciones y migración

vLLM-Omni: la vía para integrarlo en infraestructura de serving existente. ComfyUI: varios nodos comunitarios. TTS WebUI: extensión disponible. llama.cpp-omni: para despliegue en dispositivo sin Python. Migración desde APIs en la nube: el blog de Soniqo (mayo de 2026) enmarca la migración desde ElevenLabs — misma salida a 48 kHz, diseño de voz por texto, pero local y sin coste por llamada.

Números del repo

Medición: 23 de agosto de 2026, API de GitHub.

MétricaValor
Estrellas35.986
Bifurcaciones4.114
Suscriptores155
Commits162
Incidencias abiertas114
Lenguaje principalPython
LicenciaApache-2.0
Creación16 de septiembre de 2025
Última publicación2.0.3, 11 de mayo de 2026

Principales contribuidores: Labmem-Zhouyx (29), a710128 (16), liuxin99 (13), VoxInstruct (11), ZMXJJ (5). PyPI (voxcpm 2.0.3): 2.794 descargas en el último día, 101.622 en el último mes. HuggingFace: openbmb/VoxCPM2 registra 327.211 descargas y 1.542 «me gusta».

Cómo lo recibió la comunidad

Hacker News: el envío principal, «VoxCPM: Tokenizer-Free TTS for Context-Aware Speech Generation and Voice Cloning» (5 de diciembre de 2025), obtuvo 3 puntos y 0 comentarios. No existe un hilo amplio de lanzamiento en HN.

GitHub (issues): el issue con más actividad es «Voice cutoff at the end of words — Polish language» (abierto, 51 comentarios); el issue sobre torchcodec (cerrado, 26 comentarios). El issue «When is VoxCPM2 getting released?» (12 comentarios) muestra la expectación previa al lanzamiento.

YouTube: «VoxCPM 2 Review - 2026 | Clone Realistic AI Voice in 30+ Languages» (57.828 vistas, Dan - Smart Tutorials); «VoxCPM 2 Review» (38.336 vistas, Bijan Bowen); un video en español, «¿El fin de ElevenLabs? OmniVoice vs VoxCPM2» (15.580 vistas). Las reseñas se enmarcan consistentemente en la comparación local-vs-ElevenLabs.

Blog de terceros: Soniqo (17 de mayo de 2026) publicó un análisis técnico del pipeline y una tabla comparativa frente a ElevenLabs; concluye que la diferencia real «es si el audio sale o no del dispositivo».

VoxCPM frente a otras propuestas

ProyectoCoincidencia verificableDiferencia verificable
ElevenLabsClonación de voz, diseño de voz por texto, salida 48 kHz, cobertura multilingüe.Propietaria y alojada: el audio sube a sus servidores, coste por carácter, sin pesos locales.
CosyVoice / CosyVoice3TTS open-source con clonación; CosyVoice aporta la implementación Flow Matching de LocDiT que usa VoxCPM2.CosyVoice es de arquitectura tokenizada y su versión 3 es cerrada; VoxCPM2 es tokenizer-free y cubre 30 idiomas.
Qwen3-TTS (1,7B)TTS open-source comparado en las tablas del propio README.Supera a VoxCPM2 en WER de inglés en las tablas autorreportadas.
FishAudio S2 (4B)Comparado directamente en los benchmarks del README.Mejor WER general; VoxCPM2 supera a Fish en SIM en casi todos los idiomas.

La diferenciación estructural verificable frente a la mayoría: salida nativa 48 kHz sin tokenizador discreto + diseño de voz + clonación controlable en un único backbone de 2B bajo Apache-2.0.

Casos de uso y a quién puede ayudar este repositorio

  • Desarrolladores que necesitan TTS local multilingüe: un único modelo Apache-2.0 cubre 30 idiomas con la API de Python estándar, sin coste por carácter ni dependencia de red.
  • Equipos de producto con requisitos de privacidad u offline: la clonación en dispositivo permite que el audio nunca salga del equipo.
  • Plataformas de serving de alto tráfico: con vLLM-Omni, VoxCPM2 se sirve con PagedAttention y batching continuo detrás de un endpoint compatible con OpenAI.
  • Creadores de contenido y estudios de animación: los nodos de ComfyUI integran la síntesis en flujos por nodos; YouDub-webui lo usa como motor de doblaje.
  • Investigadores y equipos que ajustan modelos de voz: el ajuste fino SFT/LoRA documentado permite adaptar el modelo a un hablante, idioma o dominio específico.
  • Usuarios en hardware de consumo y edge: el binario de llama.cpp-omni y los pesos GGUF abren el uso a portátiles sin GPU NVIDIA.

Recursos


Nota: este artículo combina el README, la FAQ de ReadTheDocs, los releases y la API de GitHub de OpenBMB/VoxCPM, los contadores de PyPI y HuggingFace, la API de Hacker News, una búsqueda de YouTube y el blog de Soniqo, consultados el 23 de agosto de 2026. Las cifras de benchmarks son autorreportadas por OpenBMB. Las cifras cambian con el tiempo.

Comentarios