Downloads · 30 days
3
6% of all-time downloads
JPSProject/jps-asr-gold-v3
jps-asr-gold-v3 is a machine learning model from JPSProject. Use it for the machine learning task on the model card, and read the license before you ship it in a product. It is set up for peft. The card lists the license as mit.
A LoRA adapter for openai/whisper-large-v3, fine-tuned to transcribe the voice of H.H. Jayapataka Swami Gurumaharaj, a senior Vaishnava spiritual leader whose post-stroke speech patterns are challenging for standard A…
Downloads · 30 days
3
6% of all-time downloads
All-time downloads
52
Public
Repo size
63 MB
Likes
0
Public
Click a slice to open those files.
.safetensors63 MB · 100%
From the Hugging Face model README
A LoRA adapter for openai/whisper-large-v3, fine-tuned to transcribe the voice of
H.H. Jayapataka Swami Gurumaharaj, a senior Vaishnava spiritual leader whose
post-stroke speech patterns are challenging for standard ASR systems.
WER on gold validation set: 30.6% (vs. 42.5% for Gold v2, 100%+ for base whisper-large-v3 without fine-tuning)
Gold v2 was trained on data where OCR subtitle timestamps (which appear 1-3 seconds after speech) were used as audio boundaries. This caused every training sample to pair the wrong audio with its text label.
Gold v3 was trained on the same corrected transcripts but with timestamps from
stable_whisper.align() — which uses forced alignment to find the precise moment
each word was spoken. This eliminated the systematic audio-text mismatch and
produced the WER improvement.
openai/whisper-large-v3 (1.55B params)q_proj, v_proj, k_proj, out_projimport torch
import librosa
from transformers import WhisperProcessor, WhisperForConditionalGeneration
from peft import PeftModel
BASE_MODEL = "openai/whisper-large-v3"
LORA_ADAPTER = "JPSProject/jps-asr-gold-v3"
processor = WhisperProcessor.from_pretrained(BASE_MODEL, language="en", task="transcribe")
base = WhisperForConditionalGeneration.from_pretrained(BASE_MODEL, torch_dtype=torch.float16)
model = PeftModel.from_pretrained(base, LORA_ADAPTER).eval()
audio, _ = librosa.load("voice_note.mp3", sr=16000)
inputs = processor(audio, sampling_rate=16000, return_tensors="pt").input_features
with torch.no_grad():
ids = model.generate(inputs, language="en", task="transcribe",
no_repeat_ngram_size=4, repetition_penalty=1.2)
text = processor.decode(ids[0], skip_special_tokens=True)
print(text)
This is a seva (act of devotional service) for H.H. Jayapataka Swami Gurumaharaj. After a stroke in 2008, Gurumaharaj's speech patterns changed significantly, making standard ASR systems largely unusable. This model is a step toward enabling Gurumaharaj to send voice notes to disciples with accurate automatic transcription.
Jai Srila Prabhupada! Jai Srila Gurumaharaj! Haribol!