KittenTTS 深度研究:25MB 的语音合成模型——"CPU 上跑的 TTS"
> GitHub: https://github.com/KittenML/KittenTTS
> Demo: https://huggingface.co/spaces/KittenML/KittenTTS-Demo
> 官网: https://kittenml.com
> 公司: Stellon Labs
> 研究时间: 2026-03-20
🎯 一句话版本
KittenTTS 是一个只有 25MB 的语音合成模型,不需要 GPU,在 CPU 上就能把文字变成自然的语音。 适合手机、嵌入式设备、边缘部署等 GPU 不可用的场景。
📊 模型矩阵
| 模型 | 参数量 | 文件大小 | 适合场景 |
|---|---|---|---|
| **nano (int8)** | 15M | 25 MB | 极限瘦身,嵌入式/IoT |
| **nano (fp32)** | 15M | 56 MB | 普通 CPU |
| **micro** | 40M | 41 MB | 平衡质量/体积 |
| **mini** | 80M | 80 MB | 最佳质量 |
- 推理引擎:ONNX Runtime(CPU 优化)
- 音频输出:24 kHz WAV
- 8 种内置声音:Bella, Jasper, Luna, Bruno, Rosie, Hugo, Kiki, Leo
- 语速可调
🚀 使用方式
from kittentts import KittenTTS
model = KittenTTS("KittenML/kitten-tts-mini-0.8")
audio = model.generate("Hello world", voice="Jasper")
# 保存为 WAV
import soundfile as sf
sf.write("output.wav", audio, 24000)
# 调速
audio = model.generate("Fast speech", voice="Luna", speed=1.3)
三行代码出声。
🆚 与其他开源 TTS 对比
| 模型 | 参数量 | 需要 GPU? | 语音质量 | 大小 | 速度(CPU) |
|---|---|---|---|---|---|
| **KittenTTS nano** | 15M | ❌ | ⭐⭐⭐ | 25MB | 中等 |
| **KittenTTS mini** | 80M | ❌ | ⭐⭐⭐½ | 80MB | 较慢 |
| **Piper** | ~15M | ❌ | ⭐⭐⭐ | 22MB (int8) | **快** |
| **Kokoro-82M** | 82M | ⚠️ 推荐 | ⭐⭐⭐⭐½ | ~300MB | GPU快/CPU慢 |
| **F5-TTS** | ~300M | ✅ | ⭐⭐⭐⭐⭐ | ~1GB | GPU only |
| **Chatterbox** | ~500M | ✅ | ⭐⭐⭐⭐⭐ | ~2GB | GPU only |
关键对比结论
vs Piper(最直接竞争者):
- Piper 更快、略小(int8 22MB vs 23MB)
- Piper 有 904 种声音 vs KittenTTS 8 种
- KittenTTS API 更现代(Python-native vs 命令行)
vs Kokoro(质量标杆):
- Kokoro 音质明显更好
- KittenTTS 更小更快
- Kokoro 需要 GPU 才能实时
定位:KittenTTS 不是最好听的,也不是最快的,但它是最小的高质量 TTS 之一。
🏗️ 技术细节
ONNX 推理
没有用 PyTorch/TensorFlow,直接用 ONNX Runtime。好处:
- 跨平台(Linux/macOS/Windows)
- CPU 优化(AVX2, NEON)
- 模型可以进一步量化(int8)
- 未来可以跑在手机端(ONNX Mobile)
文本预处理
内置处理:
- 数字展开("123" → "one hundred twenty three")
- 货币("$50" → "fifty dollars")
- 单位、缩写等
局限
1. 仅英文——多语言在 roadmap 但还没发
2. 质量不是顶级——比 Kokoro/F5-TTS/Chatterbox 差一档
3. Developer Preview——API 可能变化
4. int8 nano 有 bug——用户报告了问题
5. 没有 voice cloning——只能用 8 种预设声音
💡 与我们的关联
1. OpenClaw TTS 能力
目前 OpenClaw 用的是云端 TTS API。如果想本地化:
- KittenTTS 25MB 可以嵌入到任何服务器
- 不需要 GPU,我们的 VPS 就能跑
- 延迟低于云端 API
2. Agent 语音输出
Agent 生成文字报告后自动转语音 → 播客式输出。25MB 模型部署成本几乎为零。
3. 但质量是问题
对于面向用户的语音输出,KittenTTS 的质量可能不够。建议:
- 内部/快速预览 → KittenTTS(快、小、免费)
- 面向用户 → Kokoro 或云端 API(质量更好)
4. 等多语言
我们需要中文 TTS。目前 KittenTTS 只支持英文。多语言在 roadmap 但没有时间表。
5. Piper 可能更适合
如果纯论 CPU TTS:
- Piper 更快、声音更多(904 种)、社区更成熟
- KittenTTS API 更好用
- 看重速度选 Piper,看重 API 易用性选 KittenTTS
📊 评分
| 维度 | 评分(/10) |
|---|---|
| 技术实现 | 7.5 — ONNX 优化路线正确,15M 参数做到还不错的质量 |
| 模型质量 | 6.5 — 能用但不惊艳,比 Kokoro/F5 差一档 |
| 易用性 | 8.5 — pip install + 3 行代码,API 设计干净 |
| 体积优势 | 9.0 — 25MB 是真正的杀手锏 |
| 生态/社区 | 6.0 — 新项目,社区小,仅英文 |
| 与我们的关联 | 6.0 — 等多语言支持后更有用,目前 Piper/Kokoro 更实际 |
| **综合** | **7.2** |
报告由深度研究助手自动生成 | 2026-03-20
来源: https://github.com/KittenML/KittenTTS