NPA Audio Complaint Tracking Platform
Real-time multilingual audio complaint processing system for the National Police Academy - transcribes, summarizes, extracts legal sections, and auto-fills FIR forms.
Project Snapshot
Role
Lead Developer
Organization
National Police Academy (NPA), India
Timeline
2025
Status
Live
Team Size
4 (including 3 junior developers)
Deployment
Production - deployed on Bhashini AI Cloud Infrastructure
Tech Stack
Impact & Results
- Deployed at NPA - actively used for training police officers
- Handles concurrent real-world complaint sessions
- Supports 32 Indian languages
- Auto-maps BNS legal sections via RAG pipeline
A production AI platform built for the National Police Academy (NPA) that processes police complaints in any of 32 Indian languages. Audio streams in via WebSocket, gets transcribed, summarized, and mapped to applicable legal sections. The result auto-populates an FIR form, streamlining the initial complaint processing workflow.
The Problem
The National Police Academy needed a platform to: - Take live audio recordings of police complaints in any Indian language. - Transcribe speech to text in real-time. - Process the complaint: summarize, translate, and extract key entities. - Automatically map applicable BNS (Bharatiya Nyaya Sanhita) legal sections to the complaint. - Auto-fill FIR forms with extracted information.
The Solution
An end-to-end web platform featuring WebSocket-based audio streaming, language auto-detection, and a custom RAG (Retrieval-Augmented Generation) pipeline for semantic legal section matching. The system bridges raw multilingual audio inputs to structured, legally contextualized FIR forms.
Architecture & Implementation
Audio Streaming: Used WebSocket streaming (small audio chunks) instead of single full-audio API calls to eliminate input latency.
Speech-to-Text: Language auto-detection and transcription via Bhashini's speech-to-text APIs.
Information Extraction: Gemini (LLM) handles summary generation and key information extraction (entities, involved parties, incident details).
Legal Mapping: A custom RAG pipeline uses sentence-transformers embeddings and a FAISS vector index of all BNS sections + scenario descriptions for semantic search.
Data Used: Audio complaints in 32 Indian languages, BNS (Bharatiya Nyaya Sanhita) legal sections and scenario descriptions.
Tech Stack: Python, Django, React.js, WebSockets, Bhashini AI Cloud, Gemini, FAISS, Sentence-Transformers, RAG, NLP.
Challenges & Solutions
High audio input latency: Switched from single request to WebSocket streaming with small audio chunks.
Incorrect language detection: Added a confidence-threshold retry mechanism and fallback.
Incorrect BNS section mapping: Improved embedding model and expanded the BNS dataset with rich scenario descriptions.
Key Takeaways
Mastered real-time WebSocket streaming architectures.
Gained deep expertise in building reliable custom RAG pipelines for domain-specific legal data.
Learned to handle scalable multilingual AI deployments.