当前位置:首页|资讯

3分钟素材!30分钟搞定!使用GPT-SoVITS训练自己的语音模型

作者:叫我萃香啦发布时间:2024-09-19

前言

1、本教程中使用AutoDL算力平台在线训练作为演示,实际使用中可以自行选择合适的算力平台。(如选择弹性计费,则使用完成后记得关闭实例主机,避免额外扣费)

 

2、本教程中使用的GPT-SoVITS:v6.3镜像进行演示

作者仓库地址:https://github.com/RVC-Boss/GPT-SoVITS

作者:39c5bb

链接:https://www.codewithgpu.com/i/RVC-Boss/GPT-SoVITS/GPT-SoVITS/736/6.3

来源:CodeWithGpu

该文件著作权归镜像作者所有。

 

3、开始训练前建议准备好3分钟以上的需要训练的人声材料,格式可以为mp3、m4a、wav等主流格式。声音内容为单人语音,避免过多杂音和背景音。更长的材料能够获得更好的效果,根据实际需求进行准备。(Webui里包含降噪和人声分离,但是我不喜欢用,毕竟是按时间收费的,可以随便找个剪辑软件去做降噪和人声分离,省钱)


正式开始

1、在算力市场中选择合适的显卡,在训练模型时推荐使用24G以上显存的(Autodl平台选择3090以上)。

*注意:训练时显卡需求更高,日常使用TTS模型则可以选择更差的显卡(我用的是本地笔记本的1650)

2、建立实例时选择社区镜像,搜索SoVITS并选择合适的镜像(我是用的是RVC-Boss/GPT-SoVITS/GPT-SoVITS 作者:39c5bb)

3、等待实例创建


实例开机后点击jupyterlab进入控制台


5、进入jupyterlab控制台后,点击“GPT-Sovits(使用)”标签页,将准备好的人声素材放workdir/GPT-SoVITS/input文件夹

(直接拖拽到左侧就可以上传)



6、点击“GPT-Sovits(使用)”标签页,找到“首次使用请运行”代码块,

单击选中该代码块后点击“▶运行”按键,等待代码块提示“移动完成”

选择“运行Webui”代码块,点击“▶运行”按键

点击出现的public URL中的gradio蓝色连接,打开GPT-Sovits的webui(gradio有时候会很慢,多等一会儿

7、点击蓝色大按钮开始对语音素材进行分割(默认参数无需调节可以直接用。Webui里包含降噪和人声分离,但是我不喜欢用,毕竟是按时间收费的,可以随便找个剪辑软件去做降噪和人声分离,省钱)

根据进程输出信息确认是否完成

在控制台的autodl-tmp/workdir/GPT-SoVITS/output/slicer_opt文件夹中可以看到分割完成的音频

确认分割完成的音频文件存在后,点击批量ASR按钮,等待

在“GPT-Sovits(使用)”标签页中可以看到工作进度

等待直到显示任务完成

8、查看autodl-tmp/workdir/GPT-SoVITS/output/asr_opt文件夹中是否有完成的标注文件

确认标注文件存在后,回到Webui,点击“开启打标Webui”

等待直到显示为“打标工具WebUI已开启”

回到“GPT-Sovits(使用)”标签页中,找到另一个public URL中的gradio蓝色连接,打开webui(和第一个Webui是两个网址,不要搞错了),打开打标页面

9、在打标Webui中,根据每一段语音的实际内容,检查识别的文字是否正确,如有错误进行修改和调整。对于一些难以识别的短句或者错句可以酌情删除

一页的内容检查完成后,点击“保存修改”按钮和“保存文件”按钮。随后点击下一页进行修改

请务必在修改文字之后点击保存!

在控制台的autodl-tmp/workdir/GPT-SoVITS/output/asr_opt/slicer_opt.list文件中也可以看到识别的文字内容

10、确认打标工作完成后,回到GPT-Sovits的Webui,点击GPT-Sovits-TTS选项卡


为训练的语音模型填写名称

按顺序点击“开启文本获取”、“开启SSL提取”、“开启语义token提取”、“开启一键三连”

注意:在上一个工作的进度结束之后再点击下一个按钮

在“GPT-Sovits(使用)”标签页中可以看到工作进度(但是完全没必要看)

11、所有进程都完成后,找到并进入“微调训练”选项卡

如果使用的是3090及以上的拥有24G以上显存的显卡,则无需调整参数,可以直接点击“开启SoVITS”训练。如果显存了则适当调小“每张显卡的batch size”参数。

开始训练

在“GPT-Sovits(使用)”标签页中可以看到工作进度

看到提示“SoVITS训练完成”后,点击开启“GPT训练”

等待直到显示“GPT训练完成”

回到控制台,检查autodl-tmp/workdir/GPT-SoVITS/SoVITS_weights_v2和autodl-tmp/workdir/GPT-SoVITS/GPT_weights_v2文件夹中是否有训练完成的模型

12、确认模型存在后,回到GPT-Sovits Webui,点击“推理”标签页

点击刷新模型路径,确认下拉菜单里有训练好的模型

确认完毕后勾选“启用并行推理版本(推理速度更快)”

点击“开启TTS推理Webui”

13、回到“GPT-Sovits(使用)”标签页中,找到第三个public URL中的gradio蓝色连接,打开TTS推理webui

在打开的页面中点击“刷新模型路径”

在两个下拉菜单中分别选择你要使用的GPT模型和SoVITS模型,模型名称中的e**代表训练轮数,选择合适的使用

上传一小段参考音频和对应的文本,参考音频用于音色的参考,和模型训练的语音音色一致为最好,长度要求10秒以内,可以从最初的训练素材中截取。随后填写参考语音对应的实际文本。

输入需要合成的语音文本

适当调整语速和温度值,让TTS接近真人语音

点击“合成语音”

等待合成完成……

试听成果,调整参数

对于满意的语音,可以点击右侧三个小点中的下载保存到本地

对于一些长文本,先复制到文本切分工具中,在“怎么切”中选择合适的切断方式(我习惯用标点符号,可以避免吃字,也可以选别的),并将切分后的文本复制到“需要合成的语音文本”中

14、对于满意的训练模型,可以在“GPT-Sovits(使用)”标签页,运行“打包下载”代码块,以压缩包的形式下载autodl-tmp/workdir/GPT-SoVITS/SoVITS_weights_v2和autodl-tmp/workdir/GPT-SoVITS/GPT_weights_v2两个文件夹中的模型(同时也会下载SoVITS_weights和GPT_weights两个文件夹,如果使用的是V1训练,则模型会在这两个文件夹里,否则这两个就是空文件夹)

 

注意:运行打包下载前必须终止原有的正在运行的代码,这会导致三个打开的Webui都停止工作,请在本次训练和TTS推理完成后再打包模型。如需重启TTS推理Webui,则请回到并运行最初的“运行Webui”代码块,点击出现的public URL中的gradio蓝色连接,打开GPT-Sovits的webui。并在“推理”标签页勾选“启用并行推理版本(推理速度更快)”后点击“开启TTS推理Webui”,随后回到“GPT-Sovits(使用)”标签页中,找到对应public URL中的gradio蓝色连接,打开TTS推理webui

打包完成的模型位于autodl-tmp/workdir,默认压缩包名称为GPT_SoVITS_pack.zip,可以右键下载到本地

如需使用这些下载好的模型,则只需要把其中的模型文件放在对应的autodl-tmp/workdir/GPT-SoVITS/SoVITS_weights_v2和autodl-tmp/workdir/GPT-SoVITS/GPT_weights_v2文件夹中即可(本地部署使用同理)



Copyright © 2024 aigcdaily.cn  北京智识时代科技有限公司  版权所有  京ICP备2023006237号-1