An AI-powered Telegram bot that listens to your English pronunciation and gives instant, word-level feedback — powered by OpenAI Whisper, Speechace, and Google Cloud TTS.
- 🎧 Voice Input — users send ≤ 15 s English voice messages
- 🧠 Whisper Transcription — automatic speech-to-text
- 🗣 Speechace Scoring — per-word and phoneme-level pronunciation feedback
- 🧩 Interactive Telegram UI
- Tap words to see phoneme details
- Tap again to hear native vs. user audio
- 🎯 Drill Mode
- Practice weak words until they exceed C1 threshold (≥ 81 / 100)
- Progress tracked dynamically
- 💬 Cleanup Button — clears session messages, voices, and memory
Telegram Voice → Whisper (Transcription) → Speechace (Scoring) → Inline UI (Keyboard + Word Feedback) → Google TTS (Native Reference)
Core components:
- aiogram – asynchronous Telegram framework
- OpenAI Whisper – transcription
- Speechace API – pronunciation scoring
- Google Cloud TTS – native synthesis for comparison
- ffmpeg – conversion/trimming
- aiohttp + requests – async/sync HTTP clients
- Python 3.10 or newer
ffmpeginstalled and in PATH- Valid API keys:
- Telegram Bot Token
- OpenAI API key
- Speechace API key
- Google Cloud credentials (JSON)
git clone https://github.com/yourusername/english-pronunciation-bot.git
cd english-pronunciation-bot
pip install -r requirements.txt