RVC 变声器完整指南:4G 显存克隆专属声音模型
【免费下载链接】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 架构的开源变声器与语音克隆工具:喂给它一段目标人声录音,它训练出一个音色模型,之后任何音频输入都会以那个音色重新输出。本文先给出硬件门槛和准备清单,再依次走查数据、环境、训练参数,以及训完之后最容易被漏掉的两步。
🎯 门槛清单:跑 RVC 语音克隆模型要备齐什么
先回答最关心的问题:我的显卡够不够用?
结论:4G 显存是训练和推理的及格线。程序启动时会自动读显存大小并调整内部参数,4G 以下会改用更保守的分块配置;如果 batch size(每轮训练喂给显卡的音频量)缩到 1 还报 OOM(OOM 即 out of memory,显存装不下了),那就是显卡确实不够,只能换卡或租云 GPU。官方 FAQ 对 3G、2G 老卡的建议是直接放弃。
还有个隐藏成本:内存。音频切分和音高提取靠 CPU 多进程干活,训练时如果出现文件/内存报错,把页面上的"CPU 进程数"调低,或手动把训练音频切短一些。
动手前确认这四项:
| 项目 | 要求 |
|---|---|
| 显卡 | 显存 ≥4G |
| 录音 | 10~50 分钟目标人声,录音干净时 5~10 分钟可用 |
| 底模文件 | 官方预训练底模,按 README 放到 assets/ 下 |
| 音频工具 | ffmpeg,切分和重采样都靠它 |
底模是官方预训练好的通用语音模型,你的训练是在它基础上"微调",不是从零开始。缺了 assets/ 下的底模,训练和推理都起不来。
10 分钟目标人声录音怎么备
录音决定效果上限,而且是唯一没法事后返工的一步。
| 要点 | 做法 |
|---|---|
| 环境 | 尽量安静,压低背景噪音。底噪会直接进模型,训练轮次再高也压不下去 |
| 表现力 | 语速、语调、情绪带点变化,单一腔调覆盖不了全部发音状态 |
| 片段长度 | 几十秒到一两分钟一段,过长对切分和内存都是负担 |
| 格式 | 统一转 WAV;采样率不用纠结,预处理阶段会自动重采样 |
录音干净、底噪低、音色有辨识度的话,5~10 分钟也能训出可用模型。
RVC 变声器环境安装与网页训练页启动
所有命令都在项目根目录执行:
git clone https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI cd Retrieval-based-Voice-Conversion-WebUI python -m venv .venv激活虚拟环境后,按显卡装依赖:
| 显卡 | 依赖清单 |
|---|---|
| NVIDIA(非 RTX 50 系) | requirments_cu118_py312.txt |
| NVIDIA(RTX 50 系) | requirments_cu128_py312.txt(两阶段安装见 README) |
| AMD Windows(DirectML)/ CPU | requirments_cpu_py312.txt |
pip install -r requirments_cu118_py312.txt还有两项准备:安装 ffmpeg(Ubuntusudo apt install ffmpeg,macOSbrew install ffmpeg);下载底模文件(底模、HuBERT 特征模型、rmvpe 音高模型等),按 README 列出的目录结构放进 assets/ 下。
启动:
python webui.py浏览器会自动打开 7865 端口的训练网页。Windows 用户也可以直接双击 go-webui.bat 走整合包路线。
⚙️ 4G 显存显卡的训练参数怎么定
训练页里值得动的数字只有三个,其余保持默认:
| 参数 | 怎么设 | 原因 |
|---|---|---|
| 总轮数(epoch) | 有底噪:20~30 轮;干净且时长足:可到 200 轮 | 底噪大的数据训太多轮,模型会把噪音也学进去,轮次再高也拉不动音质 |
| 保存间隔 | 每 10 轮存一个点 | 逐个试听,挑最早达标的,避免过拟合 |
| 批次大小(batch size) | 用页面默认,OOM 再往下调 | 默认按显存自动估算(约为显存 GB 数的一半),是稳定起步值 |
另两个影响明显的选项顺手设好:
- 采样率选 48k,对应 v2 底模,是官方配置里质量上限最高的一档(见 configs/v2/48k.json)
- 音高提取算法选 rmvpe,效果最好且只占少量显存;harvest 低音更好但极慢;pm 适合歌声输入时提速
确认训练集文件夹路径、填一个实验名——模型、索引、日志都挂在这个名字下面——点一键训练。流程会依次执行切分、音高提取、特征提取、训练,全程日志写在 logs/实验名/ 下,训练脚本在 train/ 目录。
🔍 训练结束后别漏掉 faiss 索引
faiss 索引是把训练集音色特征做成的一张"检索表":推理时从中查最接近的音色样本混进来,让输出音色不偏离训练集。跳过它,音质可能不错,但相似度会打折。
点"训练索引",产物是 logs/实验名/ 下 added_ 开头的 .index 文件。一键训练结束却看不到索引,多半是训练集太大卡住了索引添加步骤,重按一次即可(FAQ Q2)。
推理时 index rate 与 protect 怎么调
切到"模型推理"页,点刷新音色,选中你的模型和索引,上传一段音频转换。重点旋钮是 index rate,范围 0 到 1,默认 0.75:
- 接近 1:音色完全锚定训练集,不会漏出输入源或底模的音色,但音质上限被训练集锁死
- 拉到 0:不做检索保护,音质可能更好,"音色泄露"问题会回来
- 训练集本身优质且时长足:这个值其实不重要,模型自己不太引用外部音色
两个小项:
- 变调按整数半音算(半音是音高的最小级差),+12 升八度、-12 降八度
- protect滑条默认 0.33,防清辅音和呼吸声撕裂,输出有电音就往高调
🎧 批量变声与实时推理
单条跑通后有两个进阶方向:
- 批量:不用开网页,走命令行推理,目录里的 wav 可以逐个转换,参数示例见 docs/cn/faq.md 的 FAQ Q7
- 实时:双击 go-realtime_gui.bat 启动实时界面。官方端到端延迟 170ms,换 ASIO 输入输出可压到 90ms,但后者非常依赖声卡驱动支持,普通 USB 声卡别期待这个数字
最后在推理页挑一个保存点模型,把录音里没用进训练的一段喂进去,输出的音色与原主一致的话,整条流程就通了。
【免费下载链接】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),仅供参考