ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

GPT-SoVITS 语音合成在 Mac 上跑满速:MPS 加速配置与调优实战

GPT-SoVITS 语音合成在 Mac 上跑满速:MPS 加速配置与调优实战 GPT-SoVITS 语音合成在 Mac 上跑满速MPS 加速配置与调优实战【免费下载链接】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 是一款开源的少样本语音克隆工具一分钟的录音就能训出一个可用的 TTS 模型。它默认在 CPU 上推理合成速度慢是 macOS 用户绕不开的痛点借助 Apple Silicon 芯片的 MPSMetal Performance Shaders加速推理速度可以提升 3~5 倍。这篇指南覆盖从系统检查、一键安装到参数调优和批量合成的完整流程照着做即可。起飞前检查清单开始前花一分钟确认硬件满足条件能避免后面大部分装不上的问题macOS 版本≥ 12.0Monterey芯片类型Apple SiliconM 系列芯片Xcode 命令行工具必须已安装编译和 MPS 运行时都依赖它两条命令可以快速核对sw_vers -productVersion # 查看 macOS 版本 sysctl -n machdep.cpu.brand_string # 查看芯片型号如果第二条命令输出的是 M 系列芯片型号就可以走 MPS 路线。快速上手四步跑通 MPS 推理整个流程是线性的从克隆仓库到 WebUI 出声不超过 4 步。第 1 步克隆代码git clone https://gitcode.com/GitHub_Trending/gp/GPT-SoVITS cd GPT-SoVITS第 2 步一键安装仓库自带的 install.sh 支持设备参数MPS 走 CPU 版 PyTorch 加 Metal 后端模型源选 ModelScope 在国内下载更稳bash install.sh --device MPS --source ModelScope脚本会自动识别 Apple Silicon 架构、装好匹配的 PyTorch 与依赖并把预训练模型下载到 GPT_SoVITS/pretrained_models/ 目录这一步不需要手动干预。第 3 步做两处关键修改配置文件和环境变量各改一处具体见下一节。第 4 步启动并验证python webui.py启动后终端和 WebUI 界面会显示当前设备为mps打开活动监视器推理时 GPU 占用率上升即说明加速生效速度相比 CPU 模式有明显提升。MPS 加速只需改这两处配置层面真正必须动的只有两个地方改完即可上 GPU。其一推理配置文件。打开 GPT_SoVITS/configs/tts_infer.yaml把对应版本段如v2的设备从cpu改为mps同时打开半精度v2: device: mps # 由 cpu 改为 mps is_half: true # 启用半精度原因很简单这份配置默认就是 CPU 模式不改的话模型根本不会加载到 Metal 后端后面怎么调都白搭。其二两个环境变量。启动 WebUI 前先执行export PYTORCH_ENABLE_MPS_FALLBACK1 # MPS 缺失算子时回退 CPU export KMP_DUPLICATE_LIB_OKTRUE # 规避 OpenMP 库重复加载前者是保险丝部分算子在 Metal 上没有原生内核开了回退就不会直接报错中断后者解决系统级库冲突导致的崩溃。速度与内存调优三个可动旋钮跑通之后想再榨一点性能可以按内存余量逐个调整。批处理大小修改 config.py 中的default_batch_size把它压到max(1, minmem // 4)附近内存紧张时直接设 1同时可在 GPT_SoVITS/configs/tts_infer.yaml 的custom段按内存大小把batch_size调到 2。批处理开太大是最常见的爆内存来源。半精度推理确认is_half: true生效。FP16 相比 FP32 显存压力减半速度也更快语音质量无明显损失。模型预加载把常用底模路径写死进 webui.py 的环境变量省去每次启动的重复加载os.environ[gpt_path] GPT_SoVITS/pretrained_models/s1v3.ckpt os.environ[sovits_path] GPT_SoVITS/pretrained_models/v2Pro/s2Gv2Pro.pth训练场景如果后续要微调可设置if_grad_ckpt: true开启梯度检查点用少量计算换显存空间。两种使用方式WebUI 单条、CLI 批量单条合成走 WebUI。python webui.py启动后访问http://localhost:9874GPT_SoVITS/inference_webui.py 提供的图形界面里选择底模、粘贴参考音频和目标文本即可实时试听生成结果适合日常创作和效果对比。批量任务走命令行。准备一个每行一句的文本文件用 GPT_SoVITS/inference_cli.py 一次跑完python GPT_SoVITS/inference_cli.py --text 批量处理文本.txt --output_dir ./output --device mps无界面、可脚本化适合夜里挂任务。避坑 FAQ现象报aten::_linalg_svd之类的算子不支持错误。原因该算子在 MPS 上没有内核且回退开关没开。 解决启动前执行export PYTORCH_ENABLE_MPS_FALLBACK1让它自动走 CPU 兜底。现象16GB 内存机器频繁卡死或触发 swap。原因模型权重加批处理缓冲超出了统一内存余量。 解决先关掉其他内存大户再把 config.py 里is_half保持true、批处理大小降到 1两项一起做通常就能稳住。现象预训练模型下载极慢甚至超时。原因默认模型源在国内访问速度不理想。 解决编辑 install.sh 中第 246~253 行附近的下载 URL换成 ModelScope 国内镜像地址PRETRINED_URLhttps://www.modelscope.cn/models/XXXXRT/GPT-SoVITS-Pretrained/resolve/master/pretrained_models.zip现象启动时报 OpenMP 相关的库加载冲突。原因conda 环境里重复链接了 OpenMP 运行时。 解决export KMP_DUPLICATE_LIB_OKTRUE后重启进程即可。性能数据与进阶方向M1 Pro16GB上的实测数据三种模式的平均耗时与内存占用CPU 模式约 0.8 秒/句占用 4.2GB质量正常MPS FP32约 0.3 秒/句占用 5.8GB质量正常MPS FP16约 0.2 秒/句占用 3.5GB质量最佳FP16 路线速度提升约 300%内存还比 FP32 省了四成是 Mac 上的默认选择。想继续深入有三个方向值得尝试一是用 GPT_SoVITS/export_torch_script.py 导出 INT8 量化模型进一步压缩体积二是通过 GPT_SoVITS/s2_train.py 微调自己的专属音色三是调整 webui.py 里的default_max_batch_size让服务扛住更多并发请求。配置中遇到报错或有优化建议欢迎直接到项目仓库提 Issue社区响应很快。【免费下载链接】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),仅供参考
返回列表