whisper-base-hungarian-soup — GGML (whisper.cpp)
GGML quantizations of sarpba/whisper-base-hungarian-soup,
a Hungarian model soup of openai/whisper-base fine-tunes (90 % weight from
whisper-hu-base-finetuned-V2 + 10 % from whisper-base-hungarian_v4), packaged
for whisper.cpp (ggml-*.bin, the
legacy GGML container that whisper-cli / whisper-server load — not GGUF,
and not a transformers checkpoint).
Magyarul, röviden: a magyar whisper-base model soup whisper.cpp-hez készült GGML kvantált változatai (f16, q8_0, q5_0, q4_0). 74 M paraméter, 80 mel, 6 encoder + 6 decoder réteg. A q8_0 gyakorlatilag veszteségmentes (a f16-hoz képest mérve a különbség a zajon belül van), a q5_0 +0,34, a q4_0 viszont már +1,08 WER-pontot veszít — ilyen kis modellnél a durva kvantálás jobban fáj, ezért itt a q8_0 vagy a q5_0 az ajánlott, a q4_0 csak végső helyszűkében. A modell szövegfelismerésre való: a saját időbélyegei ebben a runtime-ban használhatatlanok (minden szegmens 0,00→30,00).
Files
| file | quant | size | sha256 (first 16) |
|---|---|---|---|
ggml-whisper-base-hungarian-soup-f16.bin |
f16 (reference) | 147 951 465 B (141 MiB) | 7c5576de98aa551a |
ggml-whisper-base-hungarian-soup-q8_0.bin |
q8_0 | 81 768 585 B (78 MiB) | 2ef0e3e02c4b6807 |
ggml-whisper-base-hungarian-soup-q5_0.bin |
q5_0 | 55 295 433 B (53 MiB) | 468fe0331bc65bdc |
ggml-whisper-base-hungarian-soup-q4_0.bin |
q4_0 | 46 471 049 B (44 MiB) | 1fb8ae88519a146d |
Which one? q8_0 is the recommended default (78 MiB, no measurable loss);
q5_0 if you want 53 MiB and can spend +0.34 WER points; q4_0 only when the
44 MiB really matters — it costs ~1.1 WER points.
Measured quality and speed
Protocol: 1 000 utterances of CommonVoice-22 Hungarian test split,
1.589 h of audio, 16 kHz mono, greedy decoding (-bs 1 -bo 1 -nf),
whisper-server with concurrency 1, RTX 3090, whisper.cpp v1.9.5 (commit
231638a, ggml 0.27.0, CUDA 13.0). Text normalized with the benchmark's
Hungarian normalizer (NORM_V=2: lowercase, punctuation stripped, accents kept
— á é í ó ő ú ű are not folded). WER/CER are percentages.
| quant | WER % | CER % | ΔWER vs f16 | x-factor (audio/wall) |
|---|---|---|---|---|
| f16 | 16.92 | 3.59 | — | 78.5× |
| q8_0 | 16.81 | 3.55 | −0.11 pt (noise) | 76.0× |
| q5_0 | 17.26 | 3.70 | +0.34 pt | 76.7× |
| q4_0 | 18.00 | 3.90 | +1.08 pt | 76.1× |
For reference, the same checkpoint in the PyTorch runtime (transformers, fp16, batch 8, greedy) scores 17.93 % WER / 3.75 % CER at 179.2× on the same 1 000 utterances. The GGML f16 hypotheses are 80.9 % word-for-word identical to the PyTorch fp16 hypotheses (96.5 % within 95 % character similarity; runtime-vs-runtime WER 4.3 %) — a base-size model diverges a bit more between runtimes than the large models do, but the conversion itself is exact (245/245 tensors, see below).
Takeaway at base size: q8_0 is free, q5_0 is fine, q4_0 is not (+1.1 WER points) — the opposite of the large-v3-turbo fine-tune, where q4_0 costs only 0.17 points. Small models are more sensitive to quantization. Speed is flat across levels (76–78×), so the choice here is purely size vs. accuracy.
How it compares to the sibling releases
Same pool, same protocol, q8_0 pick:
| model | params | q8_0 size | WER % | x-factor |
|---|---|---|---|---|
| whisper-hu-large-v3-turbo-finetuned | 809 M | 874 MB | 10.72 | 47.4× |
| whisper-hu-small-finetuned | 244 M | 264 MB | 17.68 | 53.0× |
| this model (whisper-base soup) | 74 M | 82 MB | 16.81 | 76.0× |
The soup is a strong small option: it beats the 3.3× larger whisper-small fine-tune on this pool at 1.4× the speed.
Usage
git clone https://github.com/ggml-org/whisper.cpp
cd whisper.cpp && cmake -B build -DGGML_CUDA=1 && cmake --build build -j --config Release
hf download sarpba/whisper-base-hungarian-soup-GGML \
ggml-whisper-base-hungarian-soup-q8_0.bin --local-dir .
ffmpeg -i input.mp3 -ar 16000 -ac 1 -c:a pcm_s16le audio.wav
./build/bin/whisper-cli \
-m ggml-whisper-base-hungarian-soup-q8_0.bin -l hu -f audio.wav
Useful flags: -bs 1 -bo 1 -nf greedy (what the WER table used; the CLI default
is beam search -bs 5 -bo 5); -dev 0 GPU selection; -ng = no GPU (CPU) in
this build, -t 8 CPU threads; -mc 0 drops text context (~25 % faster on short
utterances); -oj / -ojf / -osrt output formats.
How these files were produced
# source checkpoint, pinned
hf download sarpba/whisper-base-hungarian-soup --revision bb1a980e8d5156d2796dd1f55fcd7ef45f3bbb38 --local-dir src
# HF transformers names -> OpenAI/ggml tensor contract (245 tensors, config-driven dims)
python conversion/hf_to_openai_pt.py src model-openai-f16.pt
# .pt -> legacy ggml .bin (needs openai/whisper's mel_filters.npz + multilingual.tiktoken)
python whisper.cpp/models/convert-pt-to-ggml.py model-openai-f16.pt openai-whisper .
whisper.cpp/build/bin/whisper-quantize ggml-model.bin out-q8_0.bin q8_0
whisper.cpp/build/bin/whisper-quantize ggml-model.bin out-q5_0.bin q5_0
whisper.cpp/build/bin/whisper-quantize ggml-model.bin out-q4_0.bin q4_0
The produced GGML tensor list is 245/245 tensors of the whisper.cpp loader
contract (11 + 15·6 + 24·6 for an encoder-6/decoder-6 model), with n_mels=80,
n_vocab=51865, f16 matmul/conv/token weights and f32 biases/LayerNorms/
positional embeddings — the same dtype policy the prebuilt ggerganov bins use.
Note the soup's weights are plain parameter averages (no architecture change),
so the conversion is structurally identical to a normal whisper-base fine-tune.
Limitations
- No reliable timestamps from this model in whisper.cpp. Every segment comes
out pinned to
0.00 → 30.00regardless of audio length (verified on 5 s and 10.5 s clips; the owner's other Hungarian fine-tunes behave the same, while base OpenAI Whisper has sane segments in the same build). Use this model for text, and get word timings from a forced aligner (e.g. a Hungarian wav2vec2 CTC model or MFA). - Hungarian read-speech domain. Numbers are on CommonVoice-22 HU (clean read speech). Expect higher error on noisy, telephone or conversational audio.
- Not loadable by
transformers,faster-whisperor CTranslate2. Use the original repo for PyTorch weights. - This is the legacy GGML
.bincontainer, not GGUF. whisper.cpp does not consume GGUF for Whisper models; do not rename these files to.gguf.
License
The source model card declares no license; the upstream base
(openai/whisper-base) is MIT, and this quantized derivative is released under
MIT. See LICENSE.
Provenance
- Source:
sarpba/whisper-base-hungarian-soup@bb1a980e8d5156d2796dd1f55fcd7ef45f3bbb38 - Base:
openai/whisper-base; soup ofsarpba/whisper-hu-base-finetuned-V2(90 %) +sarpba/whisper-base-hungarian_v4(10 %); source card reports FLEURS hu_hu test WER 24.05 - Toolchain: whisper.cpp v1.9.5 (
231638a0717b7822784297e5980965ffcec05810), ggml 0.27.0 - Arch: 74 M params, 80 mel, 1500 audio ctx, 448 text ctx, 51865 vocab
- Produced on 2026-10-25; rows in
benchmark.json.