Skip to content
ModelListedExternal
Browse files

Canary 180m Flash Onnx

ONNX export of nvidia/canary-180m-flash whose encoder is re-exported in the TorchScript idiom (torch.onnx.export(dynamo=False)), so the model runs on the ONNX Runtime DirectML EP (and every other EP).

KindOtherBase modelnvidia/canary-180m-flashVersionRevision f9d44f1Bgrade

Model source

Kind
Other
File size
8.05–440 MB
Base model
nvidia/canary-180m-flash
Version
vRevision f9d44f1
Updated
Sep 26, 2026
Downloads
11
Source
Hugging Face

Source description

NVIDIA canary-180m-flash — DirectML-safe ONNX

ONNX export of nvidia/canary-180m-flash whose encoder is re-exported in the TorchScript idiom (torch.onnx.export(dynamo=False)), so the model runs on the ONNX Runtime DirectML EP (and every other EP).

Why

istupakov's canary-180m-flash-onnx encoder is a torch-dynamo export. On the DirectML EP it is a two-sided trap (isolated by graph bisection): dynamic shapes crash the Reshape/attention kernels (MLOperatorAuthorImpl.cpp:2597, then a D3D12 device-removal 887A0020), and forcing static shapes fails session creation in InferAndVerifyOutputSizes (:2853) — both unfixed ORT-DML defects around the dynamo view idiom (upstream onnxruntime #26826 / #26944; the DML EP is in maintenance mode). NVIDIA's Parakeet FastConformer, exported via TorchScript, runs fine on DML — so this repo re-exports the same encoder the same way.

What changed

  • encoder-model.onnx (+ encoder-model.int8.onnx): re-exported from the nvidia/canary-180m-flash NeMo checkpoint via torch.onnx.export(dynamo=False, opset=17), same I/O contract as istupakov (audio_signal[B,128,T], length[B] → encoder_embeddings[B,S,1024], encoder_mask[B,S]). Numerically identical to istupakov's encoder on CPU (max|Δ| ≈ 4e-6 — export-tracer float noise).
  • decoder-model.onnx / decoder-model.int8.onnx / config.json / vocab.txt: unchanged from istupakov/canary-180m-flash-onnx — the DML crash was encoder-only; the AED decoder is byte-for-byte the same.

Produced by WinSTT's canary_encoder_export.py.

Sources

1 source
Hugging FacePrimaryVersion f9d44f158a315d3e51800a5b0fe4798bb44360aa
huggingface.co/Masterx/canary-180m-flash-onnx/tree/f9d44f158a315d3e51800a5b0fe4798bb44360aa

Verified Sep 6

Download files

Model artifacts

9 artifacts

cross-kv-model.int8.onnx

onnx · 8.05 MB · SHA-256 54774264cdbd…2a50 · Hugging Face

Download file

cross-kv-model.onnx

onnx · 32.0 MB · SHA-256 a2844024d386…738a · Hugging Face

Download file

decoder-kv-model.int8.onnx

onnx · 67.7 MB · SHA-256 375a70f8d264…6245 · Hugging Face

Download file

decoder-kv-model.onnx

onnx · 269 MB · SHA-256 d243d500f2a1…1c2b · Hugging Face

Download file

decoder-model.int8.onnx

onnx · 75.8 MB · SHA-256 9dd9c4478720…a914 · Hugging Face

Download file

decoder-model.onnx

onnx · 301 MB · SHA-256 dd5ea0dd3fdc…3071 · Hugging Face

Download file

encoder-model.fp16.onnx

onnx · 220 MB · SHA-256 275630959cd1…1791 · Hugging Face

Download file

encoder-model.int8.onnx

onnx · 126 MB · SHA-256 d3360b0c84e3…7258 · Hugging Face

Download file

encoder-model.onnx

onnx · 440 MB · SHA-256 15119989f9a7…1674 · Hugging Face

Download file

Source excerpts

2 excerpts

--- license: cc-by-4.0 language: - en - de - es - fr pipeline_tag: automatic-speech-recognition tags: - automatic-speech-recognition - onnx - directml - nemo - canary base_model: - nvidia/canary-180m-flash --- # NVIDIA canary-180m-flash — DirectML-safe ONNX ONNX export of [nvidia/canary-180m-flash](https://huggingface.co/nvidia/canary-180m-flash) whose **encoder is re-exported in the TorchScript idiom** (`torch.onnx.export(dynamo=False)`), so the model runs on the ONNX Runtime **DirectML EP** (and every other EP). ## Why istupakov's `canary-180m-flash-onnx` encoder is a torch-**dynamo** export. On the DirectML EP it is a two-sided trap (isolated by graph bisection): dynamic shapes crash the Reshape/attention kernels (`MLOperatorAuthorImpl.cpp:2597`, then a D3D12 device-removal `887A0020`), and forcing static shapes fails session creation in `InferAndVerifyOutputSizes` (`:2853`) — both unfixed ORT-DML defects around the dynamo `view` idiom (upstream onnxruntime #26826 / #26944; the DML EP is in maintenance mode). NVIDIA's Parakeet FastConformer, exported via TorchScript, runs fine on DML — so this repo re-exports the **same encoder** the same way. ## What changed - `encoder-model.onnx` (+ `encoder-model.int8.onnx`): re-exported from the `nvidia/canary-180m-flash` NeMo checkpoint via `torch.onnx.export(dynamo=False, opset=17)`, same I/O contract as istupakov (`audio_signal[B,128,T]`, `length[B]` → `encoder_embeddings[B,S,1024]`, `encoder_mask[B,S]`). Numerically identical to istupakov's encoder on CPU (max|Δ| ≈ 4e-6 — export-tracer float noise). - `decoder-model.onnx` / `decoder-model.int8.onnx` / `config.json` / `vocab.txt`: **unchanged** from [istupakov/canary-180m-flash-onnx](https://huggingface.co/istupakov/canary-180m-flash-onnx) — the DML crash was encoder-only; the AED decoder is byte-for-byte the same. Produced by [WinSTT](https://github.com/dahshury/WinSTT)'s `canary_encoder_export.py`.

Source context: 11 downloads · 1 likes · Pipeline automatic-speech-recognition · Library nemo · Repo Masterx/canary-180m-flash-onnx