Neurlang Whipstr STT (ASR)

A deep learning automatic speech recognition (ASR) system for transcribing speech audio into IPA text using transformer-based sequence-to-sequence models.

  • Language: Universal (IPA), 74+ languages
  • Model Github: neurlang/whipstr https://github.com/neurlang/whipstr
  • Model Dataset: Common Voice 21
  • Model-Native Sample Rates: 8000 Hz, 16000 Hz, 24000 Hz, 32000 Hz, 48000 Hz
  • Degraded-Performance Sample Rates: 11025 Hz, 22050 Hz, 44100 Hz
  • License: GPL v2
  • Release: 2026-07-09
  • Size: 642 MB
  • Total parameters:
    • Encoder: 7 237 024
    • Transformer: 44 499 744
    • Total: 51 736 768
  • CER: 33.88% (66.12% success rate)
    • Note: Averaged across all supported languages, works better on higher resource languages
  • WER: 73.00% (27% success rate)
    • Note: Averaged across all supported languages, works better on higher resource languages
  • Training Details:
    • Hardware: Nvidia Spark
    • Batch size: 1
    • Samples: 1185000
    • Duration: 2:03:23:00
    • Runs: Jul 7 07:43 - Jul 9 11:06 (shut down at Jul 9 12:55)

Inference code

git clone https://github.com/neurlang/whipstr.git
cd whipstr/
uv run --with torch --with transformers --with phase-spectrogram stt_infer_hf.py --audio /home/m/Downloads/LJ001-0001.wav --model neurlang/ipa-whipstr-medium-48khz-cv-21

Inference code (microphone)

uv run --with torch --with transformers --with phase-spectrogram --with sounddevice stt_mic_hf.py --model neurlang/ipa-whipstr-medium-48khz-cv-21

Output:

config.json: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 368/368 [00:00<00:00, 2.09MB/s]
model.safetensors: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 227M/227M [00:07<00:00, 29.4MB/s]
Loading weights: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 199/199 [00:00<00:00, 16263.01it/s]
model.json: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 3.84k/3.84k [00:00<00:00, 12.3MB/s]
Transcription: ˈɪt gˈɪt sˈʌbkəldz dˈɑɹk fˈeɪz fˈæst ðə ɹˌɛpətˈɪʃən luːp nˈoʊ ˈiːvəz bɪˈheɪvjə ɹisˈɑlɪks lˈaɪk ðə mˈɑdəl hˈæd lˈɚnd bˈeɪsɪks ˈæktɪs....

Explanaition

Generated IPA Intended text Assessment
ˈɪt It ✓ Perfect
gˈɪt gets Very close (/ɛ/→/ɪ/, final /s/ lost)
sˈʌbkəldz you past / past the cold- This is where it still collapses several words together.
dˈɑɹk start Still confuses start with dark.
fˈeɪz phase ✓ Excellent
fˈæst fast ✓ Perfect
ðə The
ɹˌɛpətˈɪʃən repetition ✓ Nearly perfect
luːp loop ✓ Perfect
nˈoʊ no
ˈiːvəz EOS Surprisingly close phonetically if the model has never seen "EOS" pronounced.
bɪˈheɪvjə behavior ✓ Excellent
ɹisˈɑlɪks we saw looks This is still garbled.
lˈaɪk ðə like the
mˈɑdəl model ✓ Perfect
hˈæd hadn't Lost the negation.
lˈɚnd learned
bˈeɪsɪks basic
ˈæktɪs mechanics Still quite far.

End of training data:

Step 1185000 is chosen as this release

Step WER CER
986000 80.65% 36.93%
1148000 74.62% 35.12%
1185000 73.00% 33.88%
1202000 75.55% 34.24%
1218000 74.28% 35.23%
Downloads last month
94
Safetensors
Model size
56.9M params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support