--الحمد لله - WebVersion for testing this model

#5
by TheGreatQuran - opened

ربنا تقبل منا انك انت السميع العليم

This is a web version for testing this model elhamdule Allah
https://recitequran.pages.dev/recite/

Dictation mode (word green , red , or no color if confidence is low (ysprob) )
Tajweed mode ( Tashkeel check and Mudud - Ghunna - Shadda Duration Checking )
it is under development if anyone faced bugs , you can reply here

Jazaakallahu Khairan

ربنا تقبل منا انك انت السميع العليم

Masha'Allah, a working web version that anyone can open and test. 🤍 That is a bigger step than
any accuracy number, because it puts the thing in front of people who will never read a model card.

One suggestion on the colouring, from something I measured while building the confidence tooling.

CTC posteriors are extremely peaky. On a typical clip the mean confidence is around 0.98 and almost
nothing falls below 0.5, so a rule like "no colour if confidence is low" will almost never fire, and
high confidence is not evidence of correctness. What actually carries information is the margin:
the top probability minus the runner-up.

A phoneme at 0.79 with the alternative at 0.21 is a genuinely contested position. One at 1.000 with
everything else at 0.00 is not. Those two should be coloured differently, and confidence alone cannot
separate them.

It is also worth looking at which unit is the runner-up. If <blank> is competing, the model is
unsure anything was said there, usually an onset or a clipped sound. If a real phoneme is competing,
for example خَ against حَ, it heard a sound and is torn between two readings. Only the second is a
pronunciation issue worth showing the reciter in red.

decode_with_confidence.py in this repo emits the margin and the alternatives if you want the exact
shape of it.

If people report bugs here I will read them. Barak Allahu feek for shipping it.

Assalamu’alaikum wa rahmatullahi wa barakatuh, Akh Muno.

My name is Raufa, and I’m a high school student from Indonesia. I first came across your work while looking through model rankings, and then explored the models and technical discussions you have shared.

Masha’Allah, I was really impressed by how many useful models you have built and shared openly for free. It is inspiring to see work of this quality made available for the benefit of the Ummah.

I’m currently building an early prototype of Raniin, a Qur’an TTS project that I hope can benefit the Ummah. I’m still learning along the way, especially about preparing the dataset, improving pronunciation quality, evaluating the model, and making it lightweight and low-latency.

For example, in verse 7 of Surah Al-Fatihah, if a user pronounces أَنْعَمْتَ as أَنَمْتَ without correctly producing the letter ع, the ASR would detect the pronunciation issue and send a signal to the LLM. Raniin would then generate the correct spoken reference, أَنْعَمْتَ, so the user can hear the difference and practise the correct makhraj.

Because a TTS model can generate references across a wide range of words, verses, pronunciation errors, and tajwid cases, I believe Raniin could also have broader potential as a supporting tool for tahsin learning. It would not replace a qualified teacher, but could help learners practise more consistently and receive relevant spoken examples during live sessions.

Since Raniin is meant to work together with Qur’anic ASR during live practice, I would really appreciate the opportunity to ask you a few technical questions and learn from your advice, especially about developing and evaluating the TTS model so that it can provide accurate references for makhraj and tajwid.

Would you be open to discussing it with me when you have time? If so, please let me know which platform would be most convenient for you—Discord, Telegram, WhatsApp, or another platform you prefer.

JazakAllahu khairan 💚

ربنا تقبل منا انك انت السميع العليم

Masha'Allah, a working web version that anyone can open and test. 🤍 That is a bigger step than
any accuracy number, because it puts the thing in front of people who will never read a model card.

One suggestion on the colouring, from something I measured while building the confidence tooling.

CTC posteriors are extremely peaky. On a typical clip the mean confidence is around 0.98 and almost
nothing falls below 0.5, so a rule like "no colour if confidence is low" will almost never fire, and
high confidence is not evidence of correctness. What actually carries information is the margin:
the top probability minus the runner-up.

A phoneme at 0.79 with the alternative at 0.21 is a genuinely contested position. One at 1.000 with
everything else at 0.00 is not. Those two should be coloured differently, and confidence alone cannot
separate them.

It is also worth looking at which unit is the runner-up. If <blank> is competing, the model is
unsure anything was said there, usually an onset or a clipped sound. If a real phoneme is competing,
for example خَ against حَ, it heard a sound and is torn between two readings. Only the second is a
pronunciation issue worth showing the reciter in red.

decode_with_confidence.py in this repo emits the margin and the alternatives if you want the exact
shape of it.

If people report bugs here I will read them. Barak Allahu feek for shipping it.

Thanks my brother <3
yes you are totally right but i thought the confidence is that the model is not sure of the output so upon that i made some functions based on the confidence

Also here is the codes of the web version if you want to make an official one for this model <3

https://github.com/Iam-Muslim/ReciteQuran/tree/ReciteQuran-web

Sign up or log in to comment