Files
chattts-server/README.md

161 lines
2.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ChatTTS 语音合成服务
专为对话场景设计的 TTS 模型服务,支持情感控制。
## 端口
- **服务端口**: 12002
## 功能
- 对话式语音合成(有语气变化)
- 情感控制(开心、悲伤、笑声)
- 批量合成
- 中文效果好
## 硬件要求
- **GPU**: 推荐 NVIDIA GPU显存 ≥ 4GB
- **CPU**: 可运行但较慢
- **内存**: ≥ 16GB
## 部署步骤
### 1. 安装依赖
```bash
pip install -r requirements.txt
```
### 2. 启动服务
```bash
# 方式一:自动下载模型
python3 server.py
# 方式二:使用已下载的模型(指定路径)
MODEL_PATH=/path/to/ChatTTS python3 server.py
# 方式三:使用本地缓存模型
MODEL_SOURCE=local python3 server.py
```
首次启动会自动下载 ChatTTS 模型(约 2GB
**模型路径配置**
| 环境变量 | 说明 | 示例 |
|---------|------|------|
| `MODEL_PATH` | 模型目录路径 | `/data/models/ChatTTS` |
| `MODEL_SOURCE` | 加载方式 | `auto` / `local` / `download` |
ChatTTS 模型默认下载位置:
- Linux: `~/.cache/modelscope/hub/ChatTTS/`
- 或手动下载后解压到任意目录
### 3. 验证服务
```bash
curl http://localhost:12002/
```
返回:
```json
{
"status": "ok",
"service": "ChatTTS",
"model_loaded": true,
"device": "cuda"
}
```
## API 接口
### 合成语音
```bash
POST /synthesize
Content-Type: multipart/form-data
参数:
- text: 要合成的文本
- temperature: 温度参数(默认 0.3
- top_p: Top-P 参数(默认 0.7
- top_k: Top-K 参数(默认 20
返回:
{
"audio_url": "/audio/xxx.wav",
"duration": 3.5,
"text": "你好",
"timestamp": "..."
}
```
**示例**
```bash
curl -X POST http://localhost:12002/synthesize \
-F "text=你好,很高兴见到你"
```
### 带情感合成
```bash
POST /synthesize/emotion
参数:
- text: 文本
- emotion: 情感类型neutral/happy/sad/laugh
返回: 同上
```
**情感类型**
- `neutral`: 平静
- `happy`: 开心
- `sad`: 悲伤
- `laugh`: 笑声
### 批量合成
```bash
POST /synthesize/batch
Content-Type: application/json
Body:
[
{"text": "第一句"},
{"text": "第二句"}
]
```
### 获取音频文件
```bash
GET /audio/{filename}
```
## 特点对比
| 特点 | Edge TTS | ChatTTS |
|------|----------|---------|
| 部署 | 无需部署 | 需 GPU |
| 质量 | 高 | 对话优化 |
| 情感 | 固定音色 | 可控 |
| 延迟 | 1-3秒 | 0.5-1秒 |
| 离线 | ❌ | ✅ |
## 与语音对话网页集成
在 voice-chat-web 的 TTS 设置中选择 ChatTTS服务地址配置为
```
http://192.168.2.5:12002
```
## 注意事项
1. 模型首次加载需要下载约 2GB
2. GPU 运行速度更快CPU 可用但较慢
3. 长文本建议分段合成
4. 情感标记功能需要 ChatTTS 版本支持