FastAPI+
React+
Vite + Python 3.11+ uv+ NVIDIA GPU (CUDA)+ Chatterbox TTS+ Docker Compose用 FastAPI 封装 Chatterbox TTS,提供 OpenAI 兼容的语音合成与声音克隆 REST API
方案简介
本方案是 travisvn/chatterbox-tts-api 项目:基于 FastAPI 将 resemble-ai 的 Chatterbox TTS 封装为 REST API,提供与 OpenAI TTS API 兼容的端点,可直接作为 OpenAI 语音接口的替代品。方案支持用自带声音样本进行个性化语音克隆、22 种语言的多语言合成、长文本自动分块,并附带可选的 React Web 界面与完整的 Docker 容器化部署。适合希望自托管 TTS 服务、兼容 OpenAI 生态的开发者。
前置要求
- Python 3.11(pip 方式)或安装 uv
- Docker(推荐,可选 GPU 版本支持 NVIDIA CUDA)
- 前端开发需 Node/npm
安装 uv:
bash
curl -LsSf https://astral.sh/uv/install.sh | sh
本地 Python 方式:
bash
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
实施步骤
1. 本地安装(uv,推荐)
bash
git clone https://github.com/travisvn/chatterbox-tts-api
cd chatterbox-tts-api
uv sync
cp .env.example .env
uv run uvicorn app.main:app --host 0.0.0.0 --port 4123
或直接 uv run main.py。
2. 本地安装(pip)
bash
git clone https://github.com/travisvn/chatterbox-tts-api
cd chatterbox-tts-api
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
cp your-voice.mp3 voice-sample.mp3
uvicorn app.main:app --host 0.0.0.0 --port 4123
3. Docker 部署(推荐)
bash
git clone https://github.com/travisvn/chatterbox-tts-api
cd chatterbox-tts-api
cp .env.example.docker .env
docker compose -f docker/docker-compose.uv.gpu.yml up -d
GPU 用户推荐 uv+GPU 变体;CPU-only 用 docker/docker-compose.cpu.yml;Blackwell (50XX) 用 docker/docker-compose.blackwell.yml。加 --profile frontend 可同时启动 Web UI。
4. 运行前端(开发)
bash
cd frontend && npm install && npm run dev
注意事项与常见问题
- 上游
resemble-ai/chatterbox在非 CUDA 环境下目前已损坏(见其 issue) - 首次使用 TTS 耗时最长
- Chatterbox Turbo 支持即将到来
- 想回到非多语言版本可使用本仓库的
stable分支 - 遇到问题可查看 README 的 troubleshooting/common issues 部分
- 可通过大量环境变量进行配置,含语音参数实时调节与内存自动清理
优缺点
- ✓ OpenAI 接口即插即用
- ✓ 支持 22 种语言声音克隆
- ✕ 非 CUDA 环境上游已损坏
- ✕ 首次合成耗时长
出处
本方案挖掘自开源项目 travisvn/chatterbox-tts-api,方案内容与实施命令均来自其 README 原文。
本方案由真实开源项目挖掘整理,实施命令均来自其 README 原文,安装使用请遵循项目开源协议。