GPT-SoVITS 语音合成报错排查完全指南:从环境到训练,一份照做就能修好的排障手册
GPT-SoVITS 语音合成报错排查完全指南从环境到训练一份照做就能修好的排障手册【免费下载链接】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-SoVITSGPT-SoVITS 用 1 分钟音频就能克隆出高质量音色但装不上、起不来、合成失败、训练爆显存等问题时常劝退新手。这篇 GPT-SoVITS 报错排查指南按你看到了什么报错 → 为什么会这样 → 照着做哪几步的路径覆盖环境、启动、推理、训练、调优五大场景的典型错误帮你 10 分钟内定位问题根源。先把环境体检做一遍省掉一半的排查时间 大部分玄学报错其实是环境没配齐。动手前先做四件事比事后猜错误原因高效得多。确认 Python 与 CUDA 版本匹配GPT-SoVITS 对 Python 3.10–3.12 支持最好。如果你启动时看到ModuleNotFoundError或一堆版本冲突警告大概率是依赖装歪了执行bash install.sh --device CU128按你的显卡选CU126|CU128|ROCM|MPS|CPU它会基于 install.sh 自动装好 requirements.txt 与 extra-req.txt 里的全部依赖执行python -c import torch; print(torch.__version__, torch.cuda.is_available())确认打印出版本号且True确认nvidia-smi里的 CUDA 版本与 PyTorch 构建版本一致如 CU128 对应 12.8确认模型文件是否就位启动时如果提示check_pretrained_is_exist相关的路径不存在说明底模缺失。确认 GPT_SoVITS/pretrained_models/ 目录下有这几类文件类别关键文件中文 BERTchinese-roberta-wwm-ext-large中文 HuBERTchinese-hubert-baseSoVITS 底模s2G488k.pth、v2Pro/s2Gv2Pro.pth等GPT 底模s1bert25hz-2kh-longer-epoch68e-step50232.ckpt、s1v3.ckpt缺了怎么办执行python GPT_SoVITS/download.py自动补齐所有缺失模型不用手动下。确认显存够用config.py 会按显存自动算默认 batch_size但训练场景仍要留余量。16 系1650/1660/1660S显卡不支持半精度程序会自动降为 FP32属于正常现象不用报修。启动就挂按报错关键字对号入座 能进终端却起不来基本逃不出下面三种按关键字认领即可。Address already in use端口被占主 WebUI 默认占用 9874 端口推理 9872、UVR5 9873、Subfix 9871、API 9880见 config.py。两种修法将config.py中webui_port_main改为未被占用的端口如 9876重启或找出占用进程再杀掉lsof -i:9874 kill -9 上一步查到的PIDModuleNotFoundError依赖没装全确认你是在 conda 环境而非系统 python下执行的python webui.py执行bash install.sh --device 你的设备重装它会自动修复 requirements.txt 中的依赖关系仍报错时把报错里缺失的模块名贴给pip install 模块名单独装一次即可模型路径报错底模缺失执行python GPT_SoVITS/download.py自动下载缺失模型下载完成后确认 config.py 里cnhubert_path、bert_path指向的GPT_SoVITS/pretrained_models/目录文件齐全用 Docker 部署的确认镜像内模型已挂载不要指向宿主机旧目录能启动但合成失败把报错信息翻译成人话 ️界面能打开点合成却报错通常不是模型问题而是请求参数的问题。HTTP 400text_lang is requiredapi_v2.py 的/tts接口对必填参数做硬校验缺了就直接 400。对照检查你的请求参数必填说明text是待合成文本text_lang是zh/en/ja等且须在当前版本支持的语言列表内ref_audio_path是参考音频路径prompt_text建议参考音频对应文本影响音色贴合度text_lang传了不受支持的值比如 V2 传yue会返回is not supported in version ...按提示换成当前版本支持的语言即可。tts failed合成过程内部出错API 返回{message: tts failed}时按下面三步排查确认参考音频为 16kHz/24kHz 单声道 WAV时长 3–10 秒最佳mp3、立体声、带大量底噪的文件都会触发失败切换文本切分策略把text_split_method在cut0–cut5间试一轮长文本建议用cut1/cut5将batch_size降为 1排除显存不足导致的推理中断合成音频里夹了参考音频的片段升级至 V2Pro 及以上版本推理该问题已在 docs/cn/Changelog_CN.md 记录的 V2Pro 版本修复确认推理页面加载的 SoVITS 权重确实是 v2Pro 底模GPT_weights_v2Pro目录或 config.py 中name2sovits_path对应路径而不是旧版 v1/v2 权重训练不收敛照这张清单逐项过 ✍️训练阶段的报错最杂但 90% 集中在数据质量、NaN 和显存三个点。先查数据ZeroDivisionError 多在这里确认每条音频长度大于 0.5 秒过短片段如 0.1 秒的嗯会让 mel 计算除零确认标注文本完整、语言标注与音频一致日语训练时目录路径必须纯 ASCII含中文路径会直接报错用 WebUI 的文本标注检查功能扫一遍删掉空标注和错配样本后重跑NaN 或 loss 爆炸先降 batch_size 再开梯度检查点将训练页的每张显卡的 batch_size 降一档webui.py 默认值按显存GB/2自动算显存吃紧时手动再砍半勾选if_grad_ckpt启用梯度检查点用时间换显存若 loss 直接变 NaN 而非缓慢上升基本可判定是数据问题回到上一条重查change gpt weight failedGPT 权重加载失败确认.ckpt文件大小正常几十 MB 以下多为下载截断重新下载核对版本配套V3 模型需与 GPT_SoVITS/configs/ 下对应版本配置如s2v2Pro.json匹配使用执行python GPT_SoVITS/process_ckpt.py修复损坏的 checkpoint 后再加载显存不够、速度太慢的四个调优动作 显存告急手段操作效果降 batch_size设为显存 GB 数的 1/2 以内最直接关闭半精度将is_half设为False16 系显卡本来就会强制 FP32省精度防崩溃清理临时文件删除TEMP/目录内容webui.py 每次启动也会自动清释放磁盘缓存用 LoRAV3 LoRA 训练约 8G 显存即可大幅降低门槛推理速度慢保持 API 的parallel_inferTrueapi_v2.py 中默认开启并行推理对多请求场景提速明显单用户高频合成改用快速推理分支python GPT_SoVITS/inference_webui_fast.py追求极致延迟可导出 TorchScriptpython GPT_SoVITS/export_torch_script.py用优化后的模型推理版本兼容速查表训练前先对表模型版本Python 版本推荐 CUDA推理显存微调显存V1/V23.811.74GB8GBV2Pro/V2ProPlus3.912.16GB12GBV3/V43.1012.68GB14GB开梯度检查点约 12GBLoRA 约 8GB各版本更详细的变更记录见 docs/cn/Changelog_CN.md比如 V3 需要 14G 显存微调、V2Pro 支持 v2ProPlus 底模等关键信息都以该文档为准。一键自检脚本三条命令摸清家底把这三条命令按顺序贴进终端执行环境、GPU、推理链路全检一遍python -c import torch; print(torch.__version__, torch.cuda.is_available(), torch.cuda.get_device_name(0) if torch.cuda.is_available() else CPU)ls GPT_SoVITS/pretrained_models/python -c from GPT_SoVITS.TTS_infer_pack.TTS import TTS; TTS(GPT_SoVITS/configs/tts_infer.yaml)第一条验证 PyTorch 与 CUDA 是否可用、GPU 型号是否正确第二条确认底模文件是否齐全第三条直接实例化 TTS 对象能正常跑完说明推理链路完全就绪。任何一条卡住就回到上面对应的章节处理。高频问题简答QUVR5 分轨时报inf相关错误怎么办A16 系显卡不支持半精度将 tools/uvr5/ 中is_half参数改为False后重启即可。Q日语训练时一换路径就报错A训练目录路径必须只含 ASCII 字符把仓库路径中的中文/空格换成英文重跑这是已知兼容性问题。Q训练日志去哪里看A训练输出默认落在logs目录config.py 中exp_root指定TensorBoard 记录也在这里loss 曲线不下降优先按训练不收敛一节排查。按这套流程走一遍GPT-SoVITS 语音合成场景下 90% 以上的常见报错都能当场解决。如果问题依旧建议把完整日志、显卡型号、CUDA/Python 版本和复现步骤整理好再求助社区效率会高很多。【免费下载链接】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),仅供参考