Pocket TTS:可在 CPU 上运行的轻量级文本转语音引擎

Pocket TTS:可在 CPU 上运行的轻量级文本转语音引擎
Pocket TTS可在 CPU 上运行的轻量级文本转语音引擎 核心观点Pocket TTS 是由 Kyutai Labs 开源的一款极轻量、低延迟、无需 GPU的文本转语音TTS系统。其核心理念是让语音合成像pip install一样简单彻底摆脱对 GPU 和云端 API 的依赖真正做到放进口袋里的 TTS。 关键信息技术规格指标详情模型参数量100M约 1 亿参数运行环境仅需 CPU无需 GPUCPU 核心占用仅 2 个核心首帧延迟~200ms实时倍率MacBook Air M4 上约6× 实时速度Python 支持3.10 / 3.11 / 3.12 / 3.13 / 3.14PyTorch 要求2.5无需 GPU 版本核心功能亮点️音频流式输出边生成边播放低延迟体验多语言支持英、法、德、葡、意、西班牙语未来将扩展声音克隆支持自定义.wav音频文件进行声音克隆♾️无限长文本可处理任意长度输入浏览器端运行支持 WebAssembly/JS 在客户端执行️Python API CLI双接口 代码 / 示例方式一CLI 快速使用推荐uv# 使用 uvx 一键运行无需手动安装 uvx pocket-tts generate # 手动安装后使用 pip install pocket-tts pocket-tts generate # 指定声音和文本 pocket-tts generate --voice alba --text Hello, world! # 指定语言非英语24层高质量变体 pocket-tts generate --language italian_24l方式二启动本地 HTTP 服务模型常驻内存更快uvx pocket-tts serve # 访问 http://localhost:8000 使用 Web 界面方式三Python API 基本用法from pocket_tts import TTSModel import scipy.io.wavfile # 加载模型 tts_model TTSModel.load_model() # 获取预置声音状态也可传入本地 wav 文件路径实现声音克隆 voice_state tts_model.get_state_for_audio_prompt( alba # 预置声音 # ./my_voice.wav # 本地声音克隆 # hf://kyutai/tts-voices/xxx.wav # HuggingFace 声音 ) # 生成音频 audio tts_model.generate_audio(voice_state, Hello world, this is a test.) # 保存为 wav 文件 scipy.io.wavfile.write(output.wav, tts_model.sample_rate, audio.numpy())方式四声音导出加速加载推荐生产环境from pocket_tts import TTSModel, export_model_state model TTSModel.load_model() # 将声音状态导出为 safetensors只需做一次 model_state model.get_state_for_audio_prompt(some_voice.wav) export_model_state(model_state, ./some_voice.safetensors) # 后续直接从文件加载速度极快本质是读取 KV Cache model_state_copy model.get_state_for_audio_prompt(./some_voice.safetensors) audio model.generate_audio(model_state_copy, Hello world!)⚠️性能提示load_model()和get_state_for_audio_prompt()属于慢操作建议在应用生命周期内只调用一次保持在内存中复用。 预置声音列表部分语言声音名称英语 (en)alba, anna, bill_boerst, eve, george, jane, michael, vera …意大利语 (it)giovanni西班牙语 (es)lola德语 (de)juergen葡萄牙语 (pt)rafael法语 (fr)estelle 生态与社区实现Pocket TTS 已衍生出丰富的第三方实现和集成项目跨平台运行C 单文件版ONNX Runtime、C# 版TorchSharp、Rust 版Candle/XN嵌入式支持sherpa-onnx 支持 Raspberry Pi、Jetson、RK3588 等开发板绑定 12 种编程语言应用集成ComfyUI 插件、Unity 6 集成、Discord TTS 机器人、Home Assistant 语音容器OpenAI 兼容 API多个项目提供 OpenAI TTS API 兼容接口便于无缝替换浏览器端WebAssemblyRust、ONNX Runtime Web、JAX.js 等多种实现 个人启发够用即最优的工程哲学100M 参数、仅 CPU 运行、6× 实时速度Pocket TTS 以极小的代价实现了生产可用的 TTS提醒我们不是所有问题都需要大模型和 GPU 来解决。KV Cache 的工程价值将声音状态本质上是 KV Cache持久化为 safetensors 文件实现了一次计算多次复用这是一个值得借鉴的声音克隆加速模式也可推广到其他需要重复使用 prompt embedding 的场景。开源生态的乘数效应一个核心库发布后社区迅速贡献了 C、Rust、C#、WebAssembly、多平台 Docker、Unity 等实现极大地扩展了原始项目的边界充分体现了开放许可 清晰 API 完整文档对生态建设的重要性。 延伸思考端侧 AI 的边界在哪里Pocket TTS 在 CPU 上实现 6× 实时 TTS那么 ASR语音识别、小型 LLM 推理是否也能以类似思路在端侧实现闭环的语音对话端侧 AI pipeline 的整合将带来哪些隐私和离线使用场景的新机会声音克隆的伦理与安全边界如何界定只需 20 秒音频即可克隆声音并本地运行无需联网这在无障碍、个性化场景下极具价值但同时也带来深度伪造风险。开源社区应如何在技术便利与滥用防范之间取得平衡模型量化与架构选择的权衡如何指导未来设计文档中提到在 GPU 上运行未观察到加速因为 batch size1 且模型极小这说明硬件效率高度依赖模型规模与批处理策略。未来针对不同部署目标嵌入式、移动端、服务器端的 TTS 模型应如何在参数量、量化精度和推理后端之间做系统性的设计决策