Instructions to use BuzzASR/dutch with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use BuzzASR/dutch with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("automatic-speech-recognition", model="BuzzASR/dutch")# Load model directly from transformers import AutoProcessor, AutoModelForSpeechSeq2Seq processor = AutoProcessor.from_pretrained("BuzzASR/dutch") model = AutoModelForSpeechSeq2Seq.from_pretrained("BuzzASR/dutch", device_map="auto") - Notebooks
- Google Colab
- Kaggle
File size: 2,309 Bytes
c55e8ac | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | ---
language: nl
license: mit
library_name: transformers
pipeline_tag: automatic-speech-recognition
base_model: openai/whisper-large-v3
tags: [automatic-speech-recognition, whisper, dutch, buzzasr]
datasets: [google/fleurs]
metrics: [cer, wer]
---
# BuzzASR — Dutch
A monolingual automatic speech recognition model for **Dutch**, fine-tuned from
[openai/whisper-large-v3](https://huggingface.co/openai/whisper-large-v3). Part of **BuzzASR**,
a suite of 102 language-specialized ASR models (Findings of EMNLP 2026).
This model uses **simple fine-tuning (Whisper's tokenizer, ASR fine-tuning only)**.
> 🏆 **State-of-the-art (open-source).** On the combined FLEURS + Common Voice test set, this model
> achieves the lowest CER of every open system we compare against: Whisper-large-v3, Omnilingual 1B/7B, MMS, Qwen3-ASR, and Cohere Transcribe.
## Results (normalized CER / WER, %)
| Test set | CER | WER | Whisper-large-v3 (zero-shot) CER |
|---|---|---|---|
| FLEURS | 2.6 | 7.2 | 2.48 |
| Common Voice 25 | 1.27 | 3.92 | 2.04 |
| Combined | 1.49 | 4.67 | 1.98 |
~1.3x CER reduction over Whisper zero-shot on the combined test set.
## Usage
```python
import torch, torchaudio
from transformers import WhisperForConditionalGeneration, WhisperProcessor
model = WhisperForConditionalGeneration.from_pretrained("BuzzASR/dutch", torch_dtype=torch.float16).to("cuda").eval()
proc = WhisperProcessor.from_pretrained("BuzzASR/dutch")
wav, sr = torchaudio.load("audio.wav") # 16 kHz mono
feats = proc(wav[0], sampling_rate=16000, return_tensors="pt").input_features.to("cuda").half()
ids = model.generate(feats, num_beams=1, no_repeat_ngram_size=3, repetition_penalty=1.2)
print(proc.batch_decode(ids, skip_special_tokens=True)[0])
```
The language/task prompt is baked into the generation config, so no `language=` argument is needed.
## Training data
[FLEURS](https://huggingface.co/datasets/google/fleurs) + **Common Voice Corpus 25.0** (Mozilla, March 2025; https://commonvoice.mozilla.org/en/datasets), capped per the paper. Text-only data from the **Goldfish** corpus (Chang et al., 2026).
## Limitations
Monolingual (Dutch only). Evaluated on FLEURS / Common Voice test splits; other domains or dialects may differ.
## Citation
Project page: https://lemn-lab.github.io/buzzasr-docs/
|