NVIDIA canary-1b-v2 β€” DirectML-safe ONNX

ONNX export of nvidia/canary-1b-v2 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-1b-v2-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-1b-v2 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-1b-v2-onnx β€” the DML crash was encoder-only; the AED decoder is byte-for-byte the same.

Produced by WinSTT's canary_encoder_export.py.

Downloads last month
32
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Model tree for Masterx/canary-1b-v2-onnx

Quantized
(8)
this model