Back
2026 Team of 4 10 hours (hackathon)

Sahayak

AI-Powered Railway Complaint Intelligence System — 3-tier AI pipeline for multilingual complaint classification and prioritization.

ReactTypeScriptPythonSupabaseGemini API

// the problem

Why build this?

Indian Railways receives thousands of complaints daily in multiple languages with no automated way to classify severity, route to the right department, or identify systemic issues across regions.

// the solution

How I solved it

Built a 3-tier AI classification pipeline: Tier 1 uses a fine-tuned DistilBERT model for high-confidence local classification. Tier 2 falls back to Google Gemini 2.5 Flash API for complex cases. Tier 3 uses keyword-based offline classification as the final fallback, ensuring 100% uptime.

// architecture

System Design

React + TypeScript frontend with Tailwind/shadcn UI
Supabase backend with PostgreSQL
Python ML pipeline (Flask + DistilBERT)
Google Gemini API fallback
Edge Functions for serverless logic

// features

Key Features

1

Multilingual complaint submission (Hindi, Marathi, English)

2

3-tier AI classification pipeline (DistilBERT → Gemini → Keywords)

3

Real-time admin dashboard with live stats and analytics

4

KMeans clustering analysis with SVD projections for pattern detection

5

QR code-based mobile submission for field officers

6

Role-based access control with Google OAuth

// challenges & learnings

What I Learned

Training DistilBERT on limited multilingual railway complaint data within hackathon timeframe

Designing a graceful fallback system that maintains classification quality across all 3 tiers

Building responsive real-time dashboard with complex data visualizations under time pressure

Interested in this project?

Check out the code on GitHub or try the live demo.