KumbhDoot: A Scale-Ready, LLM-Bounded Architecture for Mass-Gathering Public-Service Assistants
Organizations: Cisco · Project Nanda · MIT
Abstract
Mass religious gatherings such as the Kumbh Mela concentrate tens of millions of people into a single region over a few weeks, producing intense, repetitive, multilingual, and safety-critical demand for information. The default response, a conversational assistant that routes every query to a large language model (LLM), is poorly matched to this setting: it is costly at scale, slow on emergency paths, prone to hallucination on facts that can cause physical harm, and unusable when connectivity fails. We describe KumbhDoot, an agentic pilgrim assistant for the Nashik Simhastha Kumbh Mela built on a different principle. It operates on a foundational design principle that prioritizes semantic similarity over starting with an LLM. Generative models are invoked only in instances where similarity-based retrieval is insufficient to produce a correct answer. The system utilizes a "semantic cache": an embedding-indexed store as a single retrieval primitive, which handles intent routing, answer caching, offline lookups, and multi-agent retrieval. A custom three-tier agent architecture operates directly on this store, ensuring decision paths remain inspectable and avoiding the use of generic multi-agent frameworks that would trigger implicit per-step LLM calls. We present the architecture, an analytical cost model for its per-query economics, and an honest account of where similarity is sufficient and where generative reasoning remains necessary. We argue that for bounded, high-stakes, low-connectivity public-service domains, a similarity-first and LLM-bounded design is not merely cheaper but architecturally more appropriate than an LLM-default one.
Figures & tables
| Requirement | Principal mechanism | Section | |
|---|---|---|---|
| R1 | Cost proportional to novelty | Paraphrase-aware response cache; answers formatted from records without an LLM | 4.3 , 4.5 |
| R2 | Immediate emergency handling | Keyword-triggered, rule-based fast path ahead of intent routing | 4.4 |
| R3 | Grounding in approved content | InfoBins with source and validity metadata; coded formatters; citation validation | 4.2 , 4.5 |
| R4 | Offline operation | On-device SQLite bundle with FTS5 and pre-computed embeddings | 4.7 |
| R5 | Data minimization | Local-first storage, coarse and consented location, bucketed attributes | 7 |
| R6 | Aggregate operational insight | Observability across LLM and non-LLM paths; aggregate dashboards | 4.1 |
| Function | Keys | Payload |
|---|---|---|
| Knowledge base | Embeddings of InfoBin content | InfoBin records |
| Intent classifier | Embeddings of labeled exemplar queries | Intent and domain labels |
| Response cache | Embeddings of previously answered queries | Approved answers |
| Offline bundle | Device-resident subset of InfoBin embeddings, with an FTS5 index | InfoBin records |
| Per-agent memory | Embeddings of records in an agent’s domain partition | Records scoped to that agent |
| Server | Device | |
|---|---|---|
| Storage | In-memory partitions; Redis for query-to-answer pairs | SQLite bundle ( 700 KB) |
| Embeddings | Higher-dimensional; updated with live content | Lower-dimensional; pre-computed, stored as blobs |
| Lexical index | — | SQLite FTS5 |
| Retrieval | Dense retrieval, fusion, reranking | FTS5 and dense scores combined by rank fusion |
| Query embedding | Server-side encoder | Quantized on-device encoder if present; otherwise word-overlap matching against pre-computed query embeddings |
| Content updates | Continuous | At build time (live synchronization not yet implemented) |
| Stage | LLM-default | Conventional RAG | KumbhDoot |
|---|---|---|---|
| Intent classification | LLM | — | Nearest-neighbor over exemplars |
| Complexity assessment | LLM | — | Keyword and length heuristic |
| Decomposition | LLM | — | Hand-written orchestrator |
| Retrieval | LLM-directed tools | Dense retriever | Hybrid retrieval with reranking |
| Answer synthesis | LLM | LLM | Coded formatter; LLM only when a gate fires |
| Claim | Planned measurement |
|---|---|
| Most traffic needs no generative model | Share of queries answered in Bands A and B on a representative query distribution, with full per-step tracing |
| Cost and latency by band | Tokens, cost, and latency per step on a tiered benchmark of simple, multi-record, and multi-domain queries, each paired with paraphrases |
| Advantage over alternatives | Comparison against both an LLM-at-every-step pipeline and a conventional RAG pipeline that uses a model only for synthesis |
| Multilingual routing accuracy | Accuracy and threshold calibration on a labeled test set in English, Hindi, Marathi, and code-mixed input, including speech-recognition noise |
| Offline usefulness | Minimum useful bundle size and on-device hit rate, measured by replaying representative traffic |
LLM Agent Serving
Large language model agent serving runs tool-using, multi-step agents efficiently by coordinating inference, memory, and workflow execution.
See all 37 papers