Views
No views yet
--word-timestamps=aligned)<timestamp> positions (5000 80ms-wide bins), not incremental greedy decoding, so it is not dispatched through the qwen3-asr runtimethinker tensor layout, byte-for-byte; only the final head differs (an independent 5000-way classification head instead of the tied vocabulary head)--word-timestamps=aligned and internally when external diarization must split a coarse ASR segment at speaker changes.oasr packs run with no Python at inference, engineered for peak performance on CPU & GPU1# 1. Install the OpenASR CLI · https://openasr.org
2# 2. Pull the pack
3openasr pull qwen3-forced-aligner-0.6b:q4
4
5# 3. Use it as an opt-in refinement for another model's transcribe call
6openasr transcribe meeting.wav --model <asr-model> --word-timestamps=aligned| Quant | File (.oasr) | Size |
|---|---|---|
| fp16 | qwen3-forced-aligner-0.6b-fp16.oasr | 1.84 GB |
| q8_0 | qwen3-forced-aligner-0.6b-q8_0.oasr | 986 MB |
| q4_k | qwen3-forced-aligner-0.6b-q4_k.oasr | 765 MB |
thinker tensor layout byte-for-byte with Qwen3-ASR (same
Qwen3ASRForConditionalGeneration architecture). The only structural difference is the final
head: instead of a tied vocabulary lm_head, it uses an independent Linear(hidden_size, 5000) classification head over 80ms-wide timestamp bins. Given a transcript's text and its
source audio, it runs a single non-autoregressive forward pass and reads off word-boundary
timestamps at argmax <timestamp> positions -- refining a model family's own (typically
decode-time-approximate) per-word timestamps. This OpenASR repo repackages the weights as
.oasr packs that run natively in the OpenASR runtime -- no Python at inference, all decoding
local. OpenASR recommends the validated q4_k tier and also ships q8_0 and an fp16
full-precision reference tier. The q4_k label is the catalog's unified product name, not a claim
that every matrix uses Q4_K: the audio encoder, token embedding, and timestamp head remain Q8_0,
and pack verification replays the exact per-tensor policy. Q3 and legacy all-Q4 packs are rejected
because small logit perturbations can move a word boundary across multiple 80ms bins.openasr transcribe <audio> --model <asr-model> --word-timestamps=aligned. It is also invoked internally when external speaker diarization
must split a coarse ASR segment at speaker changes; internally requested word anchors are
removed again unless the caller asked to receive them.openasr model-pack import qwen-forced-aligner ...)..oasr container is GGUF-backed; each shipped quant stores weights at the
requested precision while parity-sensitive tensors stay f32 where required.