开源TTS语音克隆神器GPT-SoVITS_V2版本地整合包部署与远程使用生成音频

news/2024/11/30 2:28:50/

文章目录

    • 前言
    • 1.GPT-SoVITS V2下载
    • 2.本地运行GPT-SoVITS V2
    • 3.简单使用演示
    • 4.安装内网穿透工具
      • 4.1 创建远程连接公网地址
    • 5. 固定远程访问公网地址

前言

本文主要介绍如何在Windows系统电脑使用整合包一键部署开源TTS语音克隆神器GPT-SoVITS,并结合cpolar内网穿透工具轻松实现远程访问,训练声音模型与生成音频。无需公网IP,也不要准备域名和服务器。

随着AI配音技术不断迭代,我们现在在视频平台经常能看到使用各种名人或是明星的声音,通过AI制作后达到以假乱真效果的各种搞笑视频或是音乐作品等娱乐内容。这个技术的原理是通过数据训练后,使用强大的少样本语音转换与语音合成方式来达到语音克隆的目的。

而在这些开源TTS语音克隆项目中,由花儿不哭大佬研发的GPT-SoVITS非常具有代表性,在github也上获得了35K+ star的好评,项目地址:https://github.com/RVC-Boss/GPT-SoVITS 大家可以去支持一下。而本次要分享的是更新后的V2版本,支持语种有中日英韩粤五种,新增语速调节,无参考文本模式,更好的混合语种切分,音色混合。而且对于Windows系统用户还推出了整合包,下载后解压缩即可快速体验,简直太方便了。

不过像这种AI项目,一般都对显卡的要求较高,对普通用户来说一般只能在一台高配置电脑上本地部署,如果想在外出时也能随时访问本地部署的项目,调试训练模型或是分享给好友简单体验一下就很难办了。但其实只要借助内网穿透工具的帮助,这个问题也很简单,下面就来具体讲解一下如何操作。

image-20241108171803594

1.GPT-SoVITS V2下载

本例演示环境为Windows11专业版,8G显卡,16G内存。

首先,我们需要在下面的地址下载GPT-SoVITS V2的Windows整合包:

https://www.yuque.com/baicaigongchang1145haoyuangong/ib3g1e/dkxgpiy9zb96hob4#KTvnO

大佬提供了多种下载方式:

image-20241108171731194

我这里下载的是V2版本,下载好后,解压缩后得到GPT-SoVITS-v2-240821文件夹。

2.本地运行GPT-SoVITS V2

打开 GPT-SoVITS-v2-240821 文件夹,双击名为go-webui的bat格式文件即可启动服务:

image-20241108172017839

服务启动后会弹出一个cmd终端窗口,然后会在浏览器中打开GPT-SoVITS V2的webui网页页面,我们接下来可以在这里制作AI音频,但要注意不要关掉cmd终端窗口,因为它才是服务的本体,网页端只是操作界面。

image-20241108172723878

image-20241108172824373

3.简单使用演示

在GPT-SoVITS V2的webui网页页面,我们可以看到默认展示的是0-前置数据集获工具界面,旁边是1-GPT-SoVITS-TTS界面和2-GPT-SoVITS-变声界面

image-20241108173017766

我们可以在0-前置数据集获工具界面进行人声伴奏分离&去混响去延迟,语音切分、降噪等操作,来对要使用的语音进行训练,生成效果更逼真的语音模型。

image-20241108173301904

而如果想马上快速体验一下TTS语音克隆,我们可以点击旁边的1-GPT-SoVITS-TTS界面,选择下面的1C-推理,点击开启TTS推理WebUI:

image-20241108173619074

稍等一下后,会在浏览器中新打开一个TTS推理网页,我们可以在这里上传原始音频,时长3到10秒即可,超过会报错。然后可以在下方填写想要合成的目标文本和语种模式:

image-20241108173957977

输入好所需信息后,点击合成语音按钮,服务端进行处理,稍后在webui界面即可看到生成的音频:

image-20241108174655802

image-20241108174751702

可以点击播放进行试听,点击右上角的下载标志即可将生成的AI音频下载到本地。

而刚才提到的2-GPT-SoVITS-变声功能目前还没有推出,可以期待一下作者大佬下次的更新。

image-20241108175825262

4.安装内网穿透工具

此时,我们已经成功在Windows电脑中本地部署了GPT-SoVITS V2,但就像开篇时说的那样,我们在这台配置高的电脑上部署了服务后,只能在同一个局域网内使用,有一定局限性。如果想外出时也能远程访问家中部署的GPT-SoVITS或是其他服务,应该怎么办呢?

很简单,只要在电脑中再安装一个cpolar内网穿透工具就能轻松实现远程访问内网主机中部署的服务了,接下来介绍一下如何安装cpolar内网穿透。

首先进入cpolar官网,点击免费使用注册一个账号,并下载最新版本的Cpolar。

cpolar官网地址: https://www.cpolar.com

img

登录成功后,点击下载Cpolar到本地并安装(一路默认安装即可)本教程选择下载Windows版本。

image-20240319175308664

Cpolar安装成功后,在浏览器上访问http://localhost:9200,使用cpolar账号登录,登录后即可看到Cpolar web 配置界面,结下来在web 管理界面配置即可。

img

4.1 创建远程连接公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了: GPTSoVITS 注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:9874
  • 域名类型:随机域名
  • 地区:选择China Top
  • 高级:Http Auth:user:123(本例中用户名user 密码123)

点击保存

image-20241108181023458

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑(异地)上,使用任意一个地址在浏览器中访问即可。

image-20241108181127944

如下图所示,输入设置的用户名及密码(也可以不设置高级,就无需用户名密码直接登入,安全起见,建议配置高级)

image-20241108181202876

登录后可以看到成功实现使用公网地址异地远程访问本地部署的GPT-SoVITS V2语音克隆工具的webui界面!

image-20241108181319948

小结

为了方便演示,我们在上边的操作过程中使用了cpolar生成的HTTP公网地址隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用,然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

如果有长期远程访问本地部署的语音克隆软件或者其他本地部署的服务的需求,但又不想每天重新配置公网地址,还想地址好看又好记,那我推荐大家选择使用固定的二级子域名方式来远程访问,带宽会更快,使用cpolar在其他用途还可以保留多个子域名,支持多个cpolar在线进程。(根据cpolar套餐而定)

5. 固定远程访问公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化。

登录cpolar官网,点击左侧的预留,选择保留二级子域名,地区选择china vip,然后设置一个二级子域名名称,填写备注信息,点击保留。

image-20241108181626103

保留成功后复制保留的二级子域名地址:myyuyin

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

image-20241108181748784

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China VIP

点击更新

image-20241108181834026

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

image-20241108181951821

最后,我们使用固定的公网地址在浏览器打开可以看到访问成功,这样一个永久不会变化的公网网址就设置好了:

image-20241108182724843

接下来我们就可以随时随地异地来使用本地部署的GPT-SoVITS啦,也可以把这个网址分享给身边的好友体验!但是要注意,作者也发布了使用须知,在任何音视频网站发布基于 GPT-SoVITS 项目或本整合包制作的作品时,需要对GPT-SOVITS工具进行署名,否则违反开源协议。并附带免责声明:本作品仅作为娱乐目的发布,可能造成的后果与使用的语音合成项目的作者、贡献者无关。


http://www.ppmy.cn/news/1551073.html

相关文章

queue 和 Stack

import scala.collection.mutable //queue:队列.排队打饭.... //特点:先进先出 //Stack:栈 //特点:先进后出 class ob5 { def main(args: Array[String]): Unit { val q1 mutable.Queue(1) q1.enqueue(2)//入队 q1.enqueue(3)//入队 q1.enqueue(4)…

深度学习day7-BP之梯度下降,过拟合与欠拟合

3 BP之梯度下降 梯度下降算法的目标是找到使损失函数L最小的参数,核心是沿着损失函数梯度的负方向更新参数,逐步逼近局部或者全局最优解,使模型更好地拟合训练数据。 1 数学描述 $$ w_{ij}^{new} w_{ij}^{old} - \alpha \frac{\partial E}…

【Linux】Linux 内存管理机制

前言 Linux 的内存管理机制是一个复杂而高效的系统,旨在确保系统资源的高效利用,同时提供良好的性能和响应能力。本文主要介绍 Linux 内存管理的主要组件和机制。 虚拟内存 概念: 每个进程在 Linux 中拥有自己的虚拟地址空间,这使得进程之…

分布式链路追踪系统

系统现状及需要解决的问题 系统异常无法接收告警 系统总会有这样或者那样的问题,同样的现象可能是不同的系统问题引起的,解决这些问题是研发的基本职责之一。 但是解决问题的前提是发现问题,系统告警就是我们发现感知问题的重要的手段&…

html+css+js打字游戏网页

1. 效果 2. html代码 <!doctype html> <html><head><meta charset"utf-8" /><title>打字练习</title><!--引入第三方动画库--><link rel"stylesheet" href"animate.css"><style>html {h…

在CodeIgniter中创建库

在CodeIgniter中创建库&#xff08;Library&#xff09;是一个很好的方法来封装常用的功能&#xff0c;使其在不同的控制器或视图中重用。下面是如何在CodeIgniter中创建和使用库的步骤&#xff1a; 1. 创建库文件 首先&#xff0c;在 application/libraries 目录下创建一个新…

Python爬虫爬取网页小说

分析 注意&#xff1a;不同小说url不同&#xff0c;不同小说需采用的正则也不同 1.安装requests包 pip install requests2.导入必要的库 re模块用于进行正则表达式相关的操作&#xff0c;比如使用正则表达式在获取到的网页文本内容中匹配提取特定格式的信息。 resquests模块用…

【NLP】第三章:长短期记忆网络LSTM

三、长短期记忆网络LSTM 循环神经网络的特点就是拥有"记忆"&#xff0c;就是考虑历史信息&#xff0c;从历史信息中获取辅助当前的决策。 按记忆能力分&#xff1a;simple rnn(就是前面讲的简单rnn结构)、长短期记忆网络(LSTM)、门控循环单元(GRU)、以及双向RNN(Bi-…