AI knowledge base.
Ask a GST question. The retriever pulls top-5 relevant chunks from a seeded corpus of 31 sources - condensed paraphrases of real CBIC circulars / Act sections / GSTN advisories (each linking to its official source), plus internal SOPs and a Supreme Court ruling; not verbatim source text. The LLM answers with strict citations - every factual claim points back to a [source]. Strict mode refuses when no chunk scores high enough, instead of inventing.
- LLM answer - live OpenRouter call (Claude), strict-citation system prompt
- Retrieval - real BM25 + bigram index built in-process over the seeded corpus
- Strict-mode refusal - live - refuses below the retrieval-score threshold
- Corpus - 31 condensed CBIC / Act / GSTN / SOP sources, not a full ingestion pipeline
- Embeddings - BM25 stands in for pgvector + text-embedding-3-large (same code path)
- Persistence - Supabase optional; falls back to in-memory when not configured
“Live” here means the LLM call and retrieval run for real on every question - it does not imply a production document-ingestion or vector-store integration. In production the retriever module swaps for pgvector with no change to the answer/citation path.
This question is tax-adjacent but has no support in the corpus. In strict mode the assistant must decline rather than invent a citation. Click to run it (forces strict mode on).
Try an out-of-scope question and watch it refuse - or ask anything about GST, IMS or e-invoicing.