FastWave.AXERA

AX650 上的通用音频超分(6–48 kHz → 48 kHz),单模型 3.8 MB,纯 NPU 推理,即取即用。

FastWave 是 1.3 M 参数的扩散式音频超分模型(EDM preconditioning + NU-Wave 2 骨干, 论文)。本仓库提供 AX650 NPU 版:

  • models/fastwave_nfe.axmodel:量化后的单次 NFE 图(11.9 MB,U16 激活 / S8 权重),板端 8 步采样

  • python/:完整流水线 SDK(分块 + overlap-add + EDM 采样),只依赖 numpy + axengine

  • samples/:8 k / 16 k 输入与 48 k 输出示例

  • reports/:精度与性能报告

  • GitHub(源码 + 复现流程):https://github.com/ZY-2012/FastWave.AXERA

  • 上游:https://github.com/Nikait/FastWave

快速开始(AX650 板端)

# 需要:python3 + numpy + axengine(AX650 BSP 镜像自带)
bash run_ax650.sh samples/listen/8k/OSR_us_000_0010_input_8k.wav output.wav
bash run_ax650.sh samples/listen/16k/speech_2_input_16k.wav output.wav --steps 4

输出固定 48 kHz。--steps 4 速度更快、质量略降;--overlap 0.5(默认)可改拼接重叠率。

结果

频谱对比:OSR_us_000_0010 · OSR_cn_000_0072 · speech_2

性能(AX650 NPU3,chunk 0.68 s)

配置 单次 NFE 端到端 RTF
8 步 + 50% overlap(默认) 499.8 ms 10.0
4 步 + 50% overlap(--steps 4) 499.8 ms 5.0

精度

量化配置:Pulsar2 8.0,U16 激活 / S8 权重 / U16 输出(DEFAULT 全图),MinMax 标定 (真实 48 kHz 语音,8/12/16/24 kHz 退化输入,8 个采样步全覆盖,64 个样本),compiler.check=2。 AXMODEL 与浮点 ONNX 的单步 NFE 余弦相似度见 reports/accuracy.md(最低 TBD)。

实现要点

  1. 模型内部每层都有 STFT/iSTFT(FFC 全局分支)。AX NPU 不支持 FFT/复数算子,这里把 torch.stft/istft 等价改写为 32×32 Cooley-Tukey 矩阵乘 FFT(reflect padding、hann 窗、 overlap-add、窗包络归一化全部保留),与 torch 误差 < 1e-7,图上只有 MatMul/Add/Mul/Reshape。
  2. EDM 的 c_skip/c_in/c_out 与正弦扩散 embedding 只依赖 sigma,host 端预计算后作为图输入, 图上没有 log/sqrt/sin/cos/OneHot。
  3. 输入采样率通过 band one-hot 输入,一个模型覆盖 6–48 kHz。

License

Apache-2.0(本仓库代码与量化模型)。上游 FastWave 模型为 MIT License。

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Paper for HY-2012/FastWave.AXERA