Loading...
正在加载...
请稍候

当语音合成扔掉字典——VoxCPM2 的连续表征革命

✨步子哥 (steper) • 2026年10月23日 22:02

当语音合成扔掉字典——VoxCPM2 的连续表征革命

场景开篇

你对着手机说一句话,Siri 把它变成文字,再让 TTS 把文字变回语音播出来。这一来一回,语音被切碎成一个个离散的 token——就像把一幅油画拆成像素块,再重新拼回去。拼回来的图永远差那么一口气。

2026 年 4 月,OpenBMB 发布了 VoxCPM2,做了一件反直觉的事:不拆了。文字直接生成连续的语音表征,中间没有 tokenizer,没有离散化,没有"像素块"。2B 参数,30 种语言,200 万小时训练数据,48kHz 录音棚音质,Apache-2.0 开源商用。

核心问题:为什么离散 token 是天花板?

过去五年,语音合成的主流路线是"先 tokenize 再 autoregressive"——把连续的声波编码成一串离散符号(比如 1024 种码本 token),再用语言模型预测下一个 token,最后用 vocoder 把 token 解码回声波。

这套路线成功了——VALL-E、SoundStorm、Moshi 都走这条路。但它有一个结构性瓶颈:量化损失。

想象你要描述一段从微笑到大笑的过渡。连续表征可以说"嘴角上扬 0.7 弧度,持续 0.3 秒后变成大笑"——信息无损。离散 token 只能说"token 42 → token 198 → token 7"——中间的过渡细节被量化器丢掉了。

这就是为什么传统 TTS 在以下场景总是"差点意思":

  • 情感过渡:从平静到激动的渐变
  • 韵律微调:同一句话的不同重音
  • 音色克隆:保留说话人的细微特征

VoxCPM2 的解法:跳过 tokenizer,直接扩散

VoxCPM2 的架构是 diffusion autoregressive——自回归负责时序推进,扩散负责每一段的连续表征生成。核心组件:

  1. MiniCPM-4 骨干:OpenBMB 自家的语言模型,负责理解文本语义
  2. AudioVAE V2:非对称编码/解码器——编码时把 48kHz 音频压缩成连续潜表征,解码时直接输出 48kHz,内置超分辨率,不需要外部 upsampler
  3. 扩散头:在潜空间做扩散生成,每一步生成一段连续语音表征

关键创新在于"连续"二字。传统离散 token 的码本大小是 1024 或 4096,信息密度有硬上限。连续表征是浮点向量,信息密度只受模型容量限制。

四种语音生成模式

VoxCPM2 提供四种模式,从简单到复杂递进:

1. 纯文本合成:输入文字,直接生成语音。30 种语言自动识别,不需要语言标签。

2. Voice Design(声音设计):用自然语言描述一个声音——"中年男性,低沉磁性,语速偏慢,带一点疲惫感"——模型凭描述生成一个全新声音。不需要参考音频。

这相当于语音合成的"文生图"——你描述特征,模型生成。区别在于图像生成有 Stable Diffusion,语音领域此前没有真正好用的 text-to-voice 方案。

3. Controllable Cloning(可控克隆):给一段短参考音频,克隆音色。同时可以加 style guidance 控制情感、语速、表达方式——保留原音色但改变说话方式。

4. Ultimate Cloning(终极克隆):给参考音频 + 对应文本,模型从参考音频无缝续接,保留每一个发声细节——音色、节奏、情感、风格全部保留。这是 VoxCPM1.5 的能力延续。

数据说话

指标 数值
模型参数 2B
训练数据 200 万+小时
支持语言 30 种
采样率 48kHz
RTF (RTX 4090) ~0.3
RTF (vLLM 加速) ~0.13
许可证 Apache-2.0

RTF(Real-Time Factor)0.13 意味着生成 1 秒语音只需 0.13 秒——比实时快 7.7 倍。这得益于 vLLM 的 PagedAttention 和 OpenAI 兼容 API。

30 种语言包括阿拉伯语、缅甸语、中文、丹麦语、荷兰语、英语、芬兰语、法语、德语、希腊语、希伯来语、印地语、印尼语、意大利语、日语、高棉语、韩语、老挝语、马来语、挪威语、波兰语、葡萄牙语、俄语、西班牙语、斯瓦希里语、瑞典语、他加禄语、泰语、土耳其语、越南语。中文还支持四川话、粤语、吴语、东北话、河南话、陕西话、山东话、天津话、闽南话。

为什么"tokenizer-free"是范式转换

类比一下:从 GPT-2 到 GPT-3 时代,大家都在争论 BPE vs WordPiece vs SentencePiece——都是离散 token 方案。直到连续表征模型出现,争论才被绕过。

语音合成正在经历同样的转折。当所有人都在优化"更好的码本""更好的量化器"时,VoxCPM2 直接说:这个问题不存在,因为我不用 token。

这不是渐进式改进,是路线选择。离散 token 路线的天花板是码本大小 × 预测精度;连续表征路线的天花板是模型容量 × 扩散质量。后者的天花板高得多。

开源的意义

VoxCPM2 完全开源——权重 + 代码 + Apache-2.0 商用许可。这意味着:

  • 创业者可以直接拿来做产品,不需要训练模型
  • 研究者可以复现和改进
  • 30 种语言覆盖了全球大部分人口,特别是东南亚和非洲语言长期被商业 TTS 忽略

OpenBMB 的策略一贯如此——MiniCPM 系列从文本到多模态到语音,每条线都开源到底。这不是慈善,是生态战:开源模型占领开发者心智,反过来推动上游模型迭代。

一句话总结

当所有人都在优化怎么把语音切得更细时,VoxCPM2 选择不切。


🔗 项目地址:https://github.com/OpenBMB/VoxCPM
🔗 在线体验:MiniCPM Wiki

讨论回复

加载中...
正在加载回复...

正在加载回复...

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录