kantts docker化

kan-tts docker本地化

环境安装

下载docker镜像(python3.8的)

registry.cn-hangzhou.aliyuncs.com/modelscope-repo/modelscope:ubuntu20.04-cuda11.8.0-py38-torch2.0.1-tf2.13.0-1.9.2

安装基础模型

pip install modelscope

安装语音模型

pip install "modelscope[audio]" -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html

自动标注

安装最新版tts-autolabel

# 运行此代码块安装

tts-autolabel import sys !{sys.executable} -m pip install -U tts-autolabel -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html

如果网不行,指定阿里镜像源

!{sys.executable} -m pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/

自动标注

from modelscope.tools import run_auto_labelinput_wav = "./test_wavs/"
output_data = "./output_training_data/"ret, report = run_auto_label(input_wav=input_wav, work_dir=output_data, resource_revision="v1.0.7")

微调

from modelscope.metainfo import Trainers
from modelscope.trainers import build_trainer
from modelscope.utils.audio.audio_utils import TtsTrainTypepretrained_model_id = 'damo/speech_personal_sambert-hifigan_nsf_tts_zh-cn_pretrain_16k'dataset_id = "./output_training_data/"
pretrain_work_dir = "./pretrain_work_dir/"# 训练信息,用于指定需要训练哪个或哪些模型,这里展示AM和Vocoder模型皆进行训练
# 目前支持训练:TtsTrainType.TRAIN_TYPE_SAMBERT, TtsTrainType.TRAIN_TYPE_VOC
# 训练SAMBERT会以模型最新step作为基础进行finetune
train_info = {TtsTrainType.TRAIN_TYPE_SAMBERT: {  # 配置训练AM(sambert)模型'train_steps': 202,               # 训练多少个step 'save_interval_steps': 200,       # 每训练多少个step保存一次checkpoint'log_interval': 10               # 每训练多少个step打印一次训练日志}
}# 配置训练参数,指定数据集,临时工作目录和train_info
kwargs = dict(model=pretrained_model_id,                  # 指定要finetune的模型model_revision = "v1.0.6",work_dir=pretrain_work_dir,                 # 指定临时工作目录train_dataset=dataset_id,                   # 指定数据集idtrain_type=train_info                       # 指定要训练类型及参数
)trainer = build_trainer(Trainers.speech_kantts_trainer,default_args=kwargs)trainer.train()

其中

pretrained_model_id = 'damo/speech_personal_sambert-hifigan_nsf_tts_zh-cn_pretrain_16k'

要下载下来

最好提取下载,然后pretrained_model_id后面就等于下面下载的地址

# 克隆预训练模型

git clone https://www.modelscope.cn/damo/speech_personal_sambert-hifigan_nsf_tts_zh-cn_pretrain_16k.git

拉取下来,然后合成

合成模型

import os
from modelscope.models.audio.tts import SambertHifigan
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasksmodel_dir = os.path.abspath("./pretrain_work_dir")custom_infer_abs = {'voice_name':'F7','am_ckpt':os.path.join(model_dir, 'tmp_am', 'ckpt'),'am_config':os.path.join(model_dir, 'tmp_am', 'config.yaml'),'voc_ckpt':os.path.join(model_dir, 'orig_model', 'basemodel_16k', 'hifigan', 'ckpt'),'voc_config':os.path.join(model_dir, 'orig_model', 'basemodel_16k', 'hifigan','config.yaml'),'audio_config':os.path.join(model_dir, 'data', 'audio_config.yaml'),'se_file':os.path.join(model_dir, 'data', 'se', 'se.npy')
}
kwargs = {'custom_ckpt': custom_infer_abs}model_id = SambertHifigan(os.path.join(model_dir, "orig_model"), **kwargs)inference = pipeline(task=Tasks.text_to_speech, model=model_id)
output = inference(input="今天的天气真不错")import IPython.display as ipd
ipd.Audio(output["output_wav"], rate=16000)

参考地址:

环境安装

SambertHifigan个性化语音合成-中文-预训练-16k

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/103475.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RunnerGo测试平台,无代码玩转UI自动化测试

首先需要进入官网,RunnerGo支持开源,可以自行下载安装,也可以点击右上角体验企业版按钮快速体验 点击体验企业版进入工作台后可以点击页面上方的UI自动化 进入到测试页面 创建元素 我们可以在元素管理中创建我们测试时需要的元素 这里我们以…

Xcode升级到15.0 解决DT_TOOLCHAIN_DIR问题

根据个人开发遇到的问题做的总结,公司要求Xcode 14.2 ,Swift 5.7开发,由于升级了Mac 14.0系统后,Xcode 14.2不能使用,解决方案目前有2个 一、在原来Xcode 14.2 的显示包内容,如图 二、升级到Xcode的15.0后…

CentOS系统/root根目录扩容(扩展逻辑卷)

具体操作步骤 1、查看本机磁盘环境挂载情况 2、添加磁盘分区 3、开始扩容 4、同步到文件系统 1、查看本机磁盘环境挂载情况 [rooticon ~]# df -lh 可以看到/dev/mapper/centos-root 路径下容量为50G,我们要给这个路径下的容量扩容:[rooticon ~]# lsblk…

【Jenkins】调用API构建并钉钉通知

文章目录 Jenkins API介绍提交作业带参数的作业API 令牌 Shell调用代码 Jenkins API介绍 Jenkins 提供了远程访问 API。目前它有三种格式: XML JSON Python 远程访问 API 形式为"…/api/" 例如, Jenkins 安装位于https://ci.jenkins.io&a…

协同育人|电巢携手武汉软件工程职业学院项目实训顺利开班!

为深化校企合作,产教融合助力新工科建设,提升学生工程实践能力,电巢工程能力实训班按照不同岗位类别,匹配对应的企业岗位任职能力要求对学生开展分级培养,以产业需求为导向,培养创新型、应用型人才。 10月…

vscode中注释多行bash脚本

选择你要注释的行,右击所选的行,从命令调色板中选择添加行注释。 选择后,所选的行将被注释为#,如下图所示。 选择你想取消注释的行,在所选行上点击右键,从命令调色板中选择删除区块注释,就可以从…

无人值守配电室变电所运维解决方案

随着电力系统数字化、智能化的不断发展,无人值守配电室变电所已经成为一种趋势。为了确保变电所的安全稳定运行,本文提出了一种无人值守配电室变电所运维解决方案。 一、背景介绍 力安科技电易云无人值守配电室变电所是指通过远程监控和智能化电力数…

如何在一个传统的html中,引入vueJs并使用vue复制组件?

如何在一个传统的html中,引入vueJs并使用vue复制组件? 1.1 引言1.2 背景1.3 解决方案1.3.1 解决方案一:直接使用clipboard(不推荐仅供参考学习)1.3.2 解决方案二:封装指令js库后使用 (推荐) 1.1 引言 这篇博文主要分享如何在一个…

【AUTOSAR中断管理】TC3XX中断系统介绍

摘要 这段文本主要介绍了AURIX TC3XX的中断系统(Interrupt Router,简称IR)以及中断注册的过程以及举例说明中断机制。 AURIX TC3XX 中断系统(Interrupt Router)介绍 流程图描述中断路由器(IR)处理服务请求并与服务提供者交互。 中断系统的作用是将service request进行…

【ivX】低调且强大的低代码平台

目录 前言 一、低代码那么多 为什么选择iVX? 二、“拼”出来的低代码平台,真的好用吗? 前言 首先我们应该明白自动编程突破可能是:领域内Mini LLM 现在的思路都是搞LLM,几乎像“大跃进”一样全民都在修炼“大模型”…

UE4和C++ 开发-C++绑定widget的方式和初始化UI

C绑定widget的方式有两种,一种是使用meta (BindWidget),一种是使用GetWidgetFromName(TEXT("")),两种方式都可以。一、meta BindWidget方式 注意这种绑定的方式UMG里面的空间名称需要与C里面声明的变量名称相同 Btn_StartU 二、GetWidge…

java学习笔记001

java基础 java语言特点 面向对象,强类型,跨平台,解释型 基本概念(JVM、JRE、JDK) JVM java虚拟机 作用:加载.class文件 JRE Java运行环境 JREJVMJava系统类库 JDK Java开发工具包 JDKJRE编译&a…

后端:推荐 2 个 .NET 操作的 Redis 客户端类库

目录 Redis特点 Redis场景 1. StackExchange.Redis 2. FreeRedis 🚀 快速入门 🎣 Master-Slave (读写分离) 💻 Pipeline (管道)示例 🌌 Redis Cluster (集群) Redis ,是一个高性能(NOSQL)的key-value数据库,Re…

docker安装sql-server数据库,使用navicat实现备份数据库导入

docker安装sql-server,使用navicat实现备份数据库导入 1、docker安装sql-server数据库2、使用navicat连接sql-server3、使用navicat导入备份数据库1、第一步:选择需要备份的数据源2、第二步 (选择备份计划,设置还原文件位置信息&a…

『Linux小程序』进度条

文章目录 缓冲区问题回车与换行的区别进度条小程序 缓冲区问题 假设有一段代码为: #include<iostream> #include<unistd.h> int main() …

漏洞复现(CVE-2023-35843)

免责声明&#xff1a; 文章中涉及的漏洞均已修复&#xff0c;敏感信息均已做打码处理&#xff0c;文章仅做经验分享用途&#xff0c;切勿当真&#xff0c;未授权的攻击属于非法行为&#xff01;文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直…

手动下载/安装Xcode的simulator

目录 前言解决方案1.获取simulator包下载地址1.1 Apple后台1.2 手动 2.使用三方下载工具下载3.使用命令安装simulator 前言 Xcode某个版本更新之后不带iOS的Simulator,导致全新下载一个Xcode后没法编译项目.公司的网又很坑,每次断掉点重试都重新下载,导致完全没法下下来.特别影…

了解什么是JWT的原理及实际应用

目录 一、介绍&讲述 ( 1 ) 什么是JWT ( 2 ) 为什么要学 二、结构 三、Jwt的工具类的使用 1. 依赖 2. 工具类 3. 过滤器 4. 控制器 5. 配置 6. 测试类 用于生成JWT 解析Jwt 复制jwt&#xff0c;并延时30分钟 测试JWT的有效时间 测试过期JWT的解析 四、…

紫光同创FPGA 多路视频处理:图像缩放+视频拼接显示,OV7725采集,提供PDS工程源码和技术支持

目录 1、前言免责声明 2、相关方案推荐FPGA图像缩放方案推荐FPGA视频拼接叠加融合方案推荐紫光同创FPGA图像采集方案推荐紫光同创FPGA图像缩放方案推荐紫光同创FPGA视频拼接方案推荐 3、设计思路框架为什么选择OV7725摄像头&#xff1f;视频源选择OV7725摄像头配置及采集动态彩…