Skip to content

docs: Parakeet TDT on tract is not an ort replacement - #90

Merged
ekhodzitsky merged 1 commit into
masterfrom
spike/parakeet-tract
Sep 21, 2026
Merged

ekhodzitsky merged 1 commit into
masterfrom
spike/parakeet-tract

Conversation

@ekhodzitsky

Copy link
Copy Markdown
Owner

Shipping Parakeet TDT 0.6B v3 ONNX graphs were run on tract-onnx (same line as backend-tract) and compared to polyvoice-transcribe / ONNX Runtime on the 7.4 s LibriSpeech clip the sonos example uses.

Result: do not move polyvoice-asr off ONNX Runtime.

  • FP32 encoder + fused decoder_joint run when batch/time are bound. LSTM is explicit [2,1,640] state ports, not an unfold.
  • The weights-only INT8 encoder does not optimize (MatMulNBits / dynamic axes).
  • Tract FP32 infer is 7.8× at ~4 GiB RSS; the transcript is wrong (wish dropped). Ort remains correct. Published long-file INT8 is 11.7×.
  • Word starts that both stacks emit share the parakeet-rs frame clock (e.g. Well 0.320 s).

Notes: docs/parakeet-tract-measured.md, benchmarks/results/parakeet-tract-2026-09-21/. No production code.

Shipping FP32 encoder and fused decoder_joint run on tract-onnx when
shapes are bound; LSTM is explicit state ports, not an unfold. The
weights-only INT8 encoder does not optimize. No RTFx or RSS win versus
the companion's ONNX Runtime path. Keep ort isolated in polyvoice-asr.
@ekhodzitsky
ekhodzitsky merged commit 6e78430 into master Sep 21, 2026
47 of 48 checks passed
@ekhodzitsky
ekhodzitsky deleted the spike/parakeet-tract branch September 21, 2026 15:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant