☰
Retrieval-based-Voice-Conversion-WebUI 快速上手:10 分钟语音数据做出自己的语音转换模型
2026/10/27 9:53:54 网站建设 项目流程

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)是一个开源的语音音色转换框架:你只需准备 10 分钟左右的干净人声,就能训练出一个属于自己或某个角色的语音转换模型,用来做离线音频转换,也可以接麦克风做实时变声。本文按 Windows 和 Ubuntu 的环境,带你走完装环境、启动界面、第一次训练、推理调参到常见报错处理的完整流程。

🧩 装环境:三步跑通

装 Python 3.12 并建虚拟环境

先确认装好了 Python 3.12 x64(Ubuntu 推荐 24.04 x86_64),然后进入仓库根目录创建虚拟环境:

py -3.12 -m venv .venv .venv\Scripts\activate

Linux 下对应命令是python3.12 -m venv .venv,激活用source .venv/bin/activate。

按硬件选依赖文件

依赖按硬件分成三个文件,各装一次:

硬件安装方式
CPU / AMD / Intel 显卡pip install -r requirments_cpu_py312.txt
NVIDIA(RTX 50 系以前)先装 CUDA 11.8 版 torch,再装requirments_cu118_py312.txt
NVIDIA RTX 50 系先装 CUDA 12.8 版 torch,再装requirments_cu128_py312.txt

注意:NVIDIA 用户一定要先单独装好对应 CUDA 版本的 torch,再执行 requirments 文件,否则 pip 会装上 CPU 版 torch,训练时才发现报错就来不及了。

把底模下到 assets 目录

WebUI 会自动创建assets/和logs/目录,底模需要提前下载到位:

文件路径用途
hubert_base/(含 3 个文件)assets/hubert_base/语音特征提取,推理也必需
rmvpe.ptassets/rmvpe/音高提取,必需
pretrained/ 与 pretrained_v2/assets/底模,仅训练需要
uvr5_weights/assets/uvr5_weights/人声伴奏分离,用到 UVR5 才需要

装好huggingface_hub后,从模型仓库lj1995/VoiceConversionWebUI拉取必需的两部分:

hf download lj1995/VoiceConversionWebUI --revision main --include "hubert_base/*" --local-dir assets hf download lj1995/VoiceConversionWebUI rmvpe.pt --revision main --local-dir assets/rmvpe

训练时再用同样方式补下pretrained/*和pretrained_v2/*。

▶️ 启动界面:一条命令的事

启动命令与默认端口

在仓库根目录执行:

python webui.py

浏览器会自动打开,没弹出来就手动访问http://127.0.0.1:7865(默认端口 7865)。Windows 用户也可以直接双击根目录的go-webui.bat,它会顺带让你选择要执行的操作。无桌面的服务器上加--noautoopen启动即可。

提示:页面报 "Connection Error" 多数时候是你把黑色的启动控制台关掉了,重新打开并保持控制台开着就好。

各选项卡里有什么

主界面分四个选项卡:数据集处理负责降噪、切片和特征提取;模型训练负责一键训练与索引训练;音色转换推理负责把音频换成目标音色;ckpt 处理负责模型融合和从小模型提取。实时变声是另一个独立程序:双击go-realtime_gui.bat启动,端到端延迟 170ms,配合 ASIO 声卡可压到 90ms。

🎛️ 第一次训练:只动 4 个参数

准备 10 分钟人声素材

把训练用的音频放进同一个文件夹,满足这几点:

  • 时长:推荐 10~50 分钟;音质高、音色统一时 5~10 分钟也够用
  • 内容:只有目标说话人一个声源,底噪低、无背景音乐
  • 文件名与路径:不含空格、括号和中文,避免 ffmpeg 报错

训练必改的 4 个参数

打开「模型训练」选项卡,其余全部默认,只填下面这几项:

参数建议值说明
实验名有意义的英文名训练产物都存在logs/实验名/下
是否考虑音高唱歌场景选「是」不考虑音高模型更轻,但没法用于演唱
batch_size按显存定,4~16报 out of memory 就减半;4G 显存建议 1~4
total_epoch底噪大 20~30;音质高可到 200低音质数据调太高没有收益

然后点「一键训练」。它会自动完成音频切片、RMVPE 音高提取、HuBERT 特征提取、模型训练整条流水线。

别漏掉:训练完索引

一键训练正常结束时会顺带生成added_xxx.index索引文件;如果日志显示缺了索引,就再单独点一次「训练索引」。这个索引就是 RVC「检索式」的核心——推理时用 faiss 检索出训练集里最相似的特征替换输入源特征,从机制上杜绝音色泄漏。更多训练细节可以看 docs/en/training_tips_en.md。

推理调参:pitch 和 index_rate 怎么设

常用推理参数速查

参数范围说明
pitch-24 ~ 24半音为单位,12 是一个八度;男声转女声往高调,反之往低调
index_rate0 ~ 1越大越压制音色泄漏,但音质会向训练集靠拢;训练集音质一般就 0.5 左右
f0 方法rmvpe速度快、资源占用小,且解决了哑音问题

判断有没有音色泄漏

音色泄漏的表现是:转换后的声音还残留你自己说话的音色。先听出来再说——把 index_rate 从 0 提到 0.5~1.0 再推一遍,如果明显干净了就是泄漏问题。反过来,如果你的训练集音质高、时长足,模型本身学得很牢,index_rate 开 0 也不会泄漏,此时不必纠结这个参数。

常见报错速查表

训练阶段

报错原因处理
ffmpeg error / utf8 error路径含空格、括号或中文目录和文件名全部改纯英文
Cuda out of memory显存不足减小 batch_size;4G 以下显存基本放弃训练
文件页面 / 内存 error开的进程太多、内存溢出调低「提取音高和处理数据使用的 CPU 进程数」
训练完没有索引大训练集卡住了索引步骤再点一次「训练索引」

启动与推理阶段

报错原因处理
Expecting value: line 1 column 1开了系统全局代理关闭代理,服务端代理也要关
Connection Error关了启动控制台重新打开并保持控制台运行
llvmlite.dll 加载失败(Windows)缺 VC++ 运行库安装 Microsoft VC++ 2015-2022 运行库后重启

更完整的问答整理在 docs/cn/faq.md,照着 Q&A 逐条对号入座很快。

训练完的模型:存放与分享

模型文件放哪里

日常使用的模型.pth放进assets/weights/,对应的.index放进assets/indices/,再到推理页点「刷新音色」就能选到。

模型怎么分享

分享时用weights/下 60MB+ 的 pth 和对应 index 文件打包成 zip 发出即可。

注意:logs/实验名/下的 pth 有几百 MB,它存的是实验状态,用于断点续训而不是分享。如果你手里只有 logs 里的大 pth,先用「ckpt 处理」选项卡做 ckpt 小模型提取,再分享提取出的文件。

接下来做什么

  1. 按「装环境」三步装好依赖和底模,执行python webui.py确认界面能打开;
  2. 准备 10 分钟单说话人低底噪音频,用默认参数跑一次「一键训练」,生成模型和索引;
  3. 在推理页加载自己的模型,先按 index_rate 0 和 1 各推一遍同一句音频,对比后选定常用参数。

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

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

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

立即咨询