Two questions, two pipelines

Recognizing a voice and recognizing words are different problems. Quranic Shazam uses ECAPA-TDNN speaker embeddings with ONNX Runtime to rank 20 reciter profiles. Verse discovery instead uses a Quran-tuned Whisper model, normalizes the Arabic transcript, and matches it against 6,236 verses. The speaker model is pretrained; it is not fine-tuned on Qur’an recordings.

Ask for context before claiming certainty

A short recitation can fit more than one verse. Progressive listening adds audio context up to a 60-second limit, while ambiguous results remain marked as uncertain. This trades a longer listening window for more context instead of forcing an early answer.

Keep inference away from the event loop

Model inference runs off the asynchronous API event loop. Uploads are capped at 25 MB, with separate audio-duration limits for recognition modes. These bounds make expensive requests finite while the API supports uploads and live microphone sessions.

Measure a defined task

The September 5, 2026 offline evaluation reports 97.31% top-1 and 99.10% top-3 reciter recognition across 781 held-out clips, using disjoint profile and evaluation surahs. Those results describe that reciter benchmark; they do not measure verse recognition or guarantee performance on arbitrary microphones, noise, or recordings.

Back to all notes