news 2026/9/3 11:06:42

RVC上手指南:10分钟语音克隆一个AI音色,从装环境到出片的全流程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
RVC上手指南:10分钟语音克隆一个AI音色,从装环境到出片的全流程

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

RVC(检索式语音转换)是一个基于 VITS 的开源 AI 语音克隆框架:喂给它 10 分钟左右的干净人声,就能训练出一个可推理、可实时变声的音色模型。唱歌、配音、做个性化语音助手,走的是同一条训练管线。这篇文章按"先跑通 → 出第一个成果 → 自己训一个 → 卡住了怎么办"的路径带你走一遍,命令都能直接复制。

🚀 把环境装好,界面先亮起来

先通:三步装完

git clone https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI cd Retrieval-based-Voice-Conversion-WebUI pip install -r requirements.txt

依赖文件按硬件区分,选错装不出效果:

文件适用对象
requirements.txtNVIDIA 显卡(大多数人的情况)
requirements-dml.txtWindows + AMD 显卡(DirectML)
requirements-ipex.txtIntel 显卡(Linux)

再稳:装完依赖还缺一步——下载预训练底模。仓库里提供了现成脚本(tools/download_models.py 走 pip 网络即可,tools/dlmodels.sh需要系统里先装好 aria2),把底模拉到assets/pretrained等目录后再启动:

python infer-web.py --port 7865 # 默认端口就是 7865,不是 7860 python infer-web.py --port 7865 --dml # AMD 用户加上 --dml

浏览器打开http://localhost:7865,能看到"模型推理 / 训练 / ckpt处理"等标签页就成功了。

过来人提醒:脚本默认 Python 3.8(见run.shvenv.sh),版本别乱升级,依赖链是按 3.8 配的。

🎤 先用现成音色转换出第一段音频

启动界面进"模型推理"标签页,流程就四步:

  1. 推理音色下拉框选一个模型。如果下拉是空的,说明assets/weights里还没有任何.pth小模型——先用上面的脚本把预训练底模下下来,或在"ckpt处理"页从logs下提取一个
  2. 填入待处理音频的路径,或指定特征检索库(.index)路径
  3. 选音高提取算法(默认 rmvpe 就够,各算法差异见文末速记卡)
  4. 点"转换",右下角音频组件里直接试听、下载

两个最影响听感的滑块,默认值先用着:

  • 检索特征占比 index_rate(默认 0.75):越接近 1,音色越像训练时的目标音色,越偏离你原音频的演绎细节
  • 保护参数 protect(默认 0.33):保护清辅音和呼吸声,拉满 0.5 等于关闭;如果输出有"电音撕裂",把它调小一点

变调参数按半音计,0 保持原音高,男声转女声常见的做法是 -12 或 -10 起步再微调。

📝 喂 10 分钟数据,训练出自己的音色模型

数据准备:找一个文件夹,放目标人声 10–30 分钟,尽量干净、无伴奏、无大段静音。训练页"step2a"会自动遍历该文件夹下所有能解码的音频,做切片和归一化,你不用自己预处理。

训练页配置(step1):

  • 实验名:自定义,所有产物都进logs/实验名/
  • 目标采样率:默认 40k;v2 支持 32k/40k/48k,v1 只有 40k/48k(32k 仅 v2)
  • 模型版本默认 v2;"是否带音高指导"唱歌必须开
  • 预训练底模路径会随版本和采样率自动切换,一般不用动

然后点"一键训练",它依次跑:处理数据 → 提取音高和特征 → 训练模型 → 训练特征索引,四步全绿即结束。想分步验证就分别点"处理数据""特征提取""训练模型""训练特征索引"。

训练设置的默认值(保存频率 5、总轮数 20、batch_size 按显存自动算)对小数据集是合理起点,小数据可以把"缓存至显存"设为是来提速。

训练完成后:大文件 checkpoint(G_轮数.pth)留在logs/实验名/里,但推理界面只认assets/weights/下的小模型。去"ckpt处理"页把 logs 下的 checkpoint 填进"模型提取",点提取即可;以后想省事,训练时把"是否在每次保存时间点将最终小模型保存至weights文件夹"设为是,就不用手动提取了。

过来人提醒:换采样率不能在旧实验上续训,起一个新实验名从头练。

🩺 卡点了:按阶段对号入座

启动阶段

界面打不开:先确认终端里的实际端口,再试python infer-web.py --port 7861换个端口;仍不行就查防火墙。

音色下拉为空:九成是没下底模,或下错了目录。确认assets/pretrainedassets/pretrained_v2下有对应.pth,然后在推理页点"刷新音色列表和索引路径"。

音频处理失败/报 ffmpeg 相关错误:音频处理依赖系统的 ffmpeg,ffmpeg -version能出版本号才算装好;同时保证音频路径里没有中文、空格和特殊符号,这两条能排掉大半报错。

训练阶段

CUDA out of memory:第一步把 batch_size 调小,或关闭"缓存所有训练集至显存";再深入一点,显存档位参数在 configs/ 的32k.json/40k.json/48k.json里,实际生效的是自动复制出来的 configs/inuse/ 目录(改动后需要重启 WebUI)。

特征提取失败 / tensor 尺寸不匹配:通常是训练文件夹里混进了坏文件或极短音频。清掉异常文件,重新"处理数据"再走一遍特征提取。

推理阶段

训完的模型不显示:记住那条规则——推理只读assets/weights。把 logs 下对应轮数的G_xxx.pth用"ckpt处理 → 模型提取"转成小模型,再点刷新。

索引文件找不到:训练特征索引生成的.index会在logs/实验名/下,并软链到assets/indices(外部索引目录名是outside_index_root),推理页下拉会自动检测;没有对应索引也能推理,只是音色还原度差一些。

🧪 进阶玩法:批量转换、模型融合与调参

  • 批量推理:同一标签页下的第二个子页签,给一个文件夹(或上传多个文件),选输出目录(默认opt)和导出格式(wav/flac/mp3/m4a),一次转完
  • 伴奏人声分离:单独的 UVR5 标签页,把带伴奏的音频先分离出纯人声,是拿到干净训练数据最实用的前置步骤
  • 模型融合:在"ckpt处理"页填两个模型路径 + A 模型权重(0–1),得到一个混合音色的新模型,适合拿两个相近音色做交叉测试
  • ONNX 导出:同一标签页最下方,把小模型转成 onnx 用于更轻量的推理部署

推理调参速记卡:

参数默认作用与调整方向
index_rate0.75音色相似度 vs 演绎保真度;像但"死"→调低
protect0.33防电音撕裂;有撕裂→调小,没音色感→调大
f0up_key0半音数;-12 降八度,12 升八度
音高提取算法rmvpe见下表
算法特点
rmvpe效果最好,微吃 GPU,默认首选
harvest低音表现好,但很慢
dio高质量语音 + CPU 偏弱时提速
pm最快,精度低,歌声场景可用

过来人提醒:数据质量比数据量重要。10 分钟干净人声,胜过 1 小时带噪音的音频;先分离、去静音、挑片段,再进训练。

✅ 下一步行动清单

  1. 环境已通:assets/pretrained*底模齐全,界面能在 7865 端口打开
  2. 用现成音色转出第一段音频,动手拖过 index_rate 和 protect,听出区别
  3. 准备 10 分钟干净人声 → 一键训练 → ckpt 提取 → 推理页刷新,完成从数据到音色闭环
  4. 有余力再试:批量推理、模型融合、onnx 导出

常用入口:推理入口 infer-web.py、训练与推理核心代码 infer/、采样率配置 configs/、中文常见问题 docs/cn/faq.md(WebUI 里也内置了同一份 FAQ 标签页)。

【免费下载链接】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/3 11:02:32

Vue+SpringBoot酒店管理系统:全栈项目实战与毕业设计指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

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

KOReader 2025.04 更新详解:值得了解的 5 个变化

KOReader 2025.04 更新详解&#xff1a;值得了解的 5 个变化 【免费下载链接】koreader An ebook reader application supporting PDF, DjVu, EPUB, FB2 and many more formats, running on Cervantes, Kindle, Kobo, PocketBook and Android devices 项目地址: https://gitc…

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

用ComfyUI本地AI图像生成批量制作DC八神过来Meme实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

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

Deepagents:三步让 AI 代理自己跑完一个任务

Deepagents&#xff1a;三步让 AI 代理自己跑完一个任务 【免费下载链接】deepagents The batteries-included agent harness. 项目地址: https://gitcode.com/GitHub_Trending/de/deepagents 你大概遇到过这种尴尬&#xff1a;让 AI 写一份长报告&#xff0c;写到一半丢…

作者头像 李华
网站建设 2026/9/3 10:58:56

LT168B键盘副屏显示方案:从驱动安装到固件刷新全指南

LT168B 键盘副屏显示方案最近在机械键盘和客制化圈子里讨论热度不低。和普通键盘只有灯光效果不同&#xff0c;这类方案是在键盘右上角或方向键附近塞进一块小型显示屏&#xff0c;用来显示时间、电量、系统状态、动图甚至硬件监控数据。对玩家来说&#xff0c;副屏不是刚需&am…

作者头像 李华
网站建设 2026/9/3 10:57:48

基于深度学习的目标检测:Ubuntu系统+YOLOv7环境搭建+训练自己的数据集+推理(detect) ——(1)准备+测试篇

想要体验前沿目标检测模型 YOLOv7 的强大能力&#xff0c;并将其应用于解决实际问题&#xff1f;那么&#xff0c;环境搭建、数据集准备、模型训练与推理这几个关键环节&#xff0c;便是你必须迈过的门槛。对于初学者&#xff0c;乃至是有一定开发经验的读者而言&#xff0c;从…

作者头像 李华