Qwen3-ASR 1.7B — packed Q8 image for qwen-asr
A pre-quantized weight image of Qwen/Qwen3-ASR-1.7B for the qwen-asr pure-C / WebAssembly / WebGPU inference engine (a fork of antirez/qwen-asr).
qwen-asr-q8.bin is the engine's --pack-q8 output: one safetensors-format
file in which the 28 decoder transformer layers, the tied embedding / LM head
and the audio tower are block-quantized to int8 (64 weights per f32 scale,
~1.06 bytes/weight), and the SwiGLU gate/up pair is pre-fused. It loads by
mmap/attach in ~15 ms natively and is what the browser demo streams: 2.18 GB
instead of 4.70 GB of bf16 shards.
| file | purpose |
|---|---|
qwen-asr-q8.bin | packed Q8 weights (decoder + encoder), safetensors layout |
vocab.json, merges.txt | byte-level BPE tokenizer files, unchanged from the base model |
Use
Native:
git clone https://github.com/ainoya/qwen-asr && cd qwen-asr && make blas
mkdir qwen3-asr-1.7b-q8 && cd qwen3-asr-1.7b-q8
# download qwen-asr-q8.bin, vocab.json, merges.txt from this repo, then:
cd .. && ./qwen_asr -d qwen3-asr-1.7b-q8 -i your_audio.wav
Browser: the playground fetches this file directly (WebGPU when available, wasm SIMD128 + threads otherwise), and caches it in OPFS after the first visit.
Quality
Q8 here quantizes weights only; on this 1.7B model the engine's English regression suite is transcript-identical to the bf16 path, and the packed image is the engine's default. See the engine repository for measured numbers and the calibration workflow.
License
Apache 2.0, inherited from the base model. The packing format and engine are MIT (© Salvatore Sanfilippo and contributors).