Akash Vishwakarma
Akash Vishwakarma
Back to all projects
/ 03•2026

NITI.AI

National Intelligence for Trial Insights · judicial AI platform

The Problem & Context

India's court system carries a backlog of 45M+ pending cases, and the data that could explain why cases stall — delay patterns, humanitarian urgency, court-level bottlenecks — is scattered across government portals with no unified, queryable view. NITI.AI builds that view and layers judicial-grade AI reasoning on top of it.

Architecture & Implementation

01

A scheduled scraping layer pulls live data from 5 government portals every 6–24 hours, feeding a 6-node agentic pipeline: Ingestor → Delay Analyser → Humanitarian Flagger → Scorer → LLM Recommender → RAG Indexer, streamed to clients via SSE for real-time pipeline visibility.

02

11 FastAPI routers backed by async MongoDB (Motor + Beanie ODM), with JWT auth hardened by TOTP two-factor authentication for sensitive case-data access.

03

A RandomForest model predicts case delay likelihood from structured case metadata, while a FAISS/ChromaDB-backed RAG layer answers natural-language questions over legal documents.

04

8 Next.js dashboards (Recharts + Zustand for state) built with an NJDG-inspired information architecture, so the tool feels native to people already familiar with India’s National Judicial Data Grid.

05

Deployed as a Docker Compose stack, tuned for sub-200ms p95 API latency and sub-1s Groq inference on the LLM-recommendation step.

Technologies & Tools Used

FastAPINext.jsMongoDBGroqFAISSscikit-learnDocker

Results & Metrics

45M+cases
6-node pipeline
<200msp95

Key Accomplishments

  • Unified view over a 45M+ case backlog that previously existed only as fragmented portal data.
  • Sub-200ms p95 API response and sub-1s LLM inference — fast enough for interactive dashboard use, not just batch reporting.
  • A 6-node agentic pipeline that turns raw scraped case data into scored, flagged, and explainable recommendations end to end.