Views
No views yet
anaszil/whisper-large-v3-turbo-darija is a fine-tuned LoRA adapter of OpenAI’s Whisper Large v3 Turbo, specialized for Moroccan Darija (ary) speech recognition.| Field | Description |
|---|---|
| Model Type | Encoder-decoder ASR (Whisper Large v3 Turbo, LoRA fine-tune) |
| Language(s) | Moroccan Arabic (Darija) |
| License | MIT |
| Finetuned From | openai/whisper-large-v3-turbo |
| Hardware Used | 1 × H100 80 GB GPU |
| Frameworks | transformers 4.48.3, peft 0.14.0 |
| Evaluation Metrics | WER = 24.9 %, CER = 8.3 % |
1import torch
2from peft import PeftModel
3from transformers import WhisperForConditionalGeneration, WhisperProcessor, pipeline
4
5# Base and LoRA model names
6base_model = "openai/whisper-large-v3-turbo"
7lora_model = "anaszil/whisper-large-v3-turbo-darija"
8
9# Load base model and apply LoRA adapters
10dtype = torch.float16 if torch.cuda.is_available() else torch.float32
11device = 0 if torch.cuda.is_available() else "cpu"
12
13base = WhisperForConditionalGeneration.from_pretrained(base_model, torch_dtype=dtype)
14model = PeftModel.from_pretrained(base, lora_model)
15processor = WhisperProcessor.from_pretrained(base_model, language="Arabic", task="transcribe")
16
17# Build the ASR pipeline
18asr = pipeline(
19 task="automatic-speech-recognition",
20 model=model,
21 tokenizer=processor.tokenizer,
22 feature_extractor=processor.feature_extractor,
23 chunk_length_s=30,
24 device=device,
25)
26
27# Run inference
28output = asr("path/to/audio.wav")
29print(output["text"])openai/whisper-large-v3-turboq_proj, k_proj, v_proj, out_proj, fc1, fc2r): 16lora_alpha): 32| Metric | Result |
|---|---|
| Word Error Rate (WER) | 24.88 % |
| Character Error Rate (CER) | 8.28 % |
| Evaluation Loss | 0.322 |