RVC变声实操指南:用10分钟语音训练出你的AI音色
2026/9/13 11:05:13 网站建设 项目流程

RVC变声实操指南:用10分钟语音训练出你的AI音色

【免费下载链接】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架构的开源语音转换框架,10分钟目标音色的音频就能训出一个变声模型。读完本文,你能在网页界面完成训练、生成索引,并把一段普通录音转成目标音色。

一、准备工作:环境与数据清单

先对照下表检查机器和素材,全部满足后再进入安装。

组件要求为什么是这个值
Python3.8~3.10,64位依赖中的llvmlite固定在0.39.0,更新版本安装会冲突
PyTorch2.0+,CUDA与显卡驱动匹配训练和推理的核心,版本不匹配会在启动时报CUDA错误
ffmpeg最新版并加入PATH切片、归一化、格式转换全靠它,缺失会导致音频处理失败
显卡N卡显存≥4GB;A卡/I卡可用DML方案显存直接决定batch_size,4GB以下基本只能推理
训练数据10~50分钟低底噪单人音频太少音色不稳,太多只是拉长训练时间
磁盘空间≥10GB可用预训练底模加训练checkpoint要占几个GB

数据侧建议:文件路径用纯英文,单段音频控制在10秒左右,混音歌曲先用工具抽干人声再进训练集。

二、核心流程:从代码到变声的6步

第1步 克隆项目

  • 做什么:拿到源码,进入项目目录。
  • 怎么做
git clone https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI cd Retrieval-based-Voice-Conversion-WebUI
  • 怎么算成功:目录下能看到 infer-web.py、configs、assets 等条目。

第2步 安装依赖

  • 做什么:建独立虚拟环境,装PyTorch和项目依赖。N卡装 requirements.txt,A卡/I卡改装 requirements-dml.txt。
  • 怎么做
python -m venv venv pip install torch torchvision torchaudio pip install -r requirements.txt
  • 怎么算成功:安装过程无报错,且命令行里 ffmpeg -version 能输出版本号。

第3步 下载预训练模型

  • 做什么:拉取训练所需的hubert、rmvpe、底模和UVR5声伴分离模型。
  • 怎么做
python tools/download_models.py
  • 怎么算成功:assets/hubert、assets/pretrained、assets/pretrained_v2、assets/uvr5_weights 里出现对应的 .pt / .pth 文件。

第4步 启动WebUI

  • 做什么:打开网页操作界面。
  • 怎么做
python infer-web.py
  • 怎么算成功:浏览器自动打开 http://localhost:7865,页面有"模型推理""训练""ckpt处理""Onnx导出"四个页签。注意这个控制台窗口不要关,关了页面就连不上了。

第5步 训练音色模型

  • 做什么:在"训练"页签填写实验名(如 mi-test)、目标采样率选40k、勾选模型带音高指导(唱歌必选)、版本选v2,填入训练音频文件夹路径。
  • 怎么做:直接点"一键训练",它按固定顺序执行——切片归一化→提取音高和特征→训练模型→训练索引。
  • 怎么算成功:输出信息出现"全流程结束";logs/mi-test 下有 G、D 开头的checkpoint文件,且生成 added_ 开头的 .index 索引文件。

第6步 推理变声

  • 做什么:把待转换的音频丢给新训的音色。
  • 怎么做:切到"模型推理"页签,先点"刷新音色列表和索引路径",在下拉框选中 mi-test,填入输入音频路径,音高提取算法选rmvpe,点"转换"。
  • 怎么算成功:输出区域出现可播放的音频,音色接近目标声线,且听不出原说话人的痕迹。

三、参数怎么调

参数推荐值作用什么时候需要动
total_epoch 总训练轮数20(默认)训练轮数,越多越贴合训练集数据干净且时长足可加到100~200;底噪大保持20~30
batch_size界面自动按显存/2预填每张卡的训练批次,决定显存占用显存爆了就减半,降到1还爆只能换卡
save_every_epoch5每N轮存一次checkpoint想多留中间模型试听时调小
目标采样率40k输出音质上限追求更高音质选48k,代价是更吃显存
版本v2底模代次,v2特征维度更高新手直接选v2即可
index_rate 检索特征占比(推理)0.75混合训练集特征的强度,压制源音色泄露输出还残留原音色就调高,音质变糙就调低
protect 保护力度(推理)0.33保护清辅音和呼吸声,防电音撕裂听见撕裂声调低,音色发闷则调高
CPU进程数界面按核数预填切片和特征提取的并行度系统内存报error时往下拉低

其余滑块(变调、rms_mix_rate、resample_sr0等)先保持默认,确定基础流程跑通后再逐项对比试听。

四、出问题了

现象原因解法
CUDA out of memory显存不够batch_size减半重训;4GB显存卡设1~2
提示找不到llvmlite.dll缺Windows C++运行库安装Visual C++ Redistributable后重启WebUI
Expecting value: line 1 column 1系统代理拦截了本地请求关闭局域网/全局代理,含服务器端代理也要unset
一键训练结束却没有索引文件索引添加环节被大特征卡住手动再点一次"训练特征索引"按钮
推理页选不到新训音色音色列表未刷新点"刷新音色列表和索引路径";仍没有则回查logs下的train.log

五、一个完整案例

场景:把清唱录音换成某歌手音色做翻唱。

  • 数据:18分钟从成品歌曲里用UVR5分离出的干人声,切成约100段
  • 硬件:RTX 3060 12GB
  • 配置:40k采样率、v2版本、带音高指导,total_epoch=20,batch_size=6
  • 耗时:切片加特征提取约15分钟,训练约40分钟,建索引约5分钟
  • 效果:推理端 index_rate=0.75、protect=0.33、变调0,音色贴合度高,无明显源音色泄露;人声再与伴奏重新混音即可成片

如果只想做说话场景的变声(不做唱歌),训练时可以不勾音高指导,模型会更轻,推理也更快。

六、延伸资料

  • 中文常见问题:docs/cn/faq.md
  • 英文文档目录:docs/en/
  • 核心推理库:infer/lib/
  • 训练脚本(预处理/特征提取/训练入口):infer/modules/train/
  • WebUI主程序:infer-web.py
  • 预训练模型下载脚本:tools/download_models.py
  • 更新日志:docs/cn/Changelog_CN.md

收尾建议

  1. 首跑保持全部默认参数,只改实验名和训练文件夹路径,跑通后每次只动一个变量再对比试听。
  2. 混音歌曲先过UVR5抽干人声再训练,带伴奏的训练集会直接拉低音质。
  3. 把调出满意效果的那组 index_rate 和 protect 值记下来,复用它们比每次盲调更快。
  4. 训练有异常先看 logs/实验名/train.log,绝大多数报错都能在里面找到第一现场。
  5. 要分享的模型是 weights 文件夹里60MB以上的小模型,不是 logs 下几百MB的大checkpoint。

流程一旦跑通,剩下的只是数据积累和反复试听的功夫。

【免费下载链接】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),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询