MOSS-TTS-Nano:1 亿参数,纯 CPU 可跑的开源 TTS 新方案
GitHub: OpenMOSS/MOSS-TTS-Nano | ⭐ 1,600+ | Apache-2.0 | 复旦大学 OpenMOSS 团队 + 模思智能(MOSI.AI)
如果你想在自己的产品里加语音输出功能,又不想买 GPU 服务器——这个项目可能是目前最好的开源选择。
它是什么?
MOSS-TTS-Nano 是复旦大学 OpenMOSS 团队联合模思智能(MOSI.AI)开源的多语言语音合成模型。
它的核心卖点只有一个数字:0.1B(1 亿参数)。
作为对比:
- ChatTTS:约 10 亿参数
- CosyVoice:3 亿+ 参数
- Fish Speech:10 亿+ 参数
- MOSS-TTS-Nano:1 亿参数
体积小一个数量级,但功能一点不少——声音克隆、实时流式输出、20 种语言、长文本支持,全都有。
为什么值得你关注?
1. 纯 CPU 可跑,甚至单核都行
这是这个项目最炸裂的地方。
大多数开源 TTS 模型需要 GPU 才能流畅运行。MOSS-TTS-Nano 不一样:
- 4 核 CPU 就能跑流式推理
- MacBook Air M4 只需要 1 个 CPU 核 就能流畅运行
- 官方提供 ONNX CPU 版,推理效率比原版快近 2 倍
- ONNX 版不需要 PyTorch,部署极简
换句话说,任何一台现代电脑都能跑 TTS,不需要显卡,不需要云服务器,不需要调用收费 API。
2. 声音克隆:给一段音频就能模仿
这是 MOSS-TTS-Nano 的主要使用方式。你只需要几秒到十几秒的参考音频,它就能克隆音色,然后用这个声音读出任意文字。
python infer.py \
--prompt-audio-path 你的声音.wav \
--text "你好,这是一段语音合成测试。"
输出:generated_audio/infer_output.wav
3. 流式输出:边生成边播放
支持 streaming inference,延迟低,第一帧音频出得快。这意味着你可以把它用在实时语音播报、AI 语音助手、客服系统等需要"说"的场景里。
4. 20 种语言
中文、英语是主打,还支持德语、西班牙语、法语、日语、意大利语、韩语、俄语、阿拉伯语、土耳其语、希腊语等 20 种语言。
5. 长文本自动分块
输入几千字的文章?没问题。它会自动分块处理,不会因为文本太长就崩。
技术架构
纯自回归:Audio Tokenizer + LLM
文本 → Audio Tokenizer → LLM (0.1B) → 音频 Token → 48kHz 立体声
不是 VITS、不是扩散模型、不是 VAE。就是把语音生成当成语言模型生成——一个 token 一个 token 地预测音频 token。
这种架构的好处:
- 推理简单,容易优化
- 天然支持流式输出
- 参数少,训练和部署成本低
输出格式是 48kHz、2 声道,质量足够用于产品级场景。
快速上手
安装
git clone https://github.com/OpenMOSS/MOSS-TTS-Nano.git
cd MOSS-TTS-Nano
pip install -r requirements.txt
pip install -e .
生成语音
moss-tts-nano generate \
--prompt-speech assets/audio/zh_1.wav \
--text "你好,我是烧饼。"
默认输出到 generated_audio/moss_tts_nano_output.wav。
ONNX CPU 版(推荐)
moss-tts-nano generate \
--backend onnx \
--prompt-speech assets/audio/zh_1.wav \
--text "ONNX 版更快,不需要 PyTorch。"
启动本地 Web 界面
python app_onnx.py
# 浏览器打开 http://127.0.0.1:18083
不只是模型:产品矩阵
这个项目已经不只是"一个模型文件"了,而是一个产品生态:
| 项目 | 说明 |
|---|---|
| MOSS-TTS-Nano | 核心模型(PyTorch 版) |
| ONNX CPU 版 | 无 PyTorch 依赖,纯 CPU 推理 |
| MOSS-TTS-Nano-Reader | Chrome 浏览器扩展,直接朗读网页 |
| 微调代码 | 用自己的数据训练专属声音 |
| 在线 Demo | Hugging Face Space + ModelScope |
| 云服务 API | MOSI.AI 提供 |
其中 Reader 是一个 Chrome 扩展,安装后可以在浏览器里直接用 MOSS-TTS-Nano 朗读网页——这已经是一个面向终端用户的产品了,不只是开发者的玩具。
和其他开源 TTS 的对比
| 维度 | MOSS-TTS-Nano | ChatTTS | CosyVoice | Fish Speech |
|---|---|---|---|---|
| 参数量 | 0.1B | ~1B | 300M+ | 1B+ |
| GPU 依赖 | 不需要 | 推荐 | 推荐 | 推荐 |
| 声音克隆 | ✅ | ✅ | ✅ | ✅ |
| 流式输出 | ✅ | 有限 | 有限 | 有限 |
| ONNX 支持 | ✅ | ❌ | ❌ | ❌ |
| 浏览器运行 | ✅ (Reader) | ❌ | ❌ | ❌ |
| 多语言 | 20 种 | 中英 | 多语言 | 多语言 |
| License | Apache-2.0 | 有限制 | Apache-2.0 | Apache-2.0 |
如果你最关心的是部署门槛和运行成本,MOSS-TTS-Nano 目前是开源 TTS 里门槛最低的方案之一。
适合什么场景?
非常适合:
- AI 产品加语音输出(客服、助手、播报)
- 本地部署 TTS,不想调用收费 API
- 有声书、播客、视频配音
- 新闻自动生成语音版
- 教育产品里的朗读功能
- 需要声音克隆但预算有限
不太适合:
- 对音质有极高要求的专业场景(广播级配音)
- 需要极高表现力(情感丰富、戏剧化表演)
- 已经有成熟的商业 TTS 方案且不想切换
安装踩坑提醒
中文文本归一化依赖 pynini + WeTextProcessing,安装时可能遇到问题:
# 推荐用 conda
conda create -n moss-tts-nano python=3.12 -y
conda activate moss-tts-nano
conda install -c conda-forge pynini=2.1.6.post1 -y
pip install git+https://github.com/WhizZest/WeTextProcessing.git
pip install -r requirements.txt
pip install -e .
如果不用 conda,需要自己找对应 Python 版本的 pynini wheel。
冷静的看法
优点:
- 1 亿参数跑 TTS 是目前最小的开源方案之一
- 纯 CPU 可跑,Mac M4 单核都行
- ONNX 版推理效率高,部署极简
- 声音克隆 + 长文本 + 流式输出,功能完整
- Apache-2.0 许可,商用无限制
- 已有浏览器扩展,落地路径清晰
- 微调代码已开源,可训练专属声音
需要注意的:
- 4 月 10 号才发布,项目还比较新,社区积累不够
- 音色质量可能不如更大参数的模型(毕竟只有 0.1B)
- 微调代码刚开源,效果和稳定性待验证
- 中文文本归一化安装可能踩坑
- 20 种语言里,中文和英文效果最好,其他语言质量待验证
总结
MOSS-TTS-Nano 是目前最小、最容易部署的开源 TTS 方案之一。1 亿参数、纯 CPU 可跑、声音克隆、流式输出、20 种语言——这些能力放在两年前至少需要几百亿参数和一堆 GPU。
如果你在做需要语音输出的产品,或者想在自己的服务器上加 TTS 能力,这个项目值得一试。
仓库:https://github.com/OpenMOSS/MOSS-TTS-Nano 论文:https://arxiv.org/abs/2603.18090 在线 Demo:https://openmoss.github.io/MOSS-TTS-Nano-Demo/ Hugging Face:https://huggingface.co/OpenMOSS-Team/MOSS-TTS-Nano
标签:MOSS-TTS-Nano, TTS, 语音合成, 开源, 声音克隆, CPU 推理, 复旦大学, Apache-2.0, ONNX
评论 ({{ comments.length }})
暂无评论,来说两句吧