板端专用预编译包: 本仓库仅包含 AXMODEL 与 SDK, 需在 AX650 (NPU3) + axengine 上运行。 x86 开发机调试/复现请使用 GitHub 源码包 (含 codec ONNX 与 model_convert)。

MOSS-TTS-Nano-100M 中文语音合成 (AX650 / NPU3)

基于复旦大学 OpenMOSS 团队的 MOSS-TTS-Nano-100M(Apache-2.0),在爱芯 AX650(NPU3)上部署的 中文优先语音合成包。模型仅 0.1B 参数,输出 48kHz 双声道 中文语音。

  • 100M 自回归 LLM:板端 CPU 运行(PyTorch fp32,原权重,中文合成质量与官方一致)
  • NPU3 加速选件: global decode/local 已编译为 AXMODEL (约 4 倍 LLM 加速), 见 reports/
  • 音频 codec 解码器(MOSS-Audio-Tokenizer-Nano):编译为 AXMODEL,运行在 NPU3 (默认,快 2.6 倍);也可选 FP32 ONNX(参考级精度,cosine=1.0)
  • 内置中文参考音色(zh_1.wav),voice-clone 模式合成,无需额外录制

快速开始(两步)

bash setup.sh      # 安装依赖(约几分钟)
bash run.sh        # 合成中文语音到 out.wav

目录结构

models/
  llm/                 # 100M TTS-LLM 权重与运行时代码(CPU)
  codec/               # codec 解码器 AXMODEL/ONNX + 查表权重 + 参考音色
python/                # Python SDK(推荐)
cpp/                   # C++ codec 解码器 SDK(AX Engine 直连)
model_convert/         # 可复现的导出/编译脚本(ONNX + Pulsar2)
reports/               # 导出/编译/仿真/性能报告

更多用法

# 自定义中文文本(支持长文本自动分句)
python python/demo.py --model-dir models \
  --text "今天天气真好,我们一起去公园散步吧。" \
  --out my_voice.wav

# 板上使用 NPU 解码 (provider=axengine 自动优先)
python python/demo.py --model-dir models --provider axengine

性能与限制

  • 生成速度:CPU LLM 约 10-13 帧/秒(12.5 帧/秒即实时),codec 解码在 NPU3
  • 输出格式:48kHz / 双声道 / 16-bit PCM WAV
  • 语言:中文最优(内置 zh 参考音色),也支持官方 20 种语言
  • 长文本:SDK 自动按句切分并保留参考音色
  • 已知限制:AXMODEL 为混合精度(全部计算 FP32 + LayerNorm S16),波形与 FP32 参考的 cosine 相似度 0.952±0.019(见 reports/simulate_report.md);需要参考级精度时用 --provider onnxruntime(板端 CPU 约慢 2.6 倍)

许可证

模型与代码遵循 Apache-2.0(OpenMOSS-Team)。商业使用请查阅上游许可证。

Downloads last month
38
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support