
RVC 快速上手指南Retrieval-based-Voice-Conversion-WebUI 环境搭建、预训练模型准备与多平台启动详解【免费下载链接】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 分钟的高质量干声快速训练好用的音色转换VC模型」这一目标下最关键的三个环节环境与依赖安装、预训练模型/特征提取器下载、以及在不同操作系统与显卡生态NVIDIA CUDA、AMD ROCm、AMD/Intel DML、Intel IPEX、macOS MPS下正确启动 WebUI。读完本文你将掌握从零开始在本机跑通 RVC 训练与推理所需的完整命令、文件清单与硬件注意事项并能结合仓库源码理解每一步背后的工程细节。一、RVC 是什么基于检索的 VITS 变体声音转换框架RVCRetrieval-based-Voice-Conversion是一个「简单易用、基于 VITS 的变声 / 音色修改框架」。它与普通 VITS 系变声方案最核心的区别在于采用了Top1 检索替换机制用训练集中最相似的特征Top1去替换输入源的对应特征从而消除训练数据源中的音色泄漏timbre leakage。法文版文档将项目特性概括为以下六点本文逐条对应仓库源码逐一印证特性原文要点译仓库佐证特征检索替换用 top1 检索训练集特征替换输入特征消除音色泄漏Notebook Retrieval_based_Voice_Conversion_WebUI.ipynb 及索引工具 tools/infer/train-index.py、tools/infer/train-index-v2.py、tools/infer/infer-pm-index256.py 均围绕特征索引检索展开低配可训即使在相对较弱的显卡上也能快速训练configs/config.py 依据显卡型号与显存自动切换半精度/全精度及切分参数少数据可用最少只需约 10 分钟低底噪语音即可获得不错效果项目简介即主打 voice data 10 mins模型融合可通过 ckpt-merge 标签页融合模型改变音色infer-web.py 从 infer/lib/train/process_ckpt.py 引入merge并以ckpt_merge作为 API 暴露WebUI简单易用的网页界面infer-web.py 基于 Gradio 实现人声分离可调用 UVR5 模型快速分离人声与伴奏内置 infer/modules/uvr5 模块配合uvr5_weights权重音高算法采用 InterSpeech2023 收录的 RMVPE 消除「哑声」效果好于 crepe_full 且更省资源仓库内置 infer/lib/rmvpe.py 完整实现及 infer/lib/infer_pack/modules/F0Predictor 下的 Dio、Harvest、PM、RMVPE 多套音高提取器硬件加速支持 AMD / Intel 显卡加速requirements-dml.txt、requirements-ipex.txt、requirements-amd.txt 三套依赖及对应启动开关另外需如实说明两点背景基础模型使用近 50 小时的 VCTK 高质量开源数据训练不存在版权担忧同时法文文档预告了 RVCv3 基础模型——更多参数、更多数据、推理速度几乎不变、且训练所需数据更少。二、环境配置Python 版本与 PyTorch 安装法文文档要求在 Python 3.8 及以上环境中执行下述命令。这一约束与仓库脚本保持一致——例如 run.sh 会在缺失 Python 3.8 时尝试通过brew install python3.8macOS或apt-get install python3.8Ubuntu/Debian自动安装。2.1 先安装 PyTorch跨平台基准命令# 安装 PyTorch 及其必要依赖若已安装可跳过 pip install torch torchvision torchaudio2.2 按显卡架构选择专用版本文档给出了三条针对不同硬件的路径务必按自己的显卡选择其一# 【Windows 用户 NVIDIA Ampere 架构RTX30xx】 # 基于社区 issue #21 的经验为 PyTorch 指定对应 CUDA 版本 pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117 # 【Linux AMD 显卡ROCm】 pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm5.4.2之所以区分 Ampere 与旧架构可结合 configs/config.py 的设备探测逻辑理解启动时若检测到 GTX16 系、P40/P10、1060/1070/1080 等 GPU会强制切换为 fp32 全精度并改写fp16_run配置其余较新的 NVIDIA 显卡默认走 fp16 半精度以降低显存占用。2.3 通过 Poetry 安装项目依赖可选# 安装 Poetry 依赖管理工具若已安装可跳过 curl -sSL https://install.python-poetry.org | python3 - # 用 poetry 安装本项目依赖 poetry install仓库根目录提供 pyproject.toml 与锁文件 poetry.lock说明 Poetry 是被官方支持的依赖安装方式之一。2.4 通过 pip 按硬件平台安装依赖推荐方式文档明确按显卡生态区分了四套 requirements 文件这也是最直接的安装路径# NVIDIA 显卡 pip install -r requirements.txt # AMD / Intel 显卡Windows DirectML即 DML 环境 pip install -r requirements-dml.txt # Intel 显卡IPEX 加速 pip install -r requirements-ipex.txt # AMD 显卡Linux ROCm pip install -r requirements-amd.txt以 requirements.txt 为例其核心计算栈包括numpy1.23.5、numba0.56.4、librosa0.9.1、fairseq0.12.2HuBERT 特征提取依赖、faiss-cpu1.7.3Top1 特征索引检索实现、gradio3.34.0WebUI 前端、praat-parselmouth与pyworldF0 提取、torchcrepe/torchfcpeCREST/FCPE 音高预测、onnxruntime-gpu支撑 UVR5 与rmvpe.onnx推理等。2.5 macOS 用户的一键安装脚本sh ./run.shrun.sh 的执行逻辑值得拆解以明确其适用前提在 macOS 下导出PYTORCH_ENABLE_MPS_FALLBACK1与PYTORCH_MPS_HIGH_WATERMARK_RATIO0.0两个环境变量使 MPS 后端遇到不支持算子时可回落到 CPU并放宽显存水位限制首次运行会在项目内创建.venv虚拟环境并按 requirements.txt 逐包安装依赖随后调用tools/dlmodels.sh下载全部预训练模型见下一节最后以python3.8 infer-web.py --pycmd python3.8启动 WebUI。因此run.sh不仅适用于 macOS同样适用于 Linux 的首次初始化。三、预训练模型与其他模型资产的准备RVC 的训练与推理均依赖额外下载的基础模型资产这些文件不会随 git clone 自动携带。仓库assets/目录下仅保留了Synthesizer_inputs.pth、hubert/hubert_inputs.pth、rmvpe/rmvpe_inputs.pth等少量用于单元测试/冒烟验证的样例输入见 assets。3.1 一键下载全部模型推荐python tools/download_models.py这是文档推荐的官方方式。查看 tools/download_models.py 源码可精确得知它实际抓取的文件统一来自https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/hubert_base.pt→ 写入assets/hubert/作为 HuBERT 特征提取器权重rmvpe.pt→ 写入assets/rmvpe/作为 RMVPE 音高预测权重UVR5 人声分离去混响模型vocals.onnx→ 写入assets/uvr5_weights/onnx_dereverb_By_FoxJoy/v1 预训练模型 12 个D32k/D40k/D48k.pth判别器与G32k/G40k/G48k.pth生成器以及对应的 6 个f0*前缀带 F0 输入版本 → 写入assets/pretrained/同样 12 个 v2 预训练模型 → 写入assets/pretrained_v2/UVR5 的 8 个分离权重HP2/HP3/HP5系列人声分离模型与VR-DeEcho*系列去回声/去混响模型 → 写入assets/uvr5_weights/。3.2 手动下载的资产清单与落盘位置若无法访问一键脚本或需增量补齐文档要求最终在仓库内形成以下结构./assets/hubert/hubert_base.pt # hubert_base 特征提取权重 ./assets/pretrained # v1 预训练模型目录G*/D*/f0G*/f0D*覆盖 32k/40k/48k ./assets/uvr5_weights # UVR5 人声分离权重目录 ./assets/pretrained_v2 # v2 预训练模型目录测试 v2 模型时必须其中hubert_base.pt供 infer/modules/train/extract_feature_print.py 等特征提取流程加载pretrained_v2对应 v2 架构配置。补充说明v1 与 v2 的训练配置模板分别存放于 configs/v1 与 configs/v2而 configs/config.py 会在启动时把模板复制到configs/inuse/下供训练直接读取。3.3 可选ffmpeg / ffprobeWindows 用户若未自行安装 ffmpeg 与 ffprobe需额外下载这两个可执行文件并置于仓库根目录Ubuntu/Debian 用apt install ffmpegmacOS 用brew install ffmpeg前提是已安装 Homebrew# ./ffmpeg # ./ffprobeRVC 的音频读取、切分与格式转换依赖 ffmpeg这可以从 requirements.txt 中的ffmpeg-python、ffmpy、pydub、av等音频相关依赖得到印证。3.4 可选RMVPE 音高模型若希望启用 RMVPE 音高算法需下载rmvpe.pt并放到 RVC 仓库根目录而使用 AMD/Intel 显卡的 DML 环境用户需改下 ONNX 格式的rmvpe.onnx该格式由 ONNX Runtime 的 DirectML 后端执行。仓库在 infer/modules/train/extract_f0_rmvpe.py另有 DML 变体 infer/modules/train/extract/f0/extract_f0_rmvpe_dml.py实现了训练侧 RMVPE 的 F0 提取infer/lib/rmvpe.py 则提供完整前向推理实现。四、启动 WebUIIntel IPEX、Windows/macOS 与一键脚本4.1 Intel ARC 显卡IPEX 加速启动流程Intel ARC 用户需先初始化 oneAPI 环境再启动 WebUIsource /opt/intel/oneapi/setvars.sh python infer-web.py仓库侧为 Intel 提供了 requirements-ipex.txt 依赖与 infer/modules/ipex 加速适配模块configs/config.py 会尝试导入intel_extension_for_pytorch若检测到torch.xpu.is_available()则自动调用ipex_init()完成初始化。4.2 Windows 用户解压整合包后双击批处理启动Windows 用户可下载并解压RVC-beta.7z整合包然后运行根目录下的 go-web.batruntime\python.exe infer-web.py --pycmd runtime\python.exe --port 7897其含义是使用整合包自带的runtime\python.exe作为解释器启动 infer-web.py并将监听端口指定为7897注意源码默认端口是 7865见 configs/config.py批处理显式覆盖了它。而 go-web-dml.bat 会额外追加--dml开关以启用 DirectML 后端。若你手动用系统 Python 而非整合包解释器命令应相应写为python infer-web.py --pycmd python。macOS 用户则执行sh ./run.sh同 2.5 节。4.3 WebUI 启动参数的源码级说明结合 configs/config.py 的参数解析逻辑infer-web.py实际支持的启动参数如下表参数默认值说明--port int7865WebUI 监听端口若超出 0~65535 会被强制重置回 7865--pycmd str当前sys.executable供训练等子进程调用所用的 Python 命令--colab关闭Colab 环境启动模式--noparallel关闭禁用并行处理--noautoopen关闭启动后不在浏览器自动打开页面--dml关闭使用 torch_dmlDirectML常用于 AMD/Intel 显卡其中--dml至关重要开启后 configs/config.py 会将 ONNX Runtime 的 CUDA 版重命名为onnxruntime-cuda、把 DML 版替换为默认onnxruntime并将计算设备切换为torch_directml.device(...)且强制使用 fp32 推理。这也解释了为什么 DML 用户必须单独准备rmvpe.onnx而非rmvpe.pt。五、AMD 显卡的 ROCm 兼容说明仅限 Linux法文文档为 Linux AMD 用户单列了 ROCm 部署路径前提是安装好系统级 ROCm 驱动。Arch Linux 用户可用 pacman 直接安装驱动与 SDKpacman -S rocm-hip-sdk rocm-opencl-sdk之后可能需要按显卡型号设置环境变量以 RX6700XT 为例需要将 GFX 版本覆写为 10.3.0export ROCM_PATH/opt/rocm export HSA_OVERRIDE_GFX_VERSION10.3.0再确认当前用户已被加入render与video用户组把$USERNAME替换为实际用户名sudo usermod -aG render $USERNAME sudo usermod -aG video $USERNAME最后启动 WebUIpython infer-web.py结合依赖文件可进一步定位Linux AMD 走 ROCm 时PyTorch 使用上文 2.2 节的rocm5.4.2索引安装其余依赖则来自 requirements-amd.txt。六、上手路径小结与进一步阅读归纳从零到 WebUI 可用的最短路径以本地 NVIDIA 显卡场景为例准备 Python 3.8 环境按 2.2/2.4 节安装对应 PyTorch 与 requirements.txt 中的依赖运行python tools/download_models.py补齐assets/hubert、assets/pretrained、assets/pretrained_v2、assets/uvr5_weights及根目录的rmvpe.pt执行python infer-web.pyWindows 整合包用户双击 go-web.batmacOS/Linux 可用 run.sh在 Gradio 网页中依次完成 人声分离UVR5→ 数据切分 → 特征提取 → 训练 → 特征索引构建Top1 检索→ 推理 的完整流水线。若希望深入了解后续步骤仓库内有大量延伸资料可直接继续阅读中文原版说明见仓库根目录 README.md英文版见 docs/en/README.en.md训练技巧与常见问题英文版 docs/en/training_tips_en.md、docs/en/faq_en.md索引faiss调优细节docs/en/faiss_tips_en.md命令行批处理推理tools/infer_cli.py批量推理 tools/infer_batch_rvc.py索引构建见 tools/infer/train-index.py 与 tools/infer/train-index-v2.py采样率配置模板v1 的 configs/v1/32k.json、configs/v1/40k.json、configs/v1/48k.json 与 v2 的 configs/v2/32k.json、configs/v2/48k.json对应预训练模型按 32k/40k/48k 区分。需要强调本项目涉及语音合成与变声技术请在遵守所在地区法律法规、并取得声音权利人明确授权的前提下使用模型训练与推理能力。【免费下载链接】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),仅供参考