GPT-SoVITS|5 秒人声出克隆音色,最短上手路径
【免费下载链接】GPT-SoVITS1 min voice data can also be used to train a good TTS model! (few shot voice cloning)项目地址: https://gitcode.com/GitHub_Trending/gp/GPT-SoVITS
你从播客里截一段 5 秒的人声,拖进上传框,填上它说的内容,几秒后结果区出来的语音就是这个人说话的文章。
这就是 GPT-SoVITS:一个少样本语音克隆 TTS 工具,官方实测在 RTX 4090 上实时因子约 0.014(合成 1 秒音频约花 0.014 秒),GTX 1060 级别的显卡也能跑。
以前做 TTS,要录几十分钟干净音频、再训几个小时。现在 5 秒片段就能做零样本克隆;以前文本语言必须和录音一致,现在中文音色切个语种开关就能念英文。
最短安装路径与第一次合成
最低要求:GTX 1060 / 8GB 内存 / 20GB 磁盘;推荐 RTX 3090 / 32GB 内存。
Windows:下载官方整合包,解压后双击go-webui.bat即可,不用进终端。
Linux & macOS(macOS 走 MPS 设备):
git clone https://gitcode.com/GitHub_Trending/gp/GPT-SoVITS cd GPT-SoVITS conda create -n GPTSoVits python=3.10 conda activate GPTSoVits bash install.sh --device CU128 --source HF # 按驱动选 CU126,macOS 用 MPSinstall.sh会自动把底模和 G2PW 中文拼音模型拉到对应目录,不用手动搬。国内网络换--source HF-Mirror或ModelScope。
装完启动并操作:
- 根目录执行
python webui.py,浏览器打开9874端口; - 进
1-GPT-SoVITS-TTS页签,两个权重下拉框都选不训练直接推底模; - 上传一段3~10 秒的参考音频(超出范围会报错),填上这段音频说的文本;
- 填写要合成的文章,选好语种,点合成语音。
几秒后结果区出现新音色的波形,点试听确认音色对不对。
典型场景
零样本快速克隆
手上只有一段 5 秒人声,不想训练。直接上传参考音频、填参考文本和目标文本,出同音色语音。贴合度受那 5 秒的限制,能听。
少样本微调
克隆结果"像又不像"。备 1 分钟干净录音,切片、自动转写、训练一轮,相似度基本到位。
跨语言合成
只有中文音色,但要念英文文章。目标文本语种切到英文即可,拿回的仍是这个音色念英文,不用另录底稿。
带噪素材
素材是混音或环境吵。先跑内置 UVR5 把人声分离出来再喂进去,零样本结果干净不少。
效果不够好,两条路
路线 A:加数据做一轮微调。加 1 分钟干净录音:在0页签跑 UVR5 人声分离、切片、ASR 自动转写并逐条校对;再到1A训练集格式化工具生成 hubert、说话人向量、语义特征;最后1B微调训练里依次训 GPT(s1)和 SoVITS(s2)。
路线 B:换个底模试试。下拉框里有 v2、v3、v4、v2Pro 等版本,音质和贴合度各有取舍,先试再定。
判断标准:听不出是那个人,说明差在相似度,走 A;音色对但自然度、音质不满意,先换 B。
踩坑速查
- 合成语音错字、变调→ 训练文本和音频对不上,或语种标错 → 识别文本和音频逐条对照,改完重训 s1。
- 音频有底噪、听着闷→ 参考音频本身不干净 → 先用内置 UVR5 分离人声,或换安静环境重录。
- 显存爆掉→ 切片过长,一次塞太多帧 → 把切片时长调短,或把
is_half设为True走混合精度。 - 参考音频报错→ 音频不在 3~10 秒范围内 → 重新截取合适时长的片段。
- M4 CPU 上合成很慢→ CPU 推理实时因子约 0.526 → 有显卡就装 CUDA 版,别用纯 CPU 硬跑。
源码入口
GPT_SoVITS/AR/— GPT 侧自回归生成语义序列的实现GPT_SoVITS/module/— SoVITS 声学模型结构与 VQ 量化GPT_SoVITS/TTS_infer_pack/— 推理主流程与多语言切换逻辑GPT_SoVITS/prepare_datasets/— ASR、特征提取、语义特征三步预处理GPT_SoVITS/text/— 各语言文本清洗、分词与 G2PW 多音字处理
官方中文文档:docs/cn/README.md
现在就截一段自己的声音跑一次零样本合成,听完就知道差在哪。不满意再把数据加到 1 分钟做一次微调,比反复调参数更实在。
【免费下载链接】GPT-SoVITS1 min voice data can also be used to train a good TTS model! (few shot voice cloning)项目地址: https://gitcode.com/GitHub_Trending/gp/GPT-SoVITS
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考