Files
Table with columns: Path, Format, Size, Use with| Path | Format | Size | Use with |
|---|
/ (root) | Transformers, fp32 safetensors | 290 MB | transformers |
ct2/fp32/ | CTranslate2, float32 | 290 MB | faster-whisper |
ct2/int8/ | CTranslate2, int8 | 76 MB | faster-whisper (fast on CPU) |
The int8 build is within 0.2 WER points of fp32 on the held-out test sets below (same decoding, GPU).
Usage
Transformers
from transformers import pipeline asr = pipeline("automatic-speech-recognition", model="abhishekgautamm/whisper-base-hinglish", chunk_length_s=30)print(asr("clip.wav", generate_kwargs={"language": "en", "task": "transcribe"})["text"])
faster-whisper (CTranslate2)
from huggingface_hub import snapshot_downloadfrom faster_whisper import WhisperModel path = snapshot_download("abhishekgautamm/whisper-base-hinglish-v2", allow_patterns=["ct2/int8/*"])model = WhisperModel(f"{path}/ct2/int8", device="cpu", compute_type="int8")segments, _ = model.transcribe("clip.wav", language="en", beam_size=1, without_timestamps=True)print("".join(s.text for s in segments).strip())
Always decode with language="en" and without timestamps (without_timestamps=True in faster-whisper; transformers does this by default). The model was trained to emit Roman text under the English token,
for Hindi speech too. Adding no_repeat_ngram_size=3, repetition_penalty=1.1 (as in the evaluation) suppresses
rare repetition loops.
Evaluation
Word / character error rate (%), greedy decoding, fp32. References and outputs are lower-cased,
punctuation-stripped and digits spelled out; Devanagari references are romanized with
LIPI (the same tool used to build the training targets).
Public benchmarks, full test sets (none of these were used in training)
Table with columns: Dataset, Domain, Clips, WER, CER| Dataset | Domain | Clips | WER | CER |
|---|
| Svarah | Indian-accented English | 6,656 | 24.1 | 13.9 |
| Monsoon en-IN | Indian English | 2,102 | 16.4 | 8.7 |
| CoSHE-Eval | Long-form Hinglish (~60 s clips) | 1,985 | 36.6 | 19.8 |
| FLEURS hi_in | Hindi (read) | 418 | 34.5 | 16.0 |
Held-out test sets of the training corpora (official test splits; SPIRE/wSPIRE by held-out speaker, VoiceBench by held-out prompt)
Table with columns: Dataset, Domain, Clips, WER, CER| Dataset | Domain | Clips | WER | CER |
|---|
| IISc wSPIRE | Indian English, incl. whispered | 150 | 2.4 | 1.2 |
| IISc SPIRE-SIES | Spontaneous technical English | 150 | 23.9 | 14.8 |
| MUCS 2021 (Hi-En) | Hindi-English code-switch | 250 | 28.4 | 19.3 |
| MUCS 2021 (Hindi) | Hindi (read) | 250 | 29.2 | 12.6 |
| HiACC (adult) | Hinglish | 150 | 18.1 | 8.4 |
| HiACC (children) | Hinglish | 150 | 17.8 | 7.8 |
| VoiceBench | Spoken assistant prompts | 250 | 16.9 | 8.7 |
| SLURP | Assistant commands | 250 | 25.3 | 16.2 |
| Fluent Speech Commands | Short commands | 100 | 2.9 | 1.9 |
| Timers and Such | Numbers / times | 200 | 2.9 | 2.4 |
Training
About 250 hours, with every target romanized by LIPI: MUCS 2021 Hindi-English (86 h), Common Voice English (48 h),
IISc wSPIRE (31 h), IISc SPIRE-SIES (26 h), MUCS 2021 Hindi (14 h), VoiceBench (13 h), SLURP (7 h),
Timers and Such (5 h), HiACC (4 h), Fluent Speech Commands (0.5 h). The language token is forced to en. Training ran for 3 epochs (released checkpoint),
LR 1e-4 with 300 warm-up steps, fp16 mixed precision.
Limitations
- Roman spelling of Hindi is phonetic and can vary (
hai / hain, ki / kii).
- Little punctuation or casing.
- Weakest on long-form conversational Hinglish (CoSHE) and read Hindi; best on short dictation-style speech.
- Hindi, English and Hinglish only; other Indic languages are out of scope.
- The Hindi scores use the same romanizer as the training targets, which favours this model's spelling conventions.
- The training corpora carry their own licenses; check them before commercial use.