尧图精选

VoxCPM2 上手:从开源语音合成到声音克隆

🕒 发布时间:2026/9/1 9:55:26 📁 来源:尧图网络
VoxCPM2 上手从开源语音合成到声音克隆【免费下载链接】VoxCPMVoxCPM2: Tokenizer-Free TTS for Multilingual Speech Generation, Creative Voice Design, and True-to-Life Cloning项目地址: https://gitcode.com/GitHub_Trending/vo/VoxCPMVoxCPM2 是一个 Apache-2.0 协议可免费商用完全开源的语音合成项目支持 30 种语言加 9 种中文方言原生输出 48kHz 音频既能用文本直接生成语音也能用一句话描述凭空创造音色或者拿几秒参考音频克隆某个人的声音。如果你一直在找一个免费的 TTS 工具同时还想做声音克隆它要解决的就是这三件事。装好环境出第一段声音一条命令装好pip install voxcpm环境要求三个Python ≥ 3.10且 3.13、PyTorch ≥ 2.5.0、CUDA ≥ 12.0。纯 CPU 也能跑但速度很慢建议先用一块至少 8GB 显存的 GPU 试试——VoxCPM2 是 20 亿参数运行大约占 8GB 显存。如果网络拉不动模型权重建议先从 ModelScope 把权重下到本地然后给from_pretrained传本地路径即可。几行代码听到第一段语音最核心的调用就这几行模型入口在 src/voxcpm/core.py所有功能都围绕generate这一个方法展开from voxcpm import VoxCPM import soundfile as sf model VoxCPM.from_pretrained(openbmb/VoxCPM2, load_denoiserFalse) wav model.generate( text你好这是一个开源语音合成演示。, cfg_value2.0, # 文本忠实度越高越贴着文本读 inference_timesteps10, # 扩散步数越大越精细但越慢 seed42, # 固定随机种子结果可复现 ) sf.write(demo.wav, wav, model.tts_model.sample_rate)输出直接是 48kHz 高采样率音频。注意采样率要从model.tts_model.sample_rate取别自己写死 48000。不想写代码的话也可以跑项目自带的演示页面python app.py --port 8808然后浏览器打开 localhost:8808各模式都能点着试。三种克隆玩法音色设计、参考克隆、极致克隆音色设计一句话造一个新声音不用找任何参考音频在文本开头用括号写描述就行wav model.generate( text(年轻女性温柔甜美的声音)你好我是你的语音助手。, cfg_value2.0, )描述里可以写性别、年龄、音色、情绪、语速生成出来就是一个新的人。建议同一个描述多生成 1~3 次挑最好的可控生成的结果每次可能不太一样。参考音频克隆几秒就够了有目标人的声音素材时直接传参考音频路径wav model.generate( text这是用 VoxCPM2 克隆的演示语音。, reference_wav_pathexamples/reference_speaker.wav, )还可以叠加风格指令——把描述写进括号保留原音色的同时调节语速和情绪wav model.generate( text(稍快一点欢快的语气)这是带风格控制的克隆语音。, reference_wav_pathexamples/reference_speaker.wav, )极致克隆连音频带转录一起给这种模式让模型基于参考音频接着往下说所以声音细节还原得最精准。需要提供参考音频以及它的准确转录文本wav model.generate( text这是极致克隆的演示。, prompt_wav_pathexamples/reference_speaker.wav, prompt_text参考音频的转录文本, reference_wav_pathexamples/reference_speaker.wav, # 可选提升相似度 )同一份音频同时传给reference_wav_path和prompt_wav_path相似度最佳。聊聊无令牌化到底是什么意思VoxCPM2 最大的架构卖点是 tokenizer-free——简单说就是不用先把声音切成一小块一小块的离散编码再建模每切一次就丢一点信息而是直接对着连续的语音表征做生成所以听感更接近真人说话。整个流水线分四段LocEnc 先把音频编码成连续表征TSLM文本-语义语言模型基于 MiniCPM-4 基座处理文本并产出语义表示RALM 生成细粒度的声学特征最后由 LocDiT局部扩散变换器用扩散过程把波形合成出来。输出端的 AudioVAE V2 采用非对称编解码输入 16kHz 的参考音频也能直接输出 48kHz等于内置了超分。模型在超过 200 万小时的多语种音频上训练连续表征让它能捕捉到语气、情绪这些细微信号这类东西用离散 token 方案很难学全。效果不对时先查这三个方向音质不够好。先把inference_timesteps加到 20再把cfg_value在 2.0~3.0 之间微调偏低会更平滑但也容易飘偏高更贴文本。不满意就重跑一次需要复现时固定seed。克隆相似度不高。先查参考音频建议 3~10 秒背景干净有噪音就开降噪加载时load_denoiserTrue或生成时传denoiseTrue。还不行就升级到上面的极致克隆模式把转录文本也提供给模型。显存不够。2B 模型大约要 8GB 显存。显存紧张可以传devicecpu走 CPU慢但能跑或者换 VoxCPM-0.5B / 1.5 小模型代价是只支持中英文。再往前走微调和生产部署LoRA 微调5~10 分钟音频就够想把某个人的声音或某个口音固定下来不用从头训。准备一份 JSONL 数据每行一条音频路径 文本格式参考 examples/train_data_example.jsonl然后跑微调脚本python scripts/train_voxcpm_finetune.py \ --config_path conf/voxcpm_v2/voxcpm_finetune_lora.yaml关键参数都集中在 conf/voxcpm_v2/voxcpm_finetune_lora.yaml不想碰配置文件也可以python lora_ft_webui.py打开 WebUI 里训练和推理。训完之后还支持 LoRA 热切换运行时加载不同的权重换不同的声音。部署与推理加速默认 PyTorch 实现在 RTX 4090 上 RTF 约 0.3合成 1 秒音频耗时 0.3 秒。吞吐不够的话有两条路pip install nano-vllm-voxcpm装 Nano-vLLM-VoxCPMRTF 能压到约 0.13支持并发请求和 FastAPI 服务或者用 vLLM-Omni 起 OpenAI 兼容的/v1/audio/speech接口现有客户端可以直接接。要跑在端侧的话llama.cpp-omni 提供了 VoxCPM2 的 GGUF 权重CPU / Metal / CUDA / Vulkan 都能跑Apple M4 Pro 上 Q8_0 版本 RTF 约 1.76接近准实时。想翻代码的话clone 仓库从 src/voxcpm/core.py 读起git clone https://gitcode.com/GitHub_Trending/vo/VoxCPM【免费下载链接】VoxCPMVoxCPM2: Tokenizer-Free TTS for Multilingual Speech Generation, Creative Voice Design, and True-to-Life Cloning项目地址: https://gitcode.com/GitHub_Trending/vo/VoxCPM创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
上一篇/下一篇内容由系统自动关联 返回资讯列表 →