क कह दो · KehDo
"keh do" is Hindi for "just say it". Hold a key, talk, let go, and clean text appears in any app.

1. The problem
Dictation tools like Wispr Flow are great, but they are subscriptions. Typing the same thing by voice should not need a monthly bill. And most tools are built for plain English, while many people speak Hinglish: Hindi words written in English letters, mixed with English, in one sentence.
Technical: Groq's free tier offers Whisper speech-to-text and fast chat models. Two API calls per dictation are enough, so KehDo is a thin native client with no server of its own.
2. The pipeline
Click a stage.
3. The Hinglish problem
Imagine a friend who hears you say "kya scene hai" and, trying to help, tells everyone "What is that?". Nice English, but you never said that. The fast
whisper-large-v3-turbo model did exactly this: it translated Hinglish into English.You saidYaar woh API har baar timeout de raha hai, kya scene hai?
Output
Technical: On the same clips, Hinglish WER fell from 0.47 (turbo) to 0.18 (large-v3). Slower, but the right words come out.
4. Evals
Changing a model is like changing an engine: it might feel fine and still be worse. So KehDo has a test suite. It scores the output by counting wrong words (WER), checking simple rules, asking Claude to judge meaning, and trying to trick the cleanup into obeying commands hidden in speech.
Lower is better. WER 0.10 means about one word in ten is wrong.
Technical: Judge is
claude -p with a fixed rubric, cached by hash. Rule checks cover Devanagari, preamble, filler left, length ratio and injection. Results: 41 clips + 20 cleanup cases.5. Design decisions
6. Lessons learned
- Measure first. The turbo model looked fine in casual tests and failed on a proper clip set.
- Translation is a bug, not a feature, when the user mixes languages on purpose.
- Judge your own judge: cache and fix the rubric so scores stay comparable.
- Test the model with hostile input. Anything that feeds speech to an LLM can be talked into obeying it.
- A gate with numbers beats a feeling that it got better.