WhIPA base (Common Voice) β ONNX
A converted and quantised copy of jshrdt/whipa-base-cv (WhIPA: Whisper base fine-tuned for IPA transcription) by Jacob Lee Suchardt, Hana El-Shazli and Pierluigi Cassotti, Towards Language-Agnostic STIPA: Universal Phonetic Transcription to Support Language Documentation at Scale (EMNLP 2025; code: jshrdt/whipa). Apache License 2.0, as the original.
Changes made: encoder and decoder exported as two ONNX graphs (the decoder runs
without a KV cache and takes explicit positions), then converted to fp16 weights
(inputs/outputs stay float32). Dynamic int8 quantisation was tried and dropped: it
shifted the greedy output noticeably (and differently in onnxruntime-web); fp16 changed
1 of 95 test clips. Export script:
speech-to-ipa/eval/export_whipa_onnx.py.
Files
encoder.fp16.onnxβinput_features[1, 80, 3000]βhidden[1, 1500, 512].decoder.fp16.onnxβinput_ids[1, L],positions[L](0β¦Lβ1),hiddenβlogits[1, L, 51866].tokens.jsonβ prompt ids (<|startoftranscript|><|ip|><|transcribe|><|notimestamps|>), end token, suppressed tokens and the byte-level BPE token strings.mel.jsonβ the 80 mel filters for Whisper's log-mel features.
Accuracy
On 760 VoxAngeles utterances (8 from each of 95 languages), narrow scoring, greedy decoding capped at 20 phones per second: PER 79.3 / PFER 25.6 for the fp32 export β identical to the original with the same decoding (86.0 / 28.5 with beam search and fallbacks). The fp16 copy matches fp32 on 94 of 95 one-per-language clips.
Used by speech-to-ipa.