- 🌟 Project Overview
- 💡 Why SahaYaa?
- ✨ Features
- 🛠️ Tech Stack
- 🚀 Getting Started
- 💻 Usage
- 🎥 Demo Video
- 🏗️ Architecture
- 🗺️ Roadmap
- 📄 License
- 🙏 Acknowledgements
SahaYaa (सहाया - meaning "help" in Hindi) is an intelligent voice-first banking assistant designed to democratize digital banking across India's linguistic diversity. Built with state-of-the-art NLP and speech technologies, SahaYaa enables seamless banking operations through natural voice conversations in 8 languages.
- Digital Divide: 🇮🇳 Only 22% of Indians speak English, yet most banking apps require it
- Accessibility: 👨🦯 Voice-first design helps visually impaired and elderly users
- Complexity: 🔢 Eliminates complex UIs - just speak naturally
- Trust: 🔐 Multi-layer authentication builds user confidence
- 🏘️ Rural Banking Customers - Limited digital literacy
- 👴 Senior Citizens - Prefer voice over typing
- ♿ Differently-abled Users - Screen-reader friendly
- 🚀 Tech-savvy Users - Faster than traditional banking apps
| Feature | Traditional Apps | SahaYaa |
|---|---|---|
| Language Support | 2-3 languages | 8 languages (7 Indian + English) |
| Interaction | Touch/Type | Voice-first |
| Learning Curve | Complex UI | Zero learning curve |
| Accessibility | Limited | Fully accessible |
| Security | OTP only | Biometric + OTP |
| Offline Support | Requires internet | Hybrid mode (planned) |
- 🎤 Indic ASR Excellence - Powered by AI4Bharat's IndicConformer (600M parameters)
- 🧠 Context-Aware NLU - Understands code-mixed speech (Hinglish, Tanglish, etc.)
- 🔐 Smart Security - Conditional OTP for high-value transactions (>₹5000)
- 🎭 Natural Conversations - Handles follow-ups, corrections, and clarifications
- 📊 Real-time Feedback - Voice + visual confirmation for critical operations
|
|
|
|
Language: Python 3.10
NLU Pipeline: RegexFeaturizer → DIETClassifier → TEDPolicy
ASR Model: ai4bharat/indic-conformer-600m-multilingual
Dialogue: Rasa 3.6 (Rule + ML policies)
Server: Uvicorn (ASGI)
Audio Format: WebM → WAV (16kHz mono)
- Python 3.10 or higher
- 8GB+ RAM
- ffmpeg installed (Guide)
- Git for version control
git clone https://github.com/yourusername/sahayaa.git
cd sahayaa
python -m venv venv310
source venv310/bin/activate # Windows: venv310\Scripts\activate
pip install -r requirements.txt
rasa train # First time onlyOpen 3 terminals for:
Terminal 1: Action Server
rasa run actions -p 5055
Terminal 2: Rasa Server
rasa run --enable-api --cors "*" -p 5005
Terminal 3: Voice API
uvicorn app.main:app --reload --port 8001
uvicorn voice_api:app --reload --port 8002
Terminal 4
python -m http.server 3000
🔍 Check Balance (Hindi)
🗣️ You: "मेरे अकाउंट का बैलेंस क्या है?" 🤖 Bot: "आपके खाते acct_savings_1 में वर्तमान बैलेंस 48500.5 रुपये है।"💸 Money Transfer - Small Amount (No OTP)
🗣️ You: "रिया को तीन सौ रुपये भेजो" 🤖 Bot: "300 रुपये acct_savings_1 से acct_friend_riya में सफलतापूर्वक भेजे गए।" "ट्रांजेक्शन आईडी TX00003।"🔐 Money Transfer - Large Amount (OTP Required)
🗣️ You: "छः हज़ार रुपये भेजो" 🤖 Bot: "सुरक्षा के लिए, हमने आपके पंजीकृत मोबाइल पर 6 अंकों का OTP भेजा है।" "कृपया OTP बोलें।" 🗣️ You: "एक दो तीन चार पांच छह" 🤖 Bot: "OTP सत्यापित। 6000 रुपये सफलतापूर्वक भेजे गए।"USER INTERFACE (Web UI)
|
WebM Audio
▼
VOICE API (FastAPI)
| ASR | Hindi→Digits | Audio Processing |
▼
RASA NLU + Dialogue
| Intent | Entity | Dialogue |
▼
ACTION SERVER (Banking/OTP/TTS)
▼
SECURE BANKING API (Balance, Transfer)
✅ Multilingual ASR
✅ Voice-first web interface
✅ OTP-based security for high-value transactions
✅ Real-time TTS responses
🌍 Support for 7 Indian languages
Distributed under the MIT License.
See LICENSE for more info.
🌟 Open Source Projects