资讯动态

3 步把 MeloTTS 模型转换成 Sherpa-Onnx 格式:Colab 实操教程

发布时间:2026/9/12 12:32:29 来源:尧图企业网站定制
3 步把 MeloTTS 模型转换成 Sherpa-Onnx 格式Colab 实操教程【免费下载链接】sherpa-onnxSpeech-to-text, text-to-speech, speaker diarization, speech enhancement, source separation, and VAD using next-gen Kaldi with onnxruntime without Internet connection. Support embedded systems, Android, iOS, HarmonyOS, Raspberry Pi, RISC-V, RK NPU, Axera NPU, Ascend NPU, x86_64 servers, websocket server/client, support 12 programming languages项目地址: https://gitcode.com/GitHub_Trending/sh/sherpa-onnxsherpa-onnx 是一个基于 onnxruntime 的离线语音推理框架支持 TTS、语音识别、VAD全程不需要联网。本文以 MeloTTS 模型转换为例把它转成 onnx 格式——一种跨平台、可直接部署运行的模型文件转完即可被 sherpa-onnx 运行时加载在 Android、iOS、树莓派上离线跑。直接用原版 MeloTTS 会卡住的三个地方依赖链太重跑原版要整套 Python torch melo 包动辄上百 MB 的运行时代码权重不能被推理引擎读官方发布的 checkpoint 是训练框架原生格式onnxruntime 这类引擎无法直接加载移动端没法嵌入Android/iOS 应用里没有现成的嵌入路径转成 onnx 一次性解决推理时只需要一个model.onnx加两个文本文件sherpa-onnx 的 C 运行时在 CPU 上就能直接跑不再需要 Python 环境。Colab 上准备 TTS 模型转换环境依赖版本作用torch / torchaudio2.3.1CPU 版即可加载原版 MeloTTS 完成导出onnx1.15.0向 onnx 文件写入元数据onnxruntime1.16.3在 Colab 本地做推理验证soundfile / jieba最新保存 wav / 中文分词装依赖并拿到转换脚本pip install onnx1.15.0 onnxruntime1.16.3 soundfile jieba git clone https://gitcode.com/GitHub_Trending/sh/sherpa-onnx转换脚本在 scripts/melo-tts/其中的 run.sh 已把克隆 MeloTTS、安装 requirements、下载日语 unidic 词典等步骤全部串好在自己电脑上跑可以直接执行它。3 步完成 MeloTTS 模型转换第 1 步导出中英混合模型python3 scripts/melo-tts/export-onnx.py这一步在做什么加载 MeloTTS 的 ZH 模型用 pypinyin 把中文逐字转成音素 声调以 opset 18 导出 onnx。除model.onnx外还会生成tokens.txt音素到 ID 的映射和lexicon.txt词到音素的词典并向 onnx 写入model_typemelo-vits、sample_rate44100、n_speakers等元数据。想要 5 位说话人的纯英文版换export-onnx-en.py即可。第 2 步检查输入输出与元数据运行show-info.py。这一步在做什么把 onnx 读回并打印张量名和元数据确认 7 个输入x、x_lengths、tones、sid、noise_scale、length_scale、noise_scale_w、1 个输出 ymel 谱以及元数据完整。缺元数据的话sherpa-onnx 会直接拒绝加载。第 3 步生成语音试听验证运行test.py。这一步在做什么对一段中英混合文本做分词、查音素、CPU 推理输出test.wav。听一下——发音正确、中英文切换自然转换就算完成。容易踩的坑与调优⚠️版本别乱升脚本钉死 onnx1.15.0 / onnxruntime1.16.3换新版报元数据或算子错误时先降回这两个版本说话人数不一致中英混合模型只有 1 位女声纯英文版有 5 位EN-US / EN-BR / EN-INDIA / EN-AU / EN-Default多音色场景要改纯英文版并按 sid 切换生僻词读错多半是词不在音素词典里可参照 export-onnx.py 中add_new_english_words的注释示例往 cmudict.rep 或 lexicon 里补条目语言覆盖仓库官方脚本目前只导出中英混合、纯英文两套日语暂没有独立的导出脚本见 scripts/melo-tts/README.md转换后的模型怎么选、怎么部署模型集说话人采样率适用场景zh_en1 位44.1 kHz中英混读、字幕配音、多语言 TTS 部署en5 位44.1 kHz多口音英语把model.onnxtokens.txtlexicon.txt三个文件放同一目录即可sherpa-onnx/csrc/ 中的 C 运行时直接加载Android、iOS、Flutter、Python、Rust 等封装层都复用同一套逻辑多语言 TTS 部署不用再维护两份推理代码。✅ 仓库里的 flutter-examples/tts/ 示例可以直接用来在真机上验证效果。 Colab 里 30 分钟你就能拿到一个可以直接塞进离线多语言 TTS 项目的模型包。【免费下载链接】sherpa-onnxSpeech-to-text, text-to-speech, speaker diarization, speech enhancement, source separation, and VAD using next-gen Kaldi with onnxruntime without Internet connection. Support embedded systems, Android, iOS, HarmonyOS, Raspberry Pi, RISC-V, RK NPU, Axera NPU, Ascend NPU, x86_64 servers, websocket server/client, support 12 programming languages项目地址: https://gitcode.com/GitHub_Trending/sh/sherpa-onnx创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价