Views
No views yet
| Metric | Score |
|---|---|
| WER (normalized) | 1.58% |
| WER (diacritized) | 3.92% |
| Tarteel AI baseline | 5.75% |
| Parameter | Value |
|---|---|
| Base model | openai/whisper-large-v3 (1.5B params) |
| Method | LoRA (r=32, alpha=64) |
| Target modules | q_proj, k_proj, v_proj, out_proj, fc1, fc2 |
| Trainable params | ~13M (0.87%) |
| Dataset | tarteel-ai/everyayah (~127K samples) |
| Epochs | 5 (~18K steps) |
| Batch size | 32 x 2 = 64 effective |
| Learning rate | 3e-4 (cosine scheduler) |
| Precision | fp16 |
| GPU | NVIDIA A100 80GB |
| Training time | ~12 hours |
1from transformers import WhisperProcessor, WhisperForConditionalGeneration
2from peft import PeftModel
3
4processor = WhisperProcessor.from_pretrained("baristiran/whisper-large-v3-quran-lora")
5base_model = WhisperForConditionalGeneration.from_pretrained("openai/whisper-large-v3")
6model = PeftModel.from_pretrained(base_model, "baristiran/whisper-large-v3-quran-lora")
7
8# Transcribe
9inputs = processor(audio_array, sampling_rate=16000, return_tensors="pt")
10predicted_ids = model.generate(**inputs, max_length=225)
11transcription = processor.batch_decode(predicted_ids, skip_special_tokens=True)[0]