Kitten TTS,一款 23.8MB 的开源文本转语音模型- 仅有 1500 万参数- CPU 优化:无需 GPU 即可在任何设备上运行- 模型大小小于 25MB- 多种高质量声音- 快速推理:针对实时语音合成进行了优化.其核心定位是提供高效、低资源消耗的语音合成解决方案。
核心特性一览
-
超小体量 -
15M 参数,< 25MB 下载包 -
是此前“小型”模型(如 Kokoro-82M)的五分之一大小
-
-
纯 CPU 推理 -
在常见硬件(Intel/AMD 笔记本、树莓派、Android 手机)上数秒完成合成 -
无需 GPU 或专用加速器
-
-
八种预设音色 -
四种女声,四种男声 -
从“清晰专业”到“活力亲和”多款风格
-
-
实时或更快推理速度 -
在现代 CPU 上实现真实时速以下(RTF < 1.0)
-
-
Apache 2.0 开源授权 -
商业与个人用途均可,无额外限制 使用方法
-
创建并激活虚拟环境 python3 -m venv .venv && source .venv/bin/activate
2. **安装 Kitten TTS** “`bash pip install \ https://github.com/KittenML/KittenTTS/releases/download/0.1/kittentts-0.1.0-py3-none-any.whl “` 3. **生成首个音频文件** “`python # test_kitten.py from kittentts import KittenTTS import soundfile as sf print(“ 正在加载 Kitten TTS…”)
model = KittenTTS(“KittenML/kitten-tts-nano-0.1”) text = “你好,来自小巧而强大的 Kitten TTS 模型!” audio = model.generate(text) sf.write(“hello_kitten.wav”, audio, 24000) print(“ 已保存 hello_kitten.wav”)
“` 4. **尝试所有音色** “`python # all_voices.py from kittentts import KittenTTS import soundfile as sf model = KittenTTS(“KittenML/kitten-tts-nano-0.1”) TEXT = “Kitten TTS 为本地 AI 带来高质量语音。” for voice in model.available_voices: filename = f“kitten_{voice}.wav” print(f“正在生成 {filename}…”) model.generate_to_file(TEXT, filename, voice=voice) print(“ 所有音色生成完毕!”)
“` 5. **试听并选出最爱**,然后集成到你的应用中! </section> — ## 预设音色一览表 | 音色 ID | 性别 | 描述 | | —————- | — | ————- | | `expr-voice-2-f` | 女声 | 清晰、专业(适合旁白场景) | | `expr-voice-2-m` | 男声 | 稳重可靠(日常应用) | | `expr-voice-3-f` | 女声 | 富有表现力(角色配音) | | `expr-voice-3-m` | 男声 | 深沉细腻(故事讲述) | | `expr-voice-4-f` | 女声 | 亲切活泼(对话式界面) | | `expr-voice-4-m` | 男声 | 精力充沛(指导类内容) | | `expr-voice-5-m` | 男声 | 带有个性(谨慎使用 ) | | `expr-voice-5-f` | 女声 | 社区反馈不一,请留意更新 | — ## 技术原理简介 虽然官方论文尚未发布,但社区分析表明其架构可能基于 **VITS**(变分推理+对抗学习)或 **StyleTTS2**: 1. **变分自编码器 (VAE)** 学习语音的紧凑潜在表示,把握韵律和音色要素。 2. **归一化流 (Normalizing Flows)** 将简单分布转换为复杂分布,实现自然的语音变化。 3. **生成式对抗网络 (GAN)** * **生成器** 将文本转换为音频 * **判别器** 评估音频真实度 * 对抗训练提升语音自然度 使用**非自回归**并行 Transformer 架构,批量生成音频片段,实现极高速度——区别于逐步合成的 Tacotron 2 等模型。 — ## Kitten TTS 与竞品对比 | 特性 | Kitten TTS (Nano) | Piper TTS | Kokoro TTS | Coqui XTTS-v2 | | ——– | ——————- | ———– | —————- | ————— | | **模型体量** | **< 25MB (15M 参数)** | 50–100MB/音色 | \~165MB (82M 参数) | \~1.5GB+ | | **资源需求** | **纯 CPU、低内存** | CPU、树莓派适用 | CPU、适中内存 | 推荐 GPU | | **核心优势** | **极致体量与效率** | 速度&多语支持 | 小体量高质量 | 零样本语音克隆 | | **授权协议** | **Apache 2.0** | Apache 2.0 | Apache 2.0 | Coqui 公共协议(非商用) | | **典型场景** | 边缘 AI、物联网、无障碍 | 离线助手 | 通用 TTS | 自定义语音克隆 | * Piper TTS 生态成熟,多语支持领先。 * Kokoro 开创了小模型概念,Kitten 则进一步精简。 * Coqui XTTS-v2 强调零样本克隆,但对算力要求高。 — ## 典型应用场景 1. **边缘与物联网设备** * 智能传感器即时语音告警 * 隐私优先的本地语音助手 2. **无障碍辅助** * 集成到屏幕阅读器(如 NVDA),提升语音自然度 * 优化视障与阅读障碍用户体验 3. **独立与创客项目** * 机器人、无人机和艺术装置的语音交互 * 独立游戏配音,无需服务器成本 4. **离线与偏远环境** * 田野调研设备、远程信息亭、应急响应工具 随着本地 TTS 技术的发展,Kitten TTS 将助力开发者打造**安全可靠**、**低延迟**、**随时在线**的语音应用。 — <section itemscope itemtype=“https://schema.org/FAQPage”> ## 常见问题(FAQ) ### Q1: Kitten TTS 与云端 API 有何区别? **A:** Kitten TTS 完全在本地运行,无需联网调用、无使用费用,且可自主控制语音数据。 ### Q2: 可以商用吗? **A:** 可以。它采用 Apache 2.0 授权,无需支付许可费。 ### Q3: 支持非英语语言吗? **A:** 当前 nano-0.1 版本仅支持英语,多语言功能在后续版本发布。 ### Q4: 推理速度如何? **A:** 社区报告在现代 CPU 上 RTF 约为 0.7–0.9,已达实时或更快水平。 ### Q5: 是否有官方基准测试(MOS、RTF)? **A:** 暂无正式数据。早期测试(如 M1 Mac:26 秒音频耗时 19 秒)表现优异。 ### Q6: 接下来有什么计划? **A:** 正在开发 \~80M 参数的“大兄弟”版本,兼顾音质与效率。 -
-
- * **GitHub 仓库**:[https://github.com/KittenML/KittenTTS](https://github.com/KittenML/KittenTTS)
* **Hugging Face**:[https://huggingface.co/KittenML/kitten-tts-nano-0.1](https://huggingface.co/KittenML/kitten-tts-nano-0.1)
* **在线演示**:[https://clowerweb.github.io/kitten-tts-web-demo/](https://clowerweb.github.io/kitten-tts-web-demo/)
* **社区 Discord**:[https://discord.gg/upcyF5s6](https://discord.gg/upcyF5s6)
相关导航
暂无评论...