ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

VoxCPM2-NPU 续写模式与终极克隆模式详解:提示音频、文本与参考人声如何无缝衔接

VoxCPM2-NPU 续写模式与终极克隆模式详解:提示音频、文本与参考人声如何无缝衔接
  • 人工智能
  • 大模型
  • 语音
  • 音频
  • Ascend

【免费下载链接】VoxCPM2-NPU

项目地址:https://ai.gitcode.com/z_studio/VoxCPM2-NPU
点击查看免费下载

VoxCPM2-NPU 是 OpenBMB 开源的 VoxCPM2 免分词扩散自回归 TTS 模型在昇腾 NPU 上的推理适配项目。本文详解 VoxCPM2 的续写模式与终极克隆模式:如何仅用"提示音频 + 提示文本"让语音自然续写,以及如何叠加"参考人声"实现最高相似度的声音克隆,并给出完整命令与实测数据,适合新手快速上手。

一、项目速览:一条命令跑出 48 kHz 语音

VoxCPM2 是约 2.38B 参数的多语种 TTS 模型,支持 30 种语言,输出 48 kHz 高保真语音。本项目已在单卡 Ascend 910B 上跑通端到端推理,核心就是一条 inference.py:

推理链路为:文本/提示音频 → TSLM 自回归预测声学 token → LocDiT 扩散采样 → AudioVAE 解码为 48 kHz 波形。克隆与续写能力都建立在这条流水线之上。

二、先跑环境:确认 NPU 就绪

运行任何合成命令前,先用npu-smi info确认逻辑卡Health=OK且显存空闲(见 README.md):

三、三种音色参考模式对比

模式关键参数模型学到的东西典型场景
🎙️ 参考人声克隆--ref-wav参考说话人的音色用某个人的声音朗读任意文本
📡 续写模式--prompt-wav+--prompt-text提示音频的上下文与韵律接续一段已有音频,语气自然衔接
🔥 终极克隆三者全给参考音色 + 提示上下文相似度最高、衔接最自然的克隆

在源码中,这三类输入分别映射为generate()的reference_wav_path、prompt_wav_path与prompt_text三个参数,参数组装逻辑见 inference.py。

四、续写模式详解:提示音频与提示文本如何衔接

4.1 需要准备什么

  • 提示音频(--prompt-wav):一段已有语音,作为"上文";
  • 提示文本(--prompt-text):提示音频的逐字转写,用于对齐语义;
  • 待合成文本(--text):需要续写出来的新内容。

⚠️ 注意:--prompt-wav与--prompt-text必须成对出现才会生效,只给音频不给文本时提示音频会被忽略(见 inference.py)。

4.2 续写模式命令示例

./venv/bin/python inference.py \ --text "现在开始续写这一段音频内容。" \ --prompt-wav /path/to/prompt.wav \ --prompt-text "提示音频对应的转写文本"

4.3 无缝衔接的原理

提示音频先经 AudioVAE 编码为声学特征,与提示文本一起构成生成上下文;模型从这段上下文的结尾处继续自回归生成新文本的声学 token。因此续写出的语音在音色、语速、语调上会自然延续提示音频,而不是"另起炉灶"。这正是 TTS 续写模式区别于普通克隆的关键:它继承的不只是音色,还有整段上下文。

五、终极克隆模式详解:参考人声 + 续写双管齐下

终极克隆模式把前两种能力叠加:

  • --ref-wav(参考人声):提供说话人的音色先验,决定"像谁";
  • --prompt-wav+--prompt-text(提示音频 + 提示文本):提供即时上下文,决定"从哪个状态接着说"。
./venv/bin/python inference.py \ --text "这是终极克隆模式的测试。" \ --ref-wav /path/to/speaker.wav \ --prompt-wav /path/to/prompt.wav \ --prompt-text "提示音频对应的转写文本"

类比:参考人声相当于"照镜子学腔调",提示音频相当于"接上同一句话"。两者结合后,模型既锁定目标音色,又保持上下文连贯,克隆效果最接近真人对话。

六、参考音频准备要点 📌

  1. 格式要求:参考人声与提示音频都应为16 kHz 单声道.wav(见 README.md);
  2. 转写要对得上:--prompt-text必须是提示音频真实内容的转写,否则语义错位会影响衔接;
  3. 参考人声要干净:单人、少噪音的录音克隆相似度更高;
  4. 项目内置套件会把 case01 的合成输出重采样为 16 kHz 作为参考人声 output/suite/ref_16k.wav,可直接参考其生成方式(inference.py)。

七、实测结果:克隆 / 续写 / 终极克隆全部通过 ✅

内置测试套件中,三个模式各有一组用例,在单卡 Ascend 910B、bf16 精度下全部通过,数据取自 output/suite/suite.json:

用例模式输出时长推理耗时峰值显存状态
case24_clone参考人声克隆3.36 s3.09 s6329 MB✅ PASS
case25_continue续写模式3.68 s3.35 s6329 MB✅ PASS
case26_ultimate终极克隆(参考+续写)2.08 s1.85 s6329 MB✅ PASS

可见加入参考音频后推理耗时与纯文本用例基本持平(2~6 s 量级),显存占用稳定在约 6.3 GB,单卡 64 GB HBM 绰绰有余。

八、常见问题

Q1:续写模式只给--prompt-wav可以吗?不建议。只有--prompt-wav而没有--prompt-text时,提示音频不会被使用,等价于普通文本合成。

Q2:终极克隆的三个参数可以随意组合吗?--ref-wav可单独使用(纯克隆);--prompt-wav必须搭配--prompt-text;三者同时给出即为终极克隆模式。

Q3:输出的采样率是多少?固定 48 kHz。AudioVAE V2 会将 16 kHz 输入超分到 48 kHz 输出,所以参考音频用 16 kHz 即可,输出仍为高清语音。

Q4:如何复现同一次结果?加--seed固定随机种子后,同输入可复现(见 README.md)。

九、文件资料索引

  • 推理脚本(含全部参数定义与 NPU 补丁):inference.py
  • 克隆 / 续写命令官方示例:README.md
  • 30 用例测试结果与指标:output/suite/suite.json
  • 套件用例定义(含 case24/25/26):inference.py
  • 依赖清单(国内镜像安装说明):requirements.txt

💡 想快速体验?先跑通./venv/bin/python inference.py --help查看参数,再用本文 4.2 节命令试一次续写,即可感受提示音频"无缝衔接"的效果。

  • 人工智能
  • 大模型
  • 语音
  • 音频
  • Ascend

【免费下载链接】VoxCPM2-NPU

项目地址:https://ai.gitcode.com/z_studio/VoxCPM2-NPU
点击查看免费下载

相关推荐

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

返回列表