不用分词器,直接生成语音:VoxCPM2 端到端 TTS 实战

不用分词器,直接生成语音:VoxCPM2 端到端 TTS 实战

不用分词器,直接生成语音:VoxCPM2 端到端 TTS 实战

传统 TTS 的致命弱点:离散 token 化

市面上的主流 TTS 系统——ElevenLabs、MiniMax-Speech、Qwen3-TTS——有一个共同的底层设计:先把连续音频离散化为 token,再用语言模型逐个预测下一个 token

这个方案有两个根本性问题:

不用分词器,直接生成语音:VoxCPM2 端到端 TTS 实战

1. 信息损失:离散化会丢掉呼吸细节、音高颤动、情绪起伏等连续信号里的"软"信息

2. 计算效率:高采样率音频 token 序列极长,推理成本居高不下

VoxCPM2 选择了完全不同的路——全程在连续潜空间做扩散自回归,连 tokenizer 都不要了

VoxCPM2 核心架构:四阶连续潜空间管道

VoxCPM2 基于 MiniCPM-4(2B 参数)主干构建,整个生成流程分四个阶段,全部在 AudioVAE V2 的连续潜空间里运行:

阶段 名称 作用
1 Local Encoder(局部编码器) 把输入音频切成 patch,编码为紧凑的局部表示,大幅缩短序列长度
2 Text-Semantic LM(文本语义语言模型) 联合处理文本 token 与音频嵌入,捕捉"说什么"——语速、停顿、重音等高层规划
3 Residual Acoustic LM(残差声学语言模型) 融合语义层与声学层,填补"怎么说"的细节鸿沟
4 Local DiT / CFM(局部条件流匹配扩散) 以扩散自回归方式在每个 AR 步生成高质量音频 patch

最后由 AudioVAE V2 解码为 48kHz 原始波形——无需外部超采样器。

VoxCPM2 四阶段连续潜空间管道

核心能力一览

  • 30 种语言 + 9 种中文方言:无需语言标签,自动从文本判断
  • Voice Design:用自然语言描述声音特征(性别/年龄/语气/情绪/语速),无需参考音频即可生成全新音色
  • 可控语音克隆:提供短音频片段 + 可选风格引导参数,保留音色同时调节情感倾向
  • 48kHz 录音棚音质:内置 AudioVAE V2 超分,16kHz 参考音频直接上采样至 48kHz 输出
  • RTF 低至 0.13(RTX 4090,Nano-VLLM 加速)
  • Apache-2.0:可商用

五行代码跑起来

安装

pip install voxcpm

Voice Design:从文字描述"捏"声音

import soundfile as sf
from voxcpm import VoxCPM

model = VoxCPM.from_pretrained("openbmb/VoxCPM2")

wav = model.generate(
text="(温暖柔和的女性声音,30岁左右,沉稳舒缓的语气) "
"欢迎使用 VoxCPM 2,这是新一代自然语音合成系统。",
cfg_value=2.0,
inference_timesteps=10,
)
sf.write("voice_design.wav", wav, model.tts_model.sample_rate)

Voice Design 自然语言描述音色

语音克隆:保留音色,控制风格

import soundfile as sf
from voxcpm import VoxCPM

model = VoxCPM.from_pretrained("openbmb/VoxCPM2")

wav = model.generate(
text="这段文字将用参考音色朗读,同时保留情感风格标签。",
reference_wav_path="reference.wav", # 克隆音色
cfg_value=2.0,
)
sf.write("cloned.wav", wav, model.tts_model.sample_rate)

注意:RTF 受显卡带宽影响明显。实测 RTX 4090 上约 0.13,RTX 3090 或更低显卡请预留更长等待时间。

版本演进:VoxCPM 2 vs 1.x vs 0

指标 VoxCPM 2 VoxCPM 1.5 VoxCPM 0
参数量 2B 0.6B 0.5B
输出采样率 48kHz 44.1kHz 16kHz
语言数 30 种 中英 中英
克隆模式 隔离参考 + 续接 续接 续接
Voice Design
RTF(Nano-VLLM) ~0.13 ~0.08 ~0.10
VRAM ~8 GB ~6 GB ~5 GB

VoxCPM2 vs 竞品横向对比

在 Minimax-MLS 基准测试中,VoxCPM2 的英文音色相似度达到 85.4%,而 ElevenLabs 为 61.3%——差距相当悬殊。

语音克隆效果对比

不过需要客观看待:VoxCPM2 在清晰度(Intelligibility)指标上仍略低于 Qwen3-TTS,且不支持 FishAudio S2 的部分高级定制能力。它的核心优势在于无需任何预处理、直接端到端的生产级体验。

排坑指南

显存不足(OOM)

2B 模型 + 扩散推理显存占用约 8GB,建议:

# 使用量化或减少 batch
model.generate(..., max_seq_len=4096) # 限制序列长度降显存

推理速度慢

  • 确认使用了 Nano-VLLM 加速模式,RTF 可从 0.30 降至 0.13
  • CPU 推理不推荐,实时流式输出最低要求 RTX 3060 以上

克隆声音不像

  • 参考音频时长建议 5-30 秒,过短(<3s)信息不足
  • 参考音频质量要好,避免噪声过大,16kHz 以上采样率优先
  • 续接克隆(prompt_wav_path)与隔离克隆(reference_wav_path)不要混淆,前者用于短 Prompt 续写,后者用于结构化克隆

中文方言识别不稳定

VoxCPM2 支持 9 种中文方言,但方言自动检测仍有误触发概率。关键场景下可在文本描述中显式标注方言,例如:

text="(四川话,语速稍快) 今天我们去吃火锅嘛"

在线体验

总结

VoxCPM2 真正有价值的地方不是某个单一指标,而是一个设计哲学:语音合成应该像文本生成一样自然——直接端到端,无需离散化中介。四阶段连续潜空间管道证明这条路走得通,而且走得很好。

如果你需要: - 快速生成高质量配音:Voice Design + 5 行代码,零门槛 - 产品化语音克隆:隔离参考机制解决了 1.x 时代"续接才能克隆"的硬伤 - 多语言内容生产:30 种语言 + 中文方言,无需任何语言标签配置

VoxCPM2 是目前开源生态里最值得优先测试的选项。

文章版权声明:除非注明,否则均为边学边练网络文章,版权归原作者所有

最新文章

热门文章

本栏目文章