nemotron-speech-en-0.6b β ONNX 1120ms, int4 (WebGPU)
A 4-bit (MatMulNBits) quantization of the FP16 1120 ms ONNX export of NVIDIA's
nvidia/nemotron-speech-streaming-en-0.6b
(English FastConformer encoder + RNN-T transducer, with built-in punctuation &
capitalization), for running on-device in the browser via onnxruntime-web + WebGPU.
- ~469 MB total (encoder ~451 MB int4 + fused decoder ~18 MB fp16) vs ~1.25 GB for the FP16 build.
- Quantized only the encoder's MatMul weights to int4
MatMulNBits(217 ops); convs and the small fused prediction+joint decoder stay higher precision. NoConvInteger, so it loads and runs on the onnxruntime-web WebGPU execution provider. - Accuracy matches the FP16 export on tested clips (proper nouns, punctuation preserved).
Provenance
- Base model:
nvidia/nemotron-speech-streaming-en-0.6b(seeLICENSE.txt/NOTICE.txt). - FP16 1120 ms ONNX export:
shameez/nemotron-speech-streaming-en-0.6b-onnx-1120ms. - int4 quantization:
onnxruntime.quantization.matmul_nbits_quantizer(bits=4, block_size=128) β seequantize.py.
Files
| file | precision | notes |
|---|---|---|
encoder_model.onnx (+.data) |
int4 | cache-aware streaming FastConformer encoder |
decoder_model.onnx (+.data) |
fp16 | fused RNN-T prediction net + joint |
tokens.txt |
β | SentencePiece pieces (<piece> <id>), vocab 1024 + blank 1024 |
I/O (unchanged from the FP16 export)
- Encoder:
audio_signal[1,128,121](112 new + 9 overlap mel frames, log-mel 128/16kHz),lengthi64, batch-first cachescache_last_channel[1,24,70,1024]/cache_last_time[1,24,1024,8],cache_last_channel_leni64 βoutputs[1,1024,14](channel-major) +*_nextcaches. - Decoder (fused):
encoder_outputs[1,1024,1],targetsi32,target_lengthi32,input_states_1/2[2,1,640]βoutputs[β¦,1025]logits,output_states_1/2. blank id = 1024.
Model tree for valoomba/nemotron-speech-en-0.6b-onnx-1120ms-int4
Base model
nvidia/nemotron-speech-streaming-en-0.6b