| # Moss-TTS-Nano.AXERA |
|
|
| MOSS-TTS-Nano AX650 板端推理demo,包含板端 Python 推理脚本、配置文件、ONNX 对照模型和 AX650 可执行的 axmodel。 |
|
|
| [模型导出](https://github.com/AXERA-TECH/Moss-TTS-Nano.AXERA) |
|
|
|
|
| ## 当前状态 |
|
|
| - 支持内置音色。 |
| - 当前推理未加入音色克隆。原因是量化后音色克隆链路损失较大。 |
| - 推理稳定性有待验证,当前板端推理 RTF 约为 3,实时率偏大,流式step输出效果无法对齐,RTF也在1.5-2左右,后续加入音色克隆模型推理耗时会更多。 |
| - 当前音频解码实际使用全量 codec decode, 一次性还原。 |
|
|
| ## 目录结构 |
|
|
| ```text |
| Moss-TTS-Nano.AXERA/ |
| ├── configs/ |
| ├── models/ |
| │ ├── axmodels/ |
| │ └── onnxmodels/ |
| ├── scripts/ |
| ├── infer_board_axmodel_decode.py |
| ├── infer_board_onnx_decode.py |
| ├── requirements.txt |
| └── README.md |
| ``` |
|
|
| ## 环境 |
|
|
| ### 安装 pyaxengine |
| [pyaxengine Releases](https://github.com/AXERA-TECH/pyaxengine/releases/latest) 下载对应版本的 .whl 文件,然后安装: |
| ``` |
| pip install axengine-x.x.x-py3-none-any.whl |
| ``` |
|
|
| ### Python 依赖: |
|
|
| ```bash |
| pip install -r requirements.txt |
| ``` |
|
|
| ## 推理 |
|
|
| ### 中文 |
|
|
| ```bash |
| python3 infer_board_axmodel_decode.py \ |
| --text "你好,今天是美好的一天" \ |
| --voice Junhao \ |
| --seed 1234 \ |
| --max-new-frames 128 \ |
| --output-audio-path outputs/zh.wav |
| ``` |
|
|
| 结果: |
|
|
| ``` |
| ======================================================= |
| 板端全 AXModel 推理结果 |
| ======================================================= |
| 输出: /path/to/Moss-TTS-Nano.AXERA/outputs/zh.wav |
| 音频时长: 3.20s |
| 推理耗时: 9.34s |
| RTF: 2.9180 |
| ======================================================= |
| ``` |
| |
| ### 英文 |
| |
| ```bash |
| python3 infer_board_axmodel_decode.py \ |
| --text "hello,today is a good day." \ |
| --voice Ava \ |
| --seed 1234 \ |
| --max-new-frames 128 \ |
| --output-audio-path outputs/en.wav |
| ``` |
| |
| 结果: |
| |
| ``` |
| ======================================================= |
| 板端全 AXModel 推理结果 |
| ======================================================= |
| 输出: /path/to/Moss-TTS-Nano.AXERA/outputs/en.wav |
| 音频时长: 3.04s |
| 推理耗时: 8.77s |
| RTF: 2.8861 |
| ======================================================= |
| ``` |
| --voice 可选18种(Junhao、Zhiming、等) |
| |
| ## 内置音色 |
| |
| | 名称 | 描述 | 类型 | |
| |------|------|------| |
| | Junhao | CN 欢迎关注模思智能 | Chinese Male | |
| | Zhiming | CN 京味胡同闲聊 | Chinese Male | |
| | Weiguo | CN 说书 | Chinese Male | |
| | Xiaoyu | CN 明星 | Chinese Female | |
| | Yuewen | CN 机车 | Chinese Female | |
| | Lingyu | CN 深夜电台 | Chinese Female | |
| | Trump | EN Trump | English Male | |
| | Ava | EN The Bitter Lesson | English Female | |
| | Bella | EN A Gentle Reminder | English Female | |
| | Adam | EN English News | English Male | |
| | Nathan | EN The Quiet Motion of the World | English Male | |
| | Soyo | JP Soyo | Japanese Female | |
| | Saki | JP Saki | Japanese Female | |
| | Mortis | JP Mortis | Japanese Female | |
| | Umiri | JP Umiri | Japanese Female | |
| | Mei | JP Togawa | Japanese Female | |
| | Anon | JP Anon | Japanese Female | |
| | Arisa | JP Arisa | Japanese Female | |
| |
| ## ONNX decode_step 对比推理 |
|
|
| 注:`infer_board_onnx_decode.py` 和 `infer_board_axmodel_decode.py` 的差别是 `decode_step` 使用了 ONNX 模型(效果好一些),其余模型仍然使用 axmodel。 |
|
|
| 执行命令: |
|
|
| ```bash |
| python3 infer_board_onnx_decode.py \ |
| --text "你好,今天是美好的一天" \ |
| --voice Junhao \ |
| --seed 1234 \ |
| --max-new-frames 128 \ |
| --output-audio-path outputs/onnx_decode_step.wav |
| ``` |
|
|