AI克隆语音(基于GPT-SoVITS)

2024-04-15 06:12
文章标签 ai gpt 语音 克隆 sovits

本文主要是介绍AI克隆语音(基于GPT-SoVITS),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

概述

使用GPT-SoVITS训练声音模型,实现文本转语音功能。可以模拟出语气,语速。如果数据质量足够高,可以达到非常相似的结果。相比于So-VITS-SVC需要的显卡配置更低,数据集更小(我的笔记本NVIDIA GeForce RTX 4050 Laptop GPU跑起来毫无压力。)

使用

GPT-SoVITS项目地址(https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI)
项目集成了干声提取工具,声音剪切工具,语音文本校对工具等工具,你只需要一段高质量的语音即可在本地克隆声音。

下载项目

下载项目到本地,解压并打开,双击go-webui.bat,会打开控制台,稍等片刻会打开浏览器
image.png

image.png
有两个标签页(前两个,第三个还没做好),一个是数据处理,得到干声数据集和语音文本。
一个是模型训练和推理。
数据处理所有参数都默认,只需要选择对应的数据文件路径即可。

数据处理

输入文件路径为绝对路径,输出的文件路径默认在该项目文件夹目录下。数据处理目标是得到一个语音文本文件和一个声音数据集。

分离干声

image.png
这一步用于分离干声,选中该选项稍等一会会打开一个网页用于分离干声,输出格式选择wav。选择输入输出目录点击转换即可。

image.png

音频切分

image.png

语音降噪

如果是自己的录音可能会有噪音需要降噪处理,如果是网上下载的歌曲干声不用进行该操作。
image.png

语音文本识别

识别处理好的声音数据,并得到对应的文本文件。
image.png

语音文本校对

注意输入路径是文件的路径,不是文件夹的路径。选中后会打开一个页面用于校对语音文本。
image.png

image.png
有些识别的字可能有问题,需要手动去修改一下,以及一些停顿处需要增加或删除标点符号。修改后需要点击Submit Text保存。

训练和推理

训练集格式化

填写三个打星号的文本框即可,其他不用管。然后点击最下方的开启一键三连,等待完成之后就可以进行训练。
image.png
image.png

模型训练

image.png
batch_size:计算一次更新梯度的样本数量,影响训练速度。
total_epoch:训练轮次,影响模型质量,理论上来说越大越好。
GPT模型对结果影响不大,训练个10-15轮即可。SoVITS可以多训练一些。
其他保持默认即可。

推理

image.png
刷新一下模型路径,选择训练好的模型。选择数字最大的即可。选中开启TTS推理页面。
image.png
刷新模型路径,选择匹配的GPT和SoVITS模型。
image.png
需要上传说话者一段3-10秒内的声音片段。这个声音片段会影响生成结果的语速和情绪(这个声音片段对结果影响很大)。
image.png
上传的音频文本和语言类型。

需要生成的语音文本

标点符号会影响生成结果的停顿。把文本粘贴进去,选择语言和文本切割方式,参数默认,点击合成语音等待生成结果。即使训练的数据没有英文和日文,也可以生成英文和日文音频。
image.png

文本切割工具

和上面的文本切割功能一样。将大段文字切割。
image.png

注意

模型训练过程中GPU会发热,请在有人监控的情况下进行,温度过高及时停止(在控制台输入CTRL+C)以防发生意外。

这篇关于AI克隆语音(基于GPT-SoVITS)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/905041

相关文章

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

使用Python实现文本转语音(TTS)并播放音频

《使用Python实现文本转语音(TTS)并播放音频》在开发涉及语音交互或需要语音提示的应用时,文本转语音(TTS)技术是一个非常实用的工具,下面我们来看看如何使用gTTS和playsound库将文本... 目录什么是 gTTS 和 playsound安装依赖库实现步骤 1. 导入库2. 定义文本和语言 3

Spring AI ectorStore的使用流程

《SpringAIectorStore的使用流程》SpringAI中的VectorStore是一种用于存储和检索高维向量数据的数据库或存储解决方案,它在AI应用中发挥着至关重要的作用,本文给大家介... 目录一、VectorStore的基本概念二、VectorStore的核心接口三、VectorStore的

C#原型模式之如何通过克隆对象来优化创建过程

《C#原型模式之如何通过克隆对象来优化创建过程》原型模式是一种创建型设计模式,通过克隆现有对象来创建新对象,避免重复的创建成本和复杂的初始化过程,它适用于对象创建过程复杂、需要大量相似对象或避免重复初... 目录什么是原型模式?原型模式的工作原理C#中如何实现原型模式?1. 定义原型接口2. 实现原型接口3

讯飞webapi语音识别接口调用示例代码(python)

《讯飞webapi语音识别接口调用示例代码(python)》:本文主要介绍如何使用Python3调用讯飞WebAPI语音识别接口,重点解决了在处理语音识别结果时判断是否为最后一帧的问题,通过运行代... 目录前言一、环境二、引入库三、代码实例四、运行结果五、总结前言基于python3 讯飞webAPI语音

Spring AI集成DeepSeek三步搞定Java智能应用的详细过程

《SpringAI集成DeepSeek三步搞定Java智能应用的详细过程》本文介绍了如何使用SpringAI集成DeepSeek,一个国内顶尖的多模态大模型,SpringAI提供了一套统一的接口,简... 目录DeepSeek 介绍Spring AI 是什么?Spring AI 的主要功能包括1、环境准备2

Spring AI集成DeepSeek实现流式输出的操作方法

《SpringAI集成DeepSeek实现流式输出的操作方法》本文介绍了如何在SpringBoot中使用Sse(Server-SentEvents)技术实现流式输出,后端使用SpringMVC中的S... 目录一、后端代码二、前端代码三、运行项目小天有话说题外话参考资料前面一篇文章我们实现了《Spring

Spring AI与DeepSeek实战一之快速打造智能对话应用

《SpringAI与DeepSeek实战一之快速打造智能对话应用》本文详细介绍了如何通过SpringAI框架集成DeepSeek大模型,实现普通对话和流式对话功能,步骤包括申请API-KEY、项目搭... 目录一、概述二、申请DeepSeek的API-KEY三、项目搭建3.1. 开发环境要求3.2. mav

C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

《C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)》本文主要介绍了C#集成DeepSeek模型实现AI私有化的方法,包括搭建基础环境,如安装Ollama和下载DeepS... 目录前言搭建基础环境1、安装 Ollama2、下载 DeepSeek R1 模型客户端 ChatBo

Spring AI集成DeepSeek的详细步骤

《SpringAI集成DeepSeek的详细步骤》DeepSeek作为一款卓越的国产AI模型,越来越多的公司考虑在自己的应用中集成,对于Java应用来说,我们可以借助SpringAI集成DeepSe... 目录DeepSeek 介绍Spring AI 是什么?1、环境准备2、构建项目2.1、pom依赖2.2