OA0
OA0 是一个探索 AI 的社区
现在注册
已注册用户请  登录
OA0  ›  代码  ›  TTS — Coqui 推出的开源文本转语音与语音合成工具箱

TTS — Coqui 推出的开源文本转语音与语音合成工具箱

 
  git ·  2026-02-16 13:15:18 · 5 次点击  · 0 条评论  

🐸Coqui.ai 新闻

  • 📣 ⓍTTSv2 现已发布,支持 16 种语言,各项性能全面提升。
  • 📣 ⓍTTS 微调代码已发布。查看 示例配方
  • 📣 ⓍTTS 现已支持流式合成,延迟低于 200 毫秒。
  • 📣 ⓍTTS,我们支持 13 种语言的生产级 TTS 模型已发布:博客文章演示文档
  • 📣 🐶Bark 现已支持无约束语音克隆推理。文档
  • 📣 您可以在 🐸TTS 中使用 约 1100 个 Fairseq 模型
  • 📣 🐸TTS 现已支持 🐢Tortoise,推理速度更快。文档
  • 📣 基于提示的语音生成——Prompt to Voice——已在 Coqui Studio 上线!!-博客文章
  • 📣 基于融合的语音生成——Voice fusion——已在 Coqui Studio 上线。
  • 📣 语音克隆已在 Coqui Studio 上线。
## **🐸TTS 是一个用于高级文本到语音生成的库。** 🚀 支持 **1100 多种语言**的预训练模型。 🛠️ 提供工具,用于在任何语言中训练新模型和微调现有模型。 📚 提供数据集分析和整理的实用程序。 ______________________________________________________________________ [![Discord](https://img.shields.io/discord/1037326658807533628?color=%239B59B6&label=chat%20on%20discord)](https://discord.gg/5eXr5seRrv) [![License]()](https://opensource.org/licenses/MPL-2.0) [![PyPI version](https://badge.fury.io/py/TTS.svg)](https://badge.fury.io/py/TTS) [![Covenant](https://camo.githubusercontent.com/7d620efaa3eac1c5b060ece5d6aacfcc8b81a74a04d05cd0398689c01c4463bb/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f436f6e7472696275746f72253230436f76656e616e742d76322e3025323061646f707465642d6666363962342e737667)](https://github.com/coqui-ai/TTS/blob/master/CODE_OF_CONDUCT.md) [![Downloads](https://pepy.tech/badge/tts)](https://pepy.tech/project/tts) [![DOI](https://zenodo.org/badge/265612440.svg)](https://zenodo.org/badge/latestdoi/265612440) ![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/aux_tests.yml/badge.svg) ![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/data_tests.yml/badge.svg) ![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/docker.yaml/badge.svg) ![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/inference_tests.yml/badge.svg) ![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/style_check.yml/badge.svg) ![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/text_tests.yml/badge.svg) ![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/tts_tests.yml/badge.svg) ![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/vocoder_tests.yml/badge.svg) ![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/zoo_tests0.yml/badge.svg) ![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/zoo_tests1.yml/badge.svg) ![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/zoo_tests2.yml/badge.svg) [![Docs]()](https://tts.readthedocs.io/en/latest/)

💬 提问渠道

请使用我们专门的渠道进行提问和讨论。公开分享帮助更有价值,可以让更多人受益。

类型 平台
🚨 Bug 报告 GitHub Issue Tracker
🎁 功能请求与想法 GitHub Issue Tracker
👩‍💻 使用问题 GitHub Discussions
🗯 一般讨论 GitHub DiscussionsDiscord

🔗 链接与资源

类型 链接
💼 文档 ReadTheDocs
💾 安装 TTS/README.md
👩‍💻 贡献指南 CONTRIBUTING.md
📌 路线图 主要开发计划
🚀 已发布模型 TTS 发布版本实验模型
📰 论文 TTS 论文

🥇 TTS 性能

带下划线的 "TTS" 和 "Judy" 是 内部 🐸TTS 模型,未开源发布。它们在此展示潜力。前缀带点(.Jofish .Abe 和 .Janice)的模型是真实人声。

特性

  • 用于文本到语音任务的高性能深度学习模型。
    • 文本到频谱图模型(Tacotron, Tacotron2, Glow-TTS, SpeedySpeech)。
    • 用于高效计算说话人嵌入的说话人编码器。
    • 声码器模型(MelGAN, Multiband-MelGAN, GAN-TTS, ParallelWaveGAN, WaveGrad, WaveRNN)。
  • 快速高效的模型训练。
  • 在终端和 Tensorboard 上提供详细的训练日志。
  • 支持多说话人 TTS。
  • 高效、灵活、轻量级但功能完整的 Trainer API
  • 已发布且可立即使用的模型。
  • 用于整理文本到语音数据集的工具,位于 dataset_analysis 目录下。
  • 使用和测试模型的实用程序。
  • 模块化(但不过度)的代码库,便于实现新想法。

模型实现

频谱图模型

端到端模型

注意力方法

  • Guided Attention: 论文
  • Forward Backward Decoding: 论文
  • Graves Attention: 论文
  • Double Decoder Consistency: 博客
  • Dynamic Convolutional Attention: 论文
  • Alignment Network: 论文

说话人编码器

声码器

语音转换

您也可以帮助我们实现更多模型。

安装

🐸TTS 在 Ubuntu 18.04 上经过测试,要求 python >= 3.9, < 3.12

如果您只对使用已发布的 🐸TTS 模型合成语音感兴趣,从 PyPI 安装是最简单的选择。

pip install TTS

如果您计划编码或训练模型,请克隆 🐸TTS 并在本地安装。

git clone https://github.com/coqui-ai/TTS
pip install -e .[all,dev,notebooks]  # 选择相关的额外选项

如果您使用的是 Ubuntu (Debian),也可以运行以下命令进行安装。

$ make system-deps  # 适用于 Ubuntu (Debian)。如果您使用其他操作系统,请告知我们。
$ make install

如果您使用的是 Windows,👑@GuyPaddock 在此处写了安装说明 here

Docker 镜像

您也可以尝试使用 Docker 镜像运行 TTS 而无需安装。
只需运行以下命令,您就可以在不安装的情况下运行 TTS。

docker run --rm -it -p 5002:5002 --entrypoint /bin/bash ghcr.io/coqui-ai/tts-cpu
python3 TTS/server/server.py --list_models # 获取可用模型列表
python3 TTS/server/server.py --model_name tts_models/en/vctk/vits # 启动服务器

然后您就可以在 这里 享受 TTS 服务器了。
有关 Docker 镜像的更多详细信息(如 GPU 支持),请参阅 此处

使用 🐸TTS 合成语音

🐍 Python API

运行多说话人多语言模型

import torch
from TTS.api import TTS

# 获取设备
device = "cuda" if torch.cuda.is_available() else "cpu"

# 列出可用的 🐸TTS 模型
print(TTS().list_models())

# 初始化 TTS
tts = TTS("tts_models/multilingual/multi-dataset/xtts_v2").to(device)

# 运行 TTS
# ❗ 由于此模型是多语言语音克隆模型,我们必须设置目标 speaker_wav 和 language
# 文本转语音,输出振幅值列表
wav = tts.tts(text="Hello world!", speaker_wav="my/cloning/audio.wav", language="en")
# 文本转语音到文件
tts.tts_to_file(text="Hello world!", speaker_wav="my/cloning/audio.wav", language="en", file_path="output.wav")

运行单说话人模型

# 使用目标模型名称初始化 TTS
tts = TTS(model_name="tts_models/de/thorsten/tacotron2-DDC", progress_bar=False).to(device)

# 运行 TTS
tts.tts_to_file(text="Ich bin eine Testnachricht.", file_path=OUTPUT_PATH)

# 使用 YourTTS 进行英语、法语和葡萄牙语语音克隆的示例
tts = TTS(model_name="tts_models/multilingual/multi-dataset/your_tts", progress_bar=False).to(device)
tts.tts_to_file("This is voice cloning.", speaker_wav="my/cloning/audio.wav", language="en", file_path="output.wav")
tts.tts_to_file("C'est le clonage de la voix.", speaker_wav="my/cloning/audio.wav", language="fr-fr", file_path="output.wav")
tts.tts_to_file("Isso é clonagem de voz.", speaker_wav="my/cloning/audio.wav", language="pt-br", file_path="output.wav")

语音转换示例

source_wav 中的声音转换为 target_wav 中的声音。

tts = TTS(model_name="voice_conversion_models/multilingual/vctk/freevc24", progress_bar=False).to("cuda")
tts.voice_conversion_to_file(source_wav="my/source.wav", target_wav="my/target.wav", file_path="output.wav")

结合语音转换模型进行语音克隆的示例。

这样,您可以使用 🐸TTS 中的任何模型来克隆声音。


tts = TTS("tts_models/de/thorsten/tacotron2-DDC")
tts.tts_with_vc_to_file(
    "Wie sage ich auf Italienisch, dass ich dich liebe?",
    speaker_wav="target/speaker.wav",
    file_path="output.wav"
)

使用 约 1100 种语言的 Fairseq 模型 🤯 进行文本到语音的示例。

对于 Fairseq 模型,请使用以下名称格式:tts_models/<lang-iso_code>/fairseq/vits
您可以在此处找到语言 ISO 代码 here
并在此处了解 Fairseq 模型 here

```python

使用实时语音转换的 TTS

api = TTS("tts_models/deu/fairseq/vits")

5 次点击  ∙  0 人收藏  
登录后收藏  
0 条回复
关于 ·  帮助 ·  PING ·  隐私 ·  条款   
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
耗时 21 ms
Developed with Cursor