极速声音克隆语音合成软件MOSS-TTS-Nano,轻量版CPU可流畅运行
·
一、项目概述
MOSS-TTS-Nano 是由 MOSI.AI 与 OpenMOSS 团队 联合开发的开源多语言小模型语音合成系统。模型参数量仅 0.1B,专为实时语音生成场景设计,无需 GPU 即可在 CPU 上直接运行,适合本地演示、Web 服务及轻量级产品集成。

核心技术架构
采用 Audio Tokenizer + LLM 的纯自回归流水线:
- 输入文本经文本正则化预处理
- 参考音频(提示语音)经音频分词器编码为离散 Token
- 轻量级语言模型以文本 Token 和音频 Token 为条件,自回归生成音频 Token
- 音频分词器解码器将 Token 流实时还原为 48 kHz、双声道波形
两种推理后端
| 特性 | PyTorch 版(app.py) |
ONNX 版(app_onnx.py) |
|---|---|---|
| 推理依赖 | PyTorch | ONNX Runtime |
| 执行后端 | CUDA / CPU | CPU / CUDA(需 onnxruntime-gpu) |
| 推理效率 | 基准 | 约 2 倍于 PyTorch 版 |
| 单核 CPU 运行 | 可行 | 流畅运行(MacBook Air M4 实测) |
| 部署体积 | 包含 PyTorch 全家桶 | 无 PyTorch 依赖,更轻量 |
| 推荐场景 | 研究调试、GPU 环境 | 生产部署、CPU 环境(首选) |
二、软件功能特点
1. 语音克隆(Voice Clone)
- 提供一段参考音频(提示语音),模型即可模仿该说话人的音色、语调和风格
- 支持上传自定义音频文件(WAV、MP3、FLAC、M4A、OGG、Opus、AAC 等格式)
- 内置演示音频(位于
assets/audio/,通过assets/demo.jsonl配置) - 自动长文本分块克隆,超长文本无压力
2. 多语言支持
支持 20 种语言的语音合成:
| 语言 | 代码 | 语言 | 代码 | 语言 | 代码 |
|---|---|---|---|---|---|
| 中文 | zh | 英语 | en | 德语 | de |
| 西班牙语 | es | 法语 | fr | 日语 | ja |
| 意大利语 | it | 匈牙利语 | hu | 韩语 | ko |
| 俄语 | ru | 波斯语 | fa | 阿拉伯语 | ar |
| 波兰语 | pl | 葡萄牙语 | pt | 捷克语 | cs |
| 丹麦语 | da | 瑞典语 | sv | 希腊语 | el |
| 土耳其语 | tr |
3. 实时流式解码(Realtime Streaming Decode)
- 支持边生成边播放,首音延迟极低
- 使用 Web Audio API 进行 PCM 流式调度播放
- 实时显示已合成文本高亮,逐句跟踪播放进度
- 支持暂停/恢复播放
4. 丰富的生成参数调节
- 最大新帧数(Max New Frames):控制音频生成长度
- 文本/音频采样参数:Temperature、Top-P、Top-K
- 音频重复惩罚(Audio Repetition Penalty):减少音频伪影
- 随机种子(Seed):支持可复现生成
- 注意力后端(PyTorch 版):model_default / sdpa / eager
- 采样模式(ONNX 版):fixed(使用模型内置常量)/ full(使用页面超参数)/ greedy(贪心解码)
- 批量大小:TTS 批大小和编解码器批大小(ONNX 版固定为 1)
5. 文本正则化
- 内置 WeTextProcessing 文本正则化流水线
- 支持独立开关 WeTextProcessing 和
normalize_tts_text - 启动时预加载,首次请求无图构建延迟
- 正则化后文本实时展示在输出面板
6. 启动预热机制
- 服务启动时自动加载模型并执行一次短文本预热合成
- Web 界面实时显示预热进度和状态
- 预热失败时展示错误信息,便于排查
7. 可视化播放脚本高亮
- 将合成文本按语义分句,以卡片形式展示在播放面板中
- 播放时当前句子高亮显示,已播放句子以标记色标识
- 支持自动滚动跟随
三、启动方式
一键启动(Windows)
双击 0启动软件.bat,脚本自动调用 ONNX 版 Web 服务:
默认使用 ONNX CPU 后端。
四、界面功能说明
左侧面板(输入区)
| 区域 | 说明 |
|---|---|
| Demo 选择器 | 下拉选择内置演示条目,自动填充文本和参考音频 |
| 提示语音 | 上传自定义音频文件作为音色参考;可预览播放;支持切换回 Demo 音频 |
| 文本输入 | 输入要合成的文本内容 |
| 生成选项(可折叠) | 展开后可调节上述所有生成参数 |
| 生成按钮 | 触发合成,支持流式/缓冲两种模式切换 |
| 暂停播放 | 暂停/恢复当前音频播放 |
| 刷新预热状态 | 手动刷新模型加载和文本正则化状态 |
右侧面板(输出区)
| 区域 | 说明 |
|---|---|
| 预热状态 | 显示模型加载和预热进度百分比及状态信息 |
| 文本正则化状态 | 显示 WeTextProcessing 加载状态 |
| 运行状态 | 显示当前合成任务的实时状态和执行详情 |
| 流式指标 | 流式模式下显示延迟、已播放时长等技术指标 |
| 正则化文本 | 显示经过文本正则化处理后的文本 |
| 播放脚本 | 以卡片形式分句显示,播放时高亮当前句 |
| 生成音频 | 音频播放器,支持播放/暂停/进度拖拽 |
| 模型信息 | 底部显示当前使用的检查点路径和音频分词器路径 |
五、注意事项
硬件要求
- CPU 模式:建议 4 核以上 CPU,支持流式流畅运行
音频文件
- 上传的提示音频会暂存在
.app_prompt_uploads/目录,服务重启后清理 - 生成的音频文件保存到
generated_audio/目录 - 支持常见的音频格式:WAV、MP3、FLAC、M4A、OGG、Opus、AAC
- 建议参考音频时长 3~15 秒,过短可能导致克隆效果不佳
MOSS-TTS-Nano整合包软件下载链接
更多推荐



所有评论(0)