Intent classification and entity extraction for Battery Smart's multilingual voice assistant (Hindi, English, Hinglish).
- 23 Intent Classes: Battery status, swap stations, payments, subscriptions, etc.
- Multilingual Support: Hindi, English, and Hinglish
- MuRIL Model: Google's Multilingual Representations for Indian Languages
- Augmented Dataset: 1,230+ training examples
- High Performance: 70%+ accuracy on test set
- Model:
google/muril-base-cased - Training Examples: 1,230 (augmented from 342)
- Test Accuracy: 70%+ (improved from 48.6%)
- Supported Intents: 23 classes
Training: 1,230 examples
Validation: 153 examples
Test: 155 examples
Languages: Hindi, English, Hinglish
# Clone repository
git clone <your-repo-url>
cd model_proj
# Install dependencies
pip install -r requirements.txt
# Configure Python environment (if using venv)
python -m venv nlu_env
source nlu_env/bin/activate # On Windows: nlu_env\Scripts\activate
pip install -r requirements.txt# Run data augmentation
cd src
python3 improve_and_retrain.py
# Train intent classifier
python3 train_intent_classifier.py# Interactive testing
cd src
python3 test_intent_model.pymodel_proj/
├── config/ # Intent, entity, domain configurations
│ ├── intents.yaml
│ ├── entities.yaml
│ └── domain.yaml
├── data/
│ ├── processed/ # Training data
│ │ ├── train_augmented.json
│ │ ├── val_augmented.json
│ │ └── test_augmented.json
│ └── raw/ # Original data
├── models/ # Trained models
│ └── intent_classifier/
├── src/
│ ├── train_intent_classifier.py # Training script
│ ├── test_intent_model.py # Testing script
│ ├── improve_and_retrain.py # Data augmentation
│ ├── training/ # Training utilities
│ ├── nlu/ # NLU pipeline
│ └── api/ # FastAPI endpoints
└── requirements.txt
-
Battery & Charging
check_battery_status- Current charge levelcheck_battery_range- Remaining range
-
Swap Stations
find_swap_station- Locate nearest stationcheck_station_availability- Station statusstation_directions- Get directions
-
Subscriptions & Payments
check_subscription- Plan detailssubscription_renewal- Renew planupgrade_subscription- Upgrade planmake_payment- Process paymentpayment_inquiry- Payment statuspayment_history- Transaction history
-
Usage & History
swap_history- Past swapsswap_count- Total swapscheck_ride_stats- Ride statistics
-
Support
report_issue- Report problemstalk_to_agent- Human supporthelp_general- General help
-
Conversation
greet,bye,thank,affirm,deny
num_epochs: 15
batch_size: 16
learning_rate: 3e-5
early_stopping_patience: 5- Hinglish variations
- Polite form additions
- Class balancing (30+ samples per class)
- Text transformations
- Data augmentation
- Balanced dataset
- Improved hyperparameters
- Entity extraction training
- Complete NLU pipeline
- API deployment
- Multi-turn dialogue support
See TRAINING_GUIDE.md for details on training on AWS Bedrock and contributing improvements.
[Your License Here]
[Your Contact Information]