传统语音合成系统普遍依赖离散 Tokenizer(如 SoundStream、EnCodec)将音频压缩为语义或声学码本索引,再通过语言模型自回归生成。这种范式虽降低了序列长度,却引入了码本坍塌、信息瓶颈与音质感损等问题。VoxCPM2 选择了一条截然不同的路径 —— 完全抛弃离散 Tokenizer,直接在连续隐空间进行端到端的扩散自回归建模,实现了 30 语言、48kHz 高保真的语音合成。
无 Tokenizer 架构的核心设计
VoxCPM2 的架构可概括为四阶段流水线:LocEnc → TSLM → RALM → LocDiT。其中最关键的是 AudioVAE V2 的连续表征空间,它替代了传统方案中的离散码本。
AudioVAE V2 采用非对称编解码设计:编码器接受 16kHz 参考音频,输出低帧率(6.25Hz)的连续隐向量;解码器则直接合成 48kHz 高保真波形,内置超分辨率能力,无需外部上采样器。这种设计将声学建模与采样率解耦,使语言模型只需在紧凑的连续空间进行建模,避免了离散化带来的信息损失。
LocEnc(Local Encoder)负责将输入文本与参考音频编码为条件表征;TSLM(Text-Speech Language Model)基于 MiniCPM-4 骨干网络,以自回归方式生成粗略的语音隐向量序列;RALM(Refinement Autoregressive Language Model)对隐向量进行精细化调整;最终 LocDiT(Diffusion Transformer)通过流匹配(Flow Matching)将隐向量解码为音频波形。
扩散自回归的生成机制
VoxCPM2 的核心创新在于将扩散模型与自回归语言模型结合。TSLM 以自回归方式逐帧生成语音隐向量,每一帧的生成都以已生成的历史帧为条件,天然支持流式推理。与传统扩散 TTS(如 NaturalSpeech 3)不同,VoxCPM2 不需要预先训练复杂的声学模型,扩散过程直接作用于 AudioVAE 的隐空间,简化了训练流程。
推理时可通过 inference_timesteps 参数控制扩散步数(默认 10 步),步数越少速度越快但音质略有下降;cfg_value(Classifier-Free Guidance)控制生成多样性,建议值 2.0。在 NVIDIA RTX 4090 上,标准 PyTorch 实现的实时率(RTF)约为 0.3,通过 Nano-vLLM 加速后可降至 0.13,显存占用约 8GB。
多语言与语音克隆的工程实现
VoxCPM2 支持 30 种语言的端到端合成,无需语言标签,模型自动从文本内容推断语种。这种能力源于 200 万小时多语言数据的预训练,以及连续表征空间对语言无关声学特征的统一建模。
语音克隆提供三种模式:Voice Design(文本描述生成新声音)、Controllable Cloning(参考音频 + 风格控制)、Ultimate Cloning(参考音频 + 转录本 + 音频延续)。Ultimate Cloning 将参考音频同时传入 prompt_wav_path 和 reference_wav_path,模型在隐空间无缝延续参考音频的音色、韵律与情感,实现真正的「声音续写」。
生产部署方案
对于高吞吐场景,推荐两条部署路径:
Nano-vLLM 方案:专为 VoxCPM2 优化的推理引擎,支持并发请求与异步 API,RTF 低至 0.13。适合需要自定义服务逻辑的私有化部署。
vLLM-Omni 方案:官方 vLLM 扩展,原生支持 VoxCPM2,提供 OpenAI 兼容的 /v1/audio/speech 端点,内置 PagedAttention KV 缓存与连续批处理。适合多租户 SaaS 场景。
LoRA 微调仅需 5-10 分钟音频即可适配特定说话人或领域,参数量小、切换灵活,适合个性化语音服务。
局限与风险提示
无 Tokenizer 架构虽避免了离散化的信息损失,但对连续隐空间的建模要求更高,需要更大的训练数据与模型容量(VoxCPM2 为 2B 参数)。Voice Design 与 Controllable Cloning 的结果存在运行间差异,建议生成 1-3 次取最优结果。语音克隆能力存在被滥用于仿冒的风险,生产环境应配合声纹水印与使用声明。
资料来源
- OpenBMB/VoxCPM GitHub 仓库: https://github.com/OpenBMB/VoxCPM
- VoxCPM 技术文档: https://voxcpm.readthedocs.io/en/latest/
内容声明:本文无广告投放、无付费植入。
如有事实性问题,欢迎发送勘误至 i@hotdrydog.com。