GPT-SoVITS 本地搭建踩坑

本文介绍了如何在本地搭建GPT-SoVITS模型,包括下载、解压、使用VSCode管理环境、安装依赖以及根据issue修复内容,确保模型正常运行和语音合成功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

传言GPT-SoVITS作为当前与BertVits2.3并列的TTS大模型,于是本地搭了一个,简单说一下坑。
GitHub官网截图

搭建

下载

到GitHub点击此处下载
https://github.com/RVC-Boss/GPT-SoVITS

点击此处下载

解压

解压到全英文目录
解压到全英文目录

VSCode打开

使用VSCode打开,切到conda并clone一个之前BertVits的环境(没环境的自己先做一个Python3.10的配好PyTorch的)
在环境中打开

安装依赖包

使用下面语句安装依赖

pip install -r requirements.txt

修改内容

根据issues内大家讨论的结果,这样操作是实测可行的,但是之后作者应该会优化,截止发文这么改是没问题的,以后可能不用改了
https://github.com/RVC-Boss/GPT-SoVITS/issues/26

1.重新安装版本

输入下面的指令重新安装一下对应版本的

pip install funasr==0.8.7
pip install modelscope==1.10.0

2.修改文件内容

将 tools\damo_asr\cmd-asr.py 文件中的

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='tools/damo_asr/models/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='tools/damo_asr/models/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='tools/damo_asr/models/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

改成

inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='damo/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

根据我的研究,原因是 git clone 的那几个模型的配置文件和它自动下载的内容不一样
修改截图
修改后源码如下

# -*- coding:utf-8 -*-

from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
import sys,os,traceback
dir=sys.argv[1]
# opt_name=dir.split("\\")[-1].split("/")[-1]
opt_name=os.path.basename(dir)

path_asr='tools/damo_asr/models/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch'
path_vad='tools/damo_asr/models/speech_fsmn_vad_zh-cn-16k-common-pytorch'
path_punc='tools/damo_asr/models/punc_ct-transformer_zh-cn-common-vocab272727-pytorch'
path_asr=path_asr if os.path.exists(path_asr)else "damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch"
path_vad=path_vad if os.path.exists(path_vad)else "damo/speech_fsmn_vad_zh-cn-16k-common-pytorch"
path_punc=path_punc if os.path.exists(path_punc)else "damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch"
# inference_pipeline = pipeline(
#     task=Tasks.auto_speech_recognition,
#     model=path_asr,
#     vad_model=path_vad,
#     punc_model=path_punc,
# )
inference_pipeline = pipeline(
    task=Tasks.auto_speech_recognition,
    model='damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',
    vad_model='damo/speech_fsmn_vad_zh-cn-16k-common-pytorch',
    punc_model='damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch',
)

opt=[]
for name in os.listdir(dir):
    try:
        text = inference_pipeline(audio_in="%s/%s"%(dir,name))["text"]
        opt.append("%s/%s|%s|ZH|%s"%(dir,name,opt_name,text))
    except:
        print(traceback.format_exc())

opt_dir="output/asr_opt"
os.makedirs(opt_dir,exist_ok=True)
with open("%s/%s.list"%(opt_dir,opt_name),"w",encoding="utf-8")as f:f.write("\n".join(opt))

运行

在环境中输入,即可正常启动

python webui.py

总结

能够有感情的朗读了,不错

<think>好的,我需要帮助用户了解如何在本地环境中部署GPT-SoVITS模型。根据用户提供的引用内容,我需要整理出一个清晰的步骤指南。首先,我应该先检查引用中的相关信息,确保步骤准确无误。 首先,用户提到了引用[4]中的路径示例,比如G:\GPT-SoVITS\output\slicer_opt,这提示我需要强调路径的正确设置,避免使用引号。另外,引用[2]提到将预训练模型放在GPT_SoVITS根目录下的特定子目录中,而不是根目录下的pretrained_models,这一点需要特别注意,否则可能导致模型加载失败。 然后,引用[3]提到GPT-SoVITS支持中英日文的推理,所以可能需要准备多语言的训练数据。用户的问题是关于本地部署,所以需要涵盖环境准备、依赖安装、配置调整等步骤。 接下来,用户可能需要知道如何获取源代码,比如从GitHub克隆仓库。同时,安装依赖项如Python库,可能需要使用requirements.txt文件。配置模型路径和环境变量也是关键步骤,确保所有路径正确无误。 微调训练部分,引用[4]提到“一键三连”和微调训练的步骤,可能需要指导用户如何准备数据集,运行训练脚本,以及调整超参数。此外,推理部分需要说明如何调用API或运行推理脚本,可能涉及修改配置文件中的路径。 还需要注意常见问题,比如路径错误、依赖冲突、显存不足等,这些都需要在指南中提前提醒用户,避免他们遇到问题时不知所措。 最后,生成相关问题,帮助用户进一步了解模型的应用和优化,比如多语言支持、数据准备、API调用等。确保所有步骤引用正确的来源,比如引用[2]和[4]中的具体操作步骤。 总结一下,我需要将整个部署过程分解为环境准备、获取代码、安装依赖、配置模型、数据准备、训练、推理和常见问题几个部分,每个部分详细说明,并引用相关的引用内容作为支持。同时,保持语言简洁明了,步骤清晰,方便用户跟随操作。</think>### GPT-SoVITS本地部署分步指南 #### 一、环境准备 1. 安装Python 3.8+和CUDA 11.3+环境 2. 准备NVIDIA显卡(建议显存≥8GB) 3. 创建项目目录(路径不要包含中文或特殊符号),例如:`D:\GPT-SoVITS` #### 二、获取代码与模型 1. 克隆官方仓库(需提前安装Git): ```bash git clone https://github.com/xxxx/GPT-SoVITS.git ``` 2. 下载预训练模型: - 将`pretrained_models`文件夹放置于`GPT_SoVITS/GPT_SoVITS/`路径下[^2] - 模型文件结构示例: ``` GPT_SoVITS ├── GPT_SoVITS │ └── pretrained_models │ ├── s2G488k.pth │ └── s2D488k.pth ``` #### 三、安装依赖 1. 进入项目目录执行: ```bash pip install -r requirements.txt ``` 2. 特别安装torch: ```bash pip install torch==1.12.1+cu113 --extra-index-url https://download.pytorch.org/whl/cu113 ``` #### 四、配置调整 1. 修改`config.yml`配置文件: ```yaml data_root: "D:/GPT-SoVITS/dataset" # 注意使用正斜杠 output_path: "D:/GPT-SoVITS/output" ``` 2. 设置环境变量(Windows): ```bat set PYTHONPATH=%PYTHONPATH%;D:\GPT-SoVITS ``` #### 五、数据准备 1. 创建符合规范的训练数据集: ``` dataset ├── train │ ├── audio │ └── transcript.txt └── valid ├── audio └── transcript.txt ``` 2. 音频要求:16kHz采样率,单声道WAV格式 #### 六、微调训练 1. 启动Sovits训练: ```bash python train_sovits.py --config config.yml ``` 2. 完成后再启动GPT训练: ```bash python train_gpt.py --config config.yml ``` 注意:训练参数可在`1B-Fine-tuned-training`界面调整,建议初次使用默认值[^4] #### 七、推理使用 1. 修改`inference_config.yaml`: ```yaml model_path: "D:/GPT-SoVITS/output/sovits_weights.pth" gpt_path: "D:/GPT-SoVITS/output/gpt_weights.pth" ``` 2. 运行推理脚本: ```bash python inference.py --text "需要合成的文本" --output test.wav ``` #### 常见问题解决 1. **路径错误**:确保所有路径使用绝对路径且不包含空格/中文 2. **依赖冲突**:建议使用virtualenv创建虚拟环境 3. **显存不足**:降低`batch_size`参数值 4. **API调用**:参考`api_server.py`启动HTTP服务[^3]
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值