news 2026/9/3 19:17:31

如何3步上手Retrieval-based-Voice-Conversion-WebUI:用不超过10分钟的录音训练出可用变声模型

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何3步上手Retrieval-based-Voice-Conversion-WebUI:用不超过10分钟的录音训练出可用变声模型

如何3步上手Retrieval-based-Voice-Conversion-WebUI:用不超过10分钟的录音训练出可用变声模型

【免费下载链接】Retrieval-based-Voice-Conversion-WebUIEasily train a good VC model with voice data <= 10 mins!项目地址: https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI

Retrieval-based-Voice-Conversion-WebUI(下称 RVC)是一个基于 VITS 的语音转换(变声)工具,靠"top1 检索替换源特征"来减少音色泄漏,官方推荐用至少 10 分钟低底噪语音即可训出可用模型。跟着本文操作,你可以完成三件事:准备一份最小训练集、在网页界面里跑通"训练 + 推理"全流程、并用推理界面听到第一段换音色后的音频。

先看清楚你会遇到的两个典型现象

第一次接触变声模型的人,通常卡在两个地方。

一是"训练完听不出来像谁":推理结果既不像目标人物,也丢了你自己录的声音特征,音色变得含糊。这多半是训练数据太少或太脏,模型没有抓住目标音色的稳定特征。二是"换了音色却漏了源音色":结果里残留了输入音频说话人的味道,社区把这种现象叫"音色泄漏"。RVC 的检索机制就是冲着第二个问题来的,第一个问题则主要靠数据质量解决——所以准备数据是整个流程里最值得花时间的一步。

最小数据准备:时长、底噪与切分

官方文档给出的训练集建议是 10 分钟到 50 分钟;如果音质高、底噪低且音色有个人特色,5 到 10 分钟也能出效果;1 到 2 分钟的成功案例存在,但要求音色特征非常鲜明,不具备普适参考价值,1 分钟以下不建议尝试(见 docs/cn/faq.md)。

数据准备上注意三点:

  • 低底噪优先:录音环境安静、无背景音乐和电流声。底噪大的数据训出来音质上限很低。
  • 音色统一:同一个声音来源,别把直播混响、清唱、朗读混在一起。
  • 单条音频别太长:过长的音频文件在预处理阶段容易吃掉内存,切成几段存放更稳妥。

如果你手里只有完整歌曲,可以先用 WebUI 里的 UVR5 选项卡分离出纯人声,再进入训练流程。

环境准备与首次启动

需要 Python 3.8 以上。安装依赖按你的显卡选一份清单:N 卡用 requirements.txt,Windows 上的 A 卡/I 卡用 requirements-dml.txt,Linux 上 ROCm 用 requirements-amd.txt,IPEX 用 requirements-ipex.txt。N 卡的标准流程大致是:

pip install torch torchvision torchaudio pip install -r requirements.txt

依赖之外还有几样必备物料,缺失时启动会直接失败:

  • 预训练底模assets/hubert/assets/pretrained/(想训 v2 模型还要assets/pretrained_v2/)和assets/uvr5_weights/。仓库提供下载脚本 tools/download_models.py,也可以直接跑tools/dlmodels.sh(Windows 用tools/dlmodels.bat)。
  • ffmpeg:Windows 用户把 ffmpeg.exe、ffprobe.exe 放到项目根目录即可。
  • rmvpe.pt:使用 RMVPE 音高提取算法时要放到根目录。

全部就绪后启动网页界面:

python infer-web.py

启动脚本会自动检测设备并初始化配置,逻辑在 configs/config.py 里:显存小于 4G 时自动调小预处理参数,老架构显卡(1060、1080、P40 等)会自动切到 fp32,省得你手动改配置。浏览器打开本地 7865 端口就是操作界面。

从训练到听到结果:走通一遍最小流程

在网页界面里,一次完整任务分四步。

第一步,切分与预处理。把训练集音频放进实验目录,点"一键训练"会自动完成:切分音频、提取音高、提取特征、训练模型、训练索引。切分参数(如每段时长、静音阈值)在 configs/v1/48k.json 这类配置里,默认值对普通录音可用。

第二步,训练模型。训练脚本的入口在 infer/modules/train/train.py。关键参数是总轮数 total_epoch:如果训练集音质差、底噪大,20 到 30 轮就够;音质高、底噪低、时长充足时,官方说 200 轮也没问题。

第三步,训练索引。模型和索引是两样东西:模型负责"像不像目标音色",索引负责"推理时从训练集里借特征防泄漏"。一键流程末尾会自动生成added_开头的索引文件;如果卡住没生成,单独点一次"训练索引"即可。

第四步,推理听结果。选模型 pth 和索引文件,输入一段音频,调整音高和 index rate,点推理。常见音高提取算法各有所长:

算法适用场景
RMVPE官方推荐,效果好、资源占用低,需额外下载 rmvpe.pt
PM输入是歌声时提速明显
Harvest低音效果好,但速度慢
CREPE效果好,但 GPU 占用高

实时变声则用 tools/rvc_for_realtime.py(对应 go-realtime-gui.bat):官方数据是端到端 170ms 延迟,配合 ASIO 设备可到 90ms,具体取决于硬件驱动。

它为什么好用:top1检索与index rate

RVC 的命名就来自核心机制——检索。用白话说:推理时系统会去你的训练集特征库里找最接近当前输入的那条特征,把它"借"来替换源特征。类比一下,就像配音演员换嗓子前先把原唱的录音多听几遍,照着原声的音色条件去配,而不是凭自己习惯的音色去"演"原唱。这样就能从根源上压住源音色往结果里漏。

控制这个机制力度的是index rate(检索特征占比)

  • 调到 1:理论上完全用训练集特征,不泄漏源音色,但音质会偏向训练集——训练集比输入音质量差时,音质会被拉低。
  • 调到 0:完全不用检索,音质跟着输入走,但失去了保护训练集音色的能力。
  • 中间值:在"像目标"和"好听"之间取平衡,具体效果以试听为准。

顺带一提:如果训练集本身音质高、时长长,把 total_epoch 调高之后,模型自身就不太会往底模或输入源靠,此时 index rate 和索引文件的重要性都会下降,分享模型时甚至可以不附索引。

最小可运行验证:命令行级别

不想用网页界面时,可以走 CLI。先跑通一次 WebUI 流程,控制台会打印出预处理和训练所用的完整命令行,直接照抄复现即可。推理侧官方给了一个参考脚本 myinfer.py,参数含义见 docs/cn/faq.md 的 Q7 条目;仓库里 tools/infer_cli.py 也提供了命令行推理的入口。验证成功的标志很简单:输入一段自己 1 分钟的录音,几秒后输出一条音色明显改变、但咬字和节奏与输入一致的音频。

常见坑位与对策

现象:ffmpeg error 或 utf8 error。原因:大概率不是 ffmpeg 本身的问题,而是音频路径带空格、括号等符号,或训练集路径含中文导致写 filelist.txt 时报 utf8 错误。处理:把音频挪到纯英文、无空格的路径下重试。

现象:训练时报 Cuda out of memory。原因:显存不够,常见于 4G 以下显存的显卡(1060 3G 这类基本放弃,4G 还能救)。处理:训练阶段把 batch size 往下调;推理阶段调小 configs/config.py 末尾的 x_pad、x_query、x_center、x_max 四个参数。启动时脚本也会自动根据显存大小做一轮降级。

现象:训练结束没有added_开头的索引文件。原因:训练集太大,添加索引那一步卡住;另外若提示 "Training is done",说明模型已训好,紧邻的报错是假报错。处理:单独再点一次"训练索引",仓库已用批量 add 索引的方式缓解内存压力。

下一步可以做什么

流程跑通之后,比较自然的扩展方向是模型融合:在 ckpt 处理选项卡里用 ckpt-merge 把两个已训模型按比例合并,可以在不重新训练的前提下微调音色。合并比例的取舍和更多参数细节,建议对照 docs/cn/faq.md 与官方文档按自己的数据实际试听确定。

【免费下载链接】Retrieval-based-Voice-Conversion-WebUIEasily train a good VC model with voice data <= 10 mins!项目地址: https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/1 8:57:22

Rufus 完整指南:5分钟做出专业级 Windows 启动盘

Rufus 完整指南&#xff1a;5分钟做出专业级 Windows 启动盘 【免费下载链接】rufus The Reliable USB Formatting Utility 项目地址: https://gitcode.com/GitHub_Trending/ru/rufus Rufus 是一款开源免费的 U 盘格式化工具&#xff0c;三步就能把普通 U 盘变成 Window…

作者头像 李华
网站建设 2026/9/1 8:56:42

动态考勤表构建指南:告别手动统计,实现自动化考勤管理

如果你每个月都要手动制作考勤表&#xff0c;统计迟到、早退、请假&#xff0c;还要处理调休、加班&#xff0c;最后核对工资……那么&#xff0c;你很可能正在经历一场重复且极易出错的“数据噩梦”。传统的静态考勤表&#xff0c;一旦人员变动、考勤规则调整&#xff0c;就意…

作者头像 李华
网站建设 2026/9/1 8:54:26

拒绝花架子!一站式学术 AI,从选题一直用到答辩

写论文最闹心的不是写不出文字&#xff0c;而是好不容易写完&#xff0c;却遭遇查重飘红、AIGC 标记超标&#xff0c;文稿漏洞百出&#xff0c;熬夜反复改稿。不少 AI 工具出稿看着很快&#xff0c;却容易编造数据、乱用理论&#xff0c;暗藏不少学术隐患&#xff0c;不敢直接交…

作者头像 李华
网站建设 2026/9/1 8:53:10

ATS模式下列车运行模拟与仿真:从建模到通过率统计的完整参考

简介&#xff1a;这份资源面向铁路信号、轨道交通方向的学生、工程师及ATS系统研究者&#xff0c;围绕ATS模式下列车运行的模拟与仿真&#xff0c;覆盖CATS、LATS、沙盘控制、停车场计算机联锁等核心模块&#xff0c;可用于理解自动列车监控系统的调度逻辑与仿真实现。压缩包共…

作者头像 李华
网站建设 2026/9/3 11:44:16

UGUI随文本区域自动调整大小的文本控件

基于Layout Group和Content Size Fitter实现BG挂载&#xff1a;让文本框自己变大。如果背景是个彩色图片&#xff0c;再加个Image弄个干净的背景这里自动调整大小是固定Pivot位置不变的。如果想让文本框向下扩展&#xff0c;就把Pivot放到上方。基于text.preferred宽高代码设置…

作者头像 李华
网站建设 2026/9/1 8:51:02

AI节点大样写实化:提示词工程与构造表达实战指南

上周整理一个幕墙节点汇报&#xff0c;CAD 线稿已经画到不少细节&#xff0c;可业主那边看得很吃力。几张剖面线、一堆引注&#xff0c;非专业人士根本看不出这个节点里到底有几层材料、钢构件怎么连接、保温和防水怎么收口。我临时用 Evai 建筑大师试了试 AI 节点大样写实化&a…

作者头像 李华