赞
踩
本专栏包括AI应用开发相关内容分享,包括不限于AI算法部署实施细节、AI应用后端分析服务相关概念及开发技巧、AI应用后端应用服务相关概念及开发技巧、AI应用前端实现路径及开发技巧
适用于具备一定算法及Python使用基础的人群
语音合成,顾名思义。
ChatTTS是专门为对话场景设计的文本转语音模型。支持英文和中文两种语言。最大的模型使用了10万小时以上的中英文数据进行训练。在HuggingFace中开源的版本为4万小时训练且未SFT的版本。
整体感觉语音还是比较自然。
对话式 TTS
: ChatTTS针对对话式任务进行了优化,支持多说话人。
细粒度控制
: 模型能够预测和控制细粒度的韵律特征,包括笑声、停顿和插入词。
更好的韵律
: 韵律方面超越了大部分开源TTS模型。同时提供预训练模型,支持进一步的研究。
源码地址:
https://github.com/2noise/ChatTTS
环境部署:
conda create -n ChatTTS python=3.9 # 创建新的虚拟环境
source activate ChatTTS # 激活新建的虚拟环境
pip install -r requirements.txt #安装项目需要的库
使用代码:
import ChatTTS from wave import Wave_write import numpy as np base_path = r'项目路径' chat = ChatTTS.Chat() chat.load_models(source='local',local_path=base_path) # 输入文本 inputs = """hello world""" # 笑声、停顿等按需要添加的输入文本中具体位置 params_refine_text = { 'prompt': '[oral_2][laugh_0][break_4]' } wavs = chat.infer(inputs, params_refine_text=params_refine_text)[0] sample_rate = 24000 # 转换数据类型并调整到合适的范围 # audio_data_rescaled = (wavs * 32767).astype(np.int16).flatten() audio_data_rescaled = (wavs * 28000).astype(np.int16).flatten() # 创建并打开一个wav文件用于写入 with Wave_write('test4.wav') as wave_file: wave_file.setparams((1, 2, sample_rate, len(audio_data_rescaled), 'NONE', 'not compressed')) wave_file.writeframes(audio_data_rescaled.tobytes())
更多信息和模型可自行在互联网、hf等网站进行下载。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。