OpenBMB 开源社区/VoxCPM-0.5B
模型介绍
文件和版本
Pull Requests
讨论
分析

🎙️ VoxCPM:面向上下文感知语音生成与高保真声音克隆的无分词器TTS系统

Project Page MiniCPM Wiki Hugging Face Live Playground Samples

VoxCPM Logo

概述

VoxCPM是一种全新的无分词器文本转语音(TTS)系统,重新定义了语音合成的真实感。通过在连续空间中建模语音,它突破了离散分词技术的局限,实现了两大核心能力:上下文感知的语音生成与高保真的零样本声音克隆。

与主流方法将语音转换为离散词元不同,VoxCPM采用端到端的扩散自回归架构,直接从文本生成连续的语音表征。基于MiniCPM-4骨干模型,通过层级语言建模与FSQ约束实现隐式的语义-声学解耦,显著提升了表达力与生成稳定性。

VoxCPM Model Architecture

🚀 核心特性

  • 上下文感知的 expressive 语音生成 - VoxCPM能够理解文本语义,推断并生成恰当的韵律,赋予语音卓越的表现力与自然流畅度。它能根据内容自发调整说话风格,基于180万小时的双语语料训练,呈现出高度贴合的语音表达。
  • 高保真声音克隆 - 仅需一段简短参考音频,VoxCPM即可实现精准的零样本声音克隆,不仅捕捉说话人的音色,还能还原口音、情绪基调、节奏与语速等细腻特征,打造忠实而自然的声音复刻。
  • 高效合成 - VoxCPM支持流式合成,在消费级NVIDIA RTX 4090 GPU上实时因子(RTF)低至0.17,足以满足实时应用场景的需求。

快速开始

🔧 通过PyPI安装

pip install voxcpm

1. 模型下载(可选)

默认情况下,首次运行脚本时会自动下载模型,但您也可以提前手动下载。

  • 下载 VoxCPM-0.5B
    from huggingface_hub import snapshot_download
    snapshot_download("openbmb/VoxCPM-0.5B",local_files_only=local_files_only)
  • 下载 ZipEnhancer 和 SenseVoice-Small。在网页演示中,我们使用 ZipEnhancer 来增强语音提示,并使用 SenseVoice-Small 进行语音提示的自动语音识别(ASR)。
    from modelscope import snapshot_download
    snapshot_download('iic/speech_zipenhancer_ans_multiloss_16k_base')
    snapshot_download('iic/SenseVoiceSmall')

2. 基本用法

import soundfile as sf
from voxcpm import VoxCPM

model = VoxCPM.from_pretrained("openbmb/VoxCPM-0.5B")

wav = model.generate(
    text="VoxCPM is an innovative end-to-end TTS model from ModelBest, designed to generate highly expressive speech.",
    prompt_wav_path=None,      # optional: path to a prompt speech for voice cloning
    prompt_text=None,          # optional: reference text
    cfg_value=2.0,             # LM guidance on LocDiT, higher for better adherence to the prompt, but maybe worse
    inference_timesteps=10,   # LocDiT inference timesteps, higher for better result, lower for fast speed
    normalize=True,           # enable external TN tool
    denoise=True,             # enable external Denoise tool
    retry_badcase=True,        # enable retrying mode for some bad cases (unstoppable)
    retry_badcase_max_times=3,  # maximum retrying times
    retry_badcase_ratio_threshold=6.0, # maximum length restriction for bad case detection (simple but effective), it could be adjusted for slow pace speech
)

sf.write("output.wav", wav, 16000)
print("saved: output.wav")

3. 命令行用法

安装完成后,入口点为 voxcpm(或使用 python -m voxcpm.cli)。

# 1) Direct synthesis (single text)
voxcpm --text "Hello VoxCPM" --output out.wav

# 2) Voice cloning (reference audio + transcript)
voxcpm --text "Hello" \
  --prompt-audio path/to/voice.wav \
  --prompt-text "reference transcript" \
  --output out.wav \
  --denoise

# 3) Batch processing (one text per line)
voxcpm --input examples/input.txt --output-dir outs
# (optional) Batch + cloning
voxcpm --input examples/input.txt --output-dir outs \
  --prompt-audio path/to/voice.wav \
  --prompt-text "reference transcript" \
  --denoise

# 4) Inference parameters (quality/speed)
voxcpm --text "..." --output out.wav \
  --cfg-value 2.0 --inference-timesteps 10 --normalize

# 5) Model loading
# Prefer local path
voxcpm --text "..." --output out.wav --model-path /path/to/VoxCPM_model_dir
# Or from Hugging Face (auto download/cache)
voxcpm --text "..." --output out.wav \
  --hf-model-id openbmb/VoxCPM-0.5B --cache-dir ~/.cache/huggingface --local-files-only

# 6) Denoiser control
voxcpm --text "..." --output out.wav \
  --no-denoiser --zipenhancer-path iic/speech_zipenhancer_ans_multiloss_16k_base

# 7) Help
voxcpm --help
python -m voxcpm.cli --help

4. 启动网页演示

运行 python app.py 即可启动界面,支持语音克隆与语音创作功能。

👩‍🍳 语音烹饪指南

欢迎来到 VoxCPM 厨房!按照这份食谱,你也能烹制出完美的语音作品。让我们开始吧。


🥚 第一步:准备基底食材(文本内容)

首先,选择你偏好的文本输入方式:

  1. 常规文本(经典模式)
  • ✅ 保持开启"文本正则化"。直接自然输入(例如:"你好,世界!123")。系统将借助 WeTextProcessing 库自动处理数字、缩写和标点符号。
  1. 音素输入(原生模式)
  • ❌ 关闭"文本正则化"。输入音素文本,如 {HH AH0 L OW1}(英文)或 {ni3}{hao3}(中文),实现精准的发音控制。在此模式下,VoxCPM 还支持对其他复杂非正则化文本的原生理解——不妨一试!

🍳 第二步:选择你的风味配方(语音风格)

这是赋予音频独特音色的秘制酱料。

  1. 使用提示语音烹制(遵循经典食谱)
  • 提示语音为 VoxCPM 提供目标声学特征。说话人的音色、讲话风格,甚至背景声音和环境氛围都将被复刻。
    • 追求纯净录音室级音质:
      • ✅ 开启"提示语音增强"。它如同降噪滤波器,去除背景嘶声和隆隆声,为你呈现纯粹干净的克隆声音。
  1. 原汁原味烹制(让模型自由发挥)
  • 若未提供参考音频,VoxCPM 便化身创意大厨!凭借其基座模型 MiniCPM-4 的文本理解能力,模型会根据文本内容自主推断合适的说话风格。
    • 进阶提示:大胆挑战 VoxCPM——诗歌、歌词、戏剧独白,任何文本都可能带来意想不到的惊喜!

🧂 第三步:最后调味(微调输出效果)

你的作品即将出炉!若想进一步精雕细琢,这里还有两味关键调料。

  • CFG 参数(对食谱的忠实程度)
    • 默认值:出色的起点。
    • 声音显得生硬或怪异?调低此值。这能让模型更放松、更即兴,尤其适合富有表现力的提示文本。
    • 追求极致的清晰度和精准贴合文本?适当调高,让模型更严格地遵循指引。
  • 推理步数(炖煮时长:品质与速度的权衡)
    • 赶时间快速品尝?使用较小的数值,适合快速草稿和实验探索。
    • 精心烹制大餐?使用较大的数值。这让模型得以更久地"慢炖",精细打磨音频,带来更出色的细节表现与自然质感。

尽情创作吧!🎉 从默认参数开始,再根据项目需求逐步微调。这片厨房属于你!


📊 性能亮点

VoxCPM 在公开的零样本语音合成基准测试中取得了具有竞争力的成绩:

Seed-TTS-eval 基准测试

模型参数量开源test-ENtest-ZHtest-Hard
WER/%⬇SIM/%⬆CER/%⬇SIM/%⬆CER/%⬇SIM/%⬆
MegaTTS30.5B❌2.7977.11.5279.0--
DiTAR0.6B❌1.6973.51.0275.3--
CosyVoice30.5B❌2.0271.81.1678.06.0875.8
CosyVoice31.5B❌2.2272.01.1278.15.8375.8
Seed-TTS-❌2.2576.21.1279.67.5977.6
MiniMax-Speech-❌1.6569.20.8378.3--
CosyVoice0.3B✅4.2960.93.6372.311.7570.9
CosyVoice20.5B✅3.0965.91.3875.76.8372.4
F5-TTS0.3B✅2.0067.01.5376.08.6771.3
SparkTTS0.5B✅3.1457.31.5466.0--
FireRedTTS0.5B✅3.8246.01.5163.517.4562.1
FireRedTTS-21.5B✅1.9566.51.1473.6--
Qwen2.5-Omni7B✅2.7263.21.7075.27.9774.7
OpenAudio-s1-mini0.5B✅1.9455.01.1868.5--
IndexTTS21.5B✅2.2370.61.0376.5--
VibeVoice1.5B✅3.0468.91.1674.4--
HiggsAudio-v23B✅2.4467.71.5074.0--
VoxCPM0.5B✅1.8572.90.9377.28.8773.0

CV3-eval 基准测试

模型zhenhard-zhhard-en
CER/%⬇WER/%⬇CER/%⬇SIM/%⬆DNSMOS⬆WER/%⬇SIM/%⬆DNSMOS⬆
F5-TTS5.478.90------
SparkTTS5.1511.0------
GPT-SoVits7.3412.5------
CosyVoice24.086.3212.5872.63.8111.9666.73.95
OpenAudio-s1-mini4.005.5418.158.23.7712.455.73.89
IndexTTS23.584.4512.874.63.65---
HiggsAudio-v29.547.8941.060.23.3910.361.83.68
CosyVoice3-0.5B3.895.2414.1578.63.759.0475.93.92
CosyVoice3-1.5B3.914.999.7778.53.7910.5576.13.95
VoxCPM3.404.0412.966.13.597.8964.33.74

⚠️ 风险与局限性

  • 通用模型行为:尽管 VoxCPM 已在大规模数据集上完成训练,其生成的内容仍可能包含意外结果、偏见或伪影。
  • 语音克隆的潜在滥用风险:VoxCPM 强大的零样本语音克隆能力可生成高度逼真的合成语音。该技术可能被滥用,用于制造以冒充身份、欺诈或传播虚假信息为目的的逼真深度伪造内容。模型使用者不得利用该模型制作侵犯个人合法权益的内容,严禁将 VoxCPM 用于任何非法或不道德的目的。我们强烈建议,凡使用此模型生成的公开内容,均应明确标注为 AI 生成。
  • 当前技术限制:尽管整体表现稳定,模型在应对超长输入或情感表达丰富的输入时,偶尔可能出现不稳定的情况。此外,当前版本对情感、说话风格等具体语音属性的直接控制能力较为有限。
  • 双语模型:VoxCPM 主要以中文和英文数据进行训练,在其他语言上的表现无法保证,可能产生不可预测或低质量的音频输出。
  • 本模型仅限研究与开发用途发布。未经严格的测试与安全评估,不建议将其用于生产环境或商业应用。请负责任地使用 VoxCPM。

📄 许可证

VoxCPM 模型权重及代码均依据 Apache-2.0 许可证开源发布。