跳转至

ChatTTS v0.2.0

为什么要使用ChatTTS

在这个信息爆炸的时代,声音的力量愈发显得重要。想象一下,你的内容可以通过自然流畅的语音传达给听众,而不是单调的文字。ChatTTS正是为此而生,它不仅能将文字转化为生动的语音,还能让你的信息以更具吸引力的方式传播。然而,许多人在选择语音合成工具时,往往面临着选择的困惑:是选择功能强大的工具,还是选择易于使用的工具?ChatTTS的出现,正是为了打破这种矛盾,提供一个既强大又易于上手的解决方案。

ChatTTS是什么

ChatTTS是一个开源的文本转语音(TTS)项目,旨在为开发者提供一个灵活且高效的语音合成工具。它利用先进的深度学习技术,能够生成自然流畅的语音,支持多种语言和口音。无论是用于游戏、教育还是其他应用场景,ChatTTS都能提供高质量的语音输出,帮助用户更好地传达信息。

入门示例

想象一下,你是一位游戏开发者,正在为你的新游戏添加语音提示。使用ChatTTS,你可以轻松地将游戏中的文本转化为语音。只需几行代码,你就能实现这一功能:

from ChatTTS import Chat

chat = Chat()
chat.load("your_model_path")
audio = chat.synthesize("欢迎来到游戏世界!")
audio.save("welcome_message.wav")

通过这个简单的示例,你不仅能为游戏增添趣味,还能提升玩家的沉浸感。

ChatTTS v0.2.0版本更新了什么

在最新的v0.2.0版本中,ChatTTS进行了多项重要更新,包括:新增简单的HTTP API示例和命令行流式推理实例,支持批量Vocos解码,适配新VQ编码器,增加ZeroShot支持,以及初步支持vLLM。此外,命令行示例中增加了--source--custom_path参数,提升了用户的使用体验。

更新日志

新增

  • 简单的HTTP API示例
  • 命令行流式推理实例
  • 批量Vocos解码(按最长token生成矩阵,其余填0)
  • 适配新VQ编码器
  • ZeroShot支持
  • 初步支持vLLM
  • 命令行示例增加--source--custom_path参数
  • 为引入微调,给Speaker类增加inplace参数
  • Chat.load函数增加experimental参数

修复

  • 流式推理的声音有间断性毛刺
  • WebUI相同条件下音频生成每次不同
  • normalizer更改tag导致模型将tag读出
  • 更换已失效的GitCode镜像
  • repetition penalty idx处理错误

优化

  • 彻底移除pretrain_models字典
  • tokenizer独立为一个类
  • normalizer将所有不支持的字符删除以免推理出错
  • 取消config文件夹,直接把设置写入代码方便更改
  • 删除流式推理末尾多余的空白
  • 在调用前设置manual_seed改为直接给multinomial提供generator
  • tokenizer从直接加载.pt改为调用自带的from_pretrained方法
  • 独立speaker类,放置spk_stat相关内容
  • Chat.load参数改为默认关闭编译
  • GPT切换到safetensor模型

依赖

  • 代码许可证更改为开源的AGPL3.0

总结

此次更新不仅增强了ChatTTS的功能,还修复了多个问题,优化了用户体验。无论是开发者还是普通用户,都能从中受益,享受到更高效、更流畅的语音合成体验。

爆款标题提案

  • “ChatTTS v0.2.0:全新功能与优化,语音合成再升级!”
  • “解锁ChatTTS v0.2.0:新增API示例与流式推理,开发者必看!”
  • “ChatTTS v0.2.0发布:ZeroShot支持与命令行增强,语音合成新纪元!”
  • “全新ChatTTS v0.2.0:优化体验,修复问题,语音合成更完美!”
  • “ChatTTS v0.2.0:开源语音合成工具的重大更新,值得一试!”