Home
Login

首个生产级开源文本转语音模型,支持情感夸张控制和零样本语音合成

MITPython 8.7kresemble-aichatterbox Last Updated: 2025-06-13

Chatterbox - 开源文本转语音模型

项目概述

Chatterbox是由Resemble AI开发的首个生产级开源文本转语音(TTS)模型。该项目基于MIT许可证发布,是一个具有突破性的语音合成解决方案,在多项基准测试中表现出色,甚至在并排评估中持续优于ElevenLabs等领先的闭源系统。

核心特性

🎯 技术优势

  • 最先进的零样本TTS技术:无需训练即可生成高质量语音
  • 5亿参数Llama骨干网络:强大的模型架构保证生成质量
  • 独特的情感夸张/强度控制:业界首个支持情感控制的开源TTS模型
  • 超稳定的对齐感知推理:确保生成语音的稳定性和一致性
  • 大规模训练数据:基于50万小时的清洁数据训练
  • 内置水印功能:所有生成的音频都包含Perth感知阈值水印

🚀 性能表现

  • 优于ElevenLabs:在Podonos平台的对比测试中表现更优
  • 低延迟:商业版本支持低于200ms的超低延迟
  • 高质量合成:基于大规模清洁数据训练,确保输出质量

应用场景

Chatterbox适用于多种应用场景:

  • 内容创作:模因制作、视频配音
  • 游戏开发:角色语音、游戏旁白
  • AI代理:智能助手、聊天机器人
  • 交互媒体:互动应用、教育内容
  • 语音转换:声音风格转换

安装和使用

快速安装

pip install chatterbox-tts

基础使用示例

import torchaudio as ta
from chatterbox.tts import ChatterboxTTS

# 初始化模型
model = ChatterboxTTS.from_pretrained(device="cuda")

# 生成语音
text = "Ezreal and Jinx teamed up with Ahri, Yasuo, and Teemo to take down the enemy's Nexus in an epic late-game pentakill."
wav = model.generate(text)
ta.save("test-1.wav", wav, model.sr)

# 使用音频提示进行语音克隆
AUDIO_PROMPT_PATH = "YOUR_FILE.wav"
wav = model.generate(text, audio_prompt_path=AUDIO_PROMPT_PATH)
ta.save("test-2.wav", wav, model.sr)

参数调优指南

通用使用(TTS和语音代理)

  • 默认设置exaggeration=0.5, cfg=0.5 适用于大多数提示
  • 快速语音风格:如果参考说话者语速较快,可将 cfg 降低到约 0.3 以改善节奏

表达性或戏剧性语音

  • 低CFG值:尝试较低的 cfg 值(如 ~0.3
  • 高夸张度:将 exaggeration 增加到约 0.7 或更高
  • 速度补偿:较高的 exaggeration 会加快语音速度,降低 cfg 有助于用更慢、更深思熟虑的节奏进行补偿

技术架构

模型架构

  • 骨干网络:基于Llama架构的5亿参数模型
  • 训练数据:50万小时的高质量清洁数据
  • 推理优化:对齐感知推理技术确保稳定性

安全特性

  • 内置水印:使用Resemble AI的Perth(感知阈值)水印技术
  • 检测精度:水印在MP3压缩、音频编辑和常见操作后仍能保持近100%的检测精度
  • 透明度:开源模型提供完全的透明度和控制权

项目资源

商业支持

对于需要扩展或针对更高精度进行调优的用户,Resemble AI提供竞争力定价的TTS服务,具有以下特点:

  • 可靠性能:稳定的生产级服务
  • 超低延迟:低于200ms的响应时间
  • 适用场景:代理、应用程序或交互媒体的生产使用

使用须知

本模型应当负责任地使用,不应用于恶意目的。训练提示来源于互联网上的免费可用数据。

贡献与社区

作为开源项目,Chatterbox欢迎社区贡献。开发者可以通过GitHub参与项目开发,提交问题报告或功能建议。

Star History Chart