A LoRA adapter for
openai/whisper-large-v3 fine-tuned for Swiss German (Schweizerdeutsch) automatic speech recognition. The adapter transcribes Swiss German dialect speech into grammatically correct Standard German text.
1from transformers import WhisperForConditionalGeneration, WhisperProcessor
2from peft import PeftModel
3import torch
4
5base_model_id = "openai/whisper-large-v3"
6adapter_id = "Flix-AI/flix-swissgerman-lora"
7
8processor = WhisperProcessor.from_pretrained(base_model_id)
9model = WhisperForConditionalGeneration.from_pretrained(
10 base_model_id, torch_dtype=torch.float32, device_map="auto"
11)
12model = PeftModel.from_pretrained(model, adapter_id)
13
14# Transcribe Swiss German audio
15audio_array = ... # numpy array, 16kHz mono
16input_features = processor(
17 audio_array, sampling_rate=16000, return_tensors="pt"
18).input_features.to(model.device)
19
20predicted_ids = model.generate(input_features, language="de", task="transcribe")
21transcription = processor.batch_decode(predicted_ids, skip_special_tokens=True)[0]
22print(transcription)
No training data is redistributed with this model. The model was trained under the Swiss text and data mining research exception (Art. 24d URG).
1@article{akeret2026whisper-swiss-german,
2 title={Subtitle-Aligned Fine-Tuning of Whisper for Swiss German ASR: Benchmark Contamination, Convention Mismatch, and an Honest Baseline at 25.6\% WER (13.8\% cWER)},
3 author={Akeret, Felix},
4 year={2026},
5 url={https://arxiv.org/abs/2606.07608},
6 eprint={2606.07608},
7 archivePrefix={arXiv},
8 primaryClass={cs.CL}
9}