loudness.ai
  • Model
  • Urdu · English
  • CC BY-NC 4.0

Urdu Sukhan ASR

An Urdu speech recognition model that also understands English and speech that switches between Urdu and English. It is fine-tuned from OpenAI’s Whisper large-v3-turbo and makes 39% fewer word errors than that model on seven held-out Urdu test sets. It keeps the turbo model’s speed and size, about half the size of Whisper large-v3.

Know before you use it: names are its weakest point (11 of 23 spelled right in our test chapter). See Limitations and what the next version will fix.

Words wrong for Whisper large-v3-turbo and Urdu Sukhan ASR on every test set

Better Urdu

From 30.9% to 12.7% words wrong on IndicVoices, from 39.8% to 28.1% on Common Voice speakers it never heard, and better on every Urdu test set we have.

English and mixed speech

English stays as accurate as the base model. Clips that switch from Urdu to English fall from 53.6% to 19.7% words wrong, with English words in English letters.

Short replies and silence

One- or two-word replies fall from 88.9% to 23.6% words wrong. With blank suppression off, it writes nothing on silence, noise or music.

Three formats

Transformers (fp16) for Python and GPUs, whisper.cpp (q8_0, q5_0, q4_0) for CPUs and Apple Silicon, and CTranslate2 int8 for faster-whisper.

Half the size of large-v3

809 million parameters, against 1.55 billion for Whisper large-v3, with 32 encoder and 4 decoder layers. One 30-second window takes 1.3 seconds on an Apple M4 GPU.

Open method

The data sources, every training round, including those that failed, and every evaluation are published in our research report and on GitHub.

Results

Words wrong (WER, %) after the same normalisation for both models, with greedy decoding in Hugging Face Transformers. None of these sets was used in training.

Words wrong (WER, %) on held-out test sets and three stress sets; lower is better.
Test setWhisper large-v3-turboUrdu Sukhan ASR v1
IndicVoices Urdu validation30.912.7
Common Voice, unseen speakers39.828.1
FLEURS Urdu test21.016.2
UrduSpeech test split14.58.8
nzg73, held-out clips4.81.6
Audiobook 1, held-out chapters5.94.0
Audiobook 2, held-out chapter17.213.2
Stress: one- or two-word replies88.923.6
Stress: Urdu then English in one clip53.619.7
Stress: English (FLEURS)4.94.9

The test sets we can share, 808 clips (about 96 minutes) from the Common Voice and FLEURS Urdu test sets and eight stress sets, are on Hugging Face on request. Get IndicVoices, UrduSpeech and nzg73 from their publishers.

Test sets on Hugging FaceResearch report

Compared with Whisper large-v3

Urdu Sukhan ASR has the layout of Whisper large-v3-turbo: the same 32-layer encoder as Whisper large-v3 and a 4-layer decoder instead of 32.

Whisper large-v3 and Urdu Sukhan ASR (turbo layout). File sizes from the whisper.cpp model files; GPU memory and speed are OpenAI’s figures.
Whisper large-v3Urdu Sukhan ASR (turbo layout)
Parameters1,550 M809 M
Encoder / decoder layers32 / 3232 / 4
whisper.cpp file, fp163,095 MB1,625 MB
whisper.cpp file, q5_01,081 MB574 MB
GPU memory (OpenAI)about 10 GBabout 6 GB
Relative speed (OpenAI: English, A100)1×about 8×

OpenAI’s speed figure comes from the smaller decoder. On a CPU in whisper.cpp, the encoder, which both models share in size, does about 95% of the work, so the gain there is much smaller. We have not timed or scored Whisper large-v3 ourselves.

Sources:

OpenAI Whisperwhisper.cpp models

Use it

Try it in Colab, without installing

Our Colab notebook runs the model in your own Google Colab session, on a free GPU or the CPU: record from the microphone, upload a file or try the example clips, with the recommended settings built in. It needs an approved access request and a free Google account. Your audio goes to your Colab session on Google’s servers, never to Loudness.ai.

whisper.cpp (command line)

git clone https://github.com/Loudness-ai/urdu-sukhan-asr.git
cd urdu-sukhan-asr
bash examples/whisper_cpp.sh speech.wav

faster-whisper (Python)

python -m pip install faster-whisper==1.2.1 ctranslate2==4.8.3 huggingface_hub==2.2.0 soundfile==0.14.0 soxr==1.1.0
python examples/transcribe_faster_whisper.py speech.wav

Transformers (Python)

python -m pip install -r examples/requirements.txt
python examples/transcribe_transformers.py speech.wav

The model files are shared on request, so first request access on Hugging Face and log in with hf auth login. Each command then runs a tested script from the examples folder of the GitHub repository. The installation guide covers each format step by step, with the settings and common problems:

Recommended settings

Limitations

Read these before relying on the model.

Next version

What we plan to change for the next model, each from a problem this one showed:

Problems in Urdu Sukhan ASR v1 and the plan for the next model.
Problem in v1Plan for the next model
Names: 11 of 23 right in our test chapter; rare names become common wordsMore name-rich training speech (news, interviews, stories with many characters), a larger test set of names, and name prompts in the examples and test page
Faint training speech taught the model to hear words in hissSet every clip to a normal level before augmenting it
One word on silence unless an empty result is allowedEncode empty transcripts without a space, so the model can stop with default settings
Stress-test noise and music were heard in trainingKeep test noise and music out of augmentation
Joined or split wordsCheck training transcripts for word spacing and count spacing errors separately
Every clip pays for a 30-second window on CPUsFine-tune for shorter audio windows; train a smaller, faster student on more teacher-transcribed audio (our 16-layer student was 1.9× faster in the encoder but 0.5–5.4 points less accurate, so it is not released)
No iPhone build (the Core ML encoder lost precision)A precise on-device build for iPhone
Settings we have not testedPakistani conversational and phone speech, more women speakers, larger test sets with confidence intervals, memory and phone measurements, and a direct comparison with Whisper large-v3

Data and credits

Trained on about 110 hours: IndicVoices and the Urdu part of Rasa by AI4Bharat, Mozilla Common Voice, Google FLEURS, the dataset of Muhammad Noman – nzg73 under its own licence, UAT audio only (transcribed by our own model; no public licence; used by agreement with its developers), MUSAN noise and music, and two audiobooks read by two narrators, with transcripts proofread by Asad Shehzad. The research report lists every source and its terms.

Research reportExample audio on Hugging FaceTest sets on Hugging Face

Runs where you run it

The model runs on your computer, your server or in your app, and audio is never sent to Loudness.ai. Downloading the model needs a Hugging Face account with approved access; running it needs no account or key.

Licence

Urdu Sukhan ASR is released under the CC BY-NC 4.0 licence: free for non-commercial use, with credit. The model files are shared on request: ask for access on Hugging Face, and we approve each request by hand. For commercial use, contact us.

Prefer the browser?

Clean a recording before you transcribe it, free online:

Audio EnhancerEcho RemoverExtract Audio from VideoSilence Remover

Cite

Shehzad, A. (2026). Urdu Sukhan ASR: Accurate Urdu Speech Recognition at Half the Size of Whisper large-v3. Technical report LA-RB-2026-004, Loudness.ai. DOI: 10.5281/zenodo.23518703.

BibTeX and RIS files are on the research report page:

Links

Hugging FaceGitHubExample audio on Hugging FaceTest sets on Hugging FaceTry it in ColabInstallation guideResearch reportAI Noise Remover SDKloudness-ttsAll developer guides

More from Loudness.ai

Sign in to Loudness.ai