Spaces:
Runtime error
Runtime error
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <title>IndiaFinBench β The First Benchmark for Indian Financial Regulation</title> | |
| <meta name="description" content="IndiaFinBench: 406 expert-annotated questions over 192 SEBI & RBI regulatory documents (1992β2026). Twelve frontier LLMs evaluated. Hybrid RAG with Recall@5 = 0.785. Open dataset, open leaderboard."> | |
| <meta property="og:title" content="IndiaFinBench β Can language models read India's financial law?"> | |
| <meta property="og:description" content="The first evaluation benchmark for LLM performance on Indian financial regulatory text. 406 questions Β· 192 documents Β· 12 models Β· open dataset."> | |
| <meta property="og:type" content="website"> | |
| <meta property="og:url" content="https://huggingface.co/spaces/Rajveer-code/IndiaFinBench"> | |
| <link rel="icon" href="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect width='64' height='64' rx='8' fill='%23F5F1E8'/%3E%3Ctext x='32' y='46' text-anchor='middle' font-family='Georgia,serif' font-size='40' font-weight='700' fill='%23A33B20'%3E%C2%A7%3C/text%3E%3C/svg%3E"> | |
| <link rel="preconnect" href="https://fonts.googleapis.com"> | |
| <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> | |
| <link href="https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400..700;1,9..144,400..700&family=Archivo:wght@400;500;600;700&family=IBM+Plex+Mono:ital,wght@0,400;0,500;0,600;1,400&display=swap" rel="stylesheet"> | |
| <link rel="stylesheet" href="/static/css/main.css?v={{ js_ver }}"> | |
| <script type="application/ld+json"> | |
| { | |
| "@context": "https://schema.org", | |
| "@type": "Dataset", | |
| "name": "IndiaFinBench", | |
| "description": "An evaluation benchmark of 406 expert-annotated question-answer pairs over 192 SEBI and RBI regulatory documents (1992-2026), testing LLM performance on Indian financial regulatory text.", | |
| "url": "https://github.com/Rajveer-code/IndiaFinBench", | |
| "sameAs": "https://huggingface.co/datasets/Rajveer-code/IndiaFinBench", | |
| "license": "https://creativecommons.org/licenses/by/4.0/", | |
| "creator": { "@type": "Person", "name": "Rajveer Singh Pall" }, | |
| "keywords": ["LLM evaluation", "financial NLP", "Indian regulation", "SEBI", "RBI", "benchmark"] | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <canvas id="archiveCanvas" aria-hidden="true"></canvas> | |
| <a class="skip-link" href="#leaderboard">Skip to leaderboard</a> | |
| <!-- ββββββββ MASTHEAD ββββββββ --> | |
| <header class="masthead" id="masthead"> | |
| <div class="masthead-inner"> | |
| <a class="brand" href="#top" aria-label="IndiaFinBench β back to top"> | |
| <span class="brand-seal" aria-hidden="true">Β§</span> | |
| <span class="brand-word">India<em>Fin</em>Bench</span> | |
| </a> | |
| <nav class="mast-nav" aria-label="Chapters"> | |
| <a href="#problem">Problem</a> | |
| <a href="#corpus">Corpus</a> | |
| <a href="#benchmark">Benchmark</a> | |
| <a href="#leaderboard">Leaderboard</a> | |
| <a href="#findings">Findings</a> | |
| <a href="#retrieval">Retrieval</a> | |
| <a href="#access">Access</a> | |
| </nav> | |
| <div class="mast-actions"> | |
| <a class="mast-btn" href="https://huggingface.co/datasets/Rajveer-code/IndiaFinBench" target="_blank" rel="noopener">Dataset</a> | |
| <a class="mast-btn mast-btn-solid" href="https://github.com/Rajveer-code/IndiaFinBench" target="_blank" rel="noopener">GitHub</a> | |
| <button class="mast-menu" id="menuBtn" aria-label="Open menu" aria-expanded="false"> | |
| <span></span><span></span> | |
| </button> | |
| </div> | |
| </div> | |
| <div class="mast-drawer" id="menuDrawer"> | |
| <a href="#problem">Β§ 01 β The Problem</a> | |
| <a href="#corpus">Β§ 02 β The Corpus</a> | |
| <a href="#benchmark">Β§ 03 β The Benchmark</a> | |
| <a href="#leaderboard">Β§ 04 β The Evaluation</a> | |
| <a href="#findings">Β§ 05 β The Findings</a> | |
| <a href="#retrieval">Β§ 06 β The Retrieval</a> | |
| <a href="#access">Β§ 07 β The Access</a> | |
| </div> | |
| </header> | |
| <!-- ββββββββ PROGRESS RAIL ββββββββ --> | |
| <aside class="rail" id="rail" aria-hidden="true"> | |
| <div class="rail-line"><div class="rail-fill" id="railFill"></div></div> | |
| <ol class="rail-list"> | |
| <li data-ch="problem"><a href="#problem"><b>01</b><span>Problem</span></a></li> | |
| <li data-ch="corpus"><a href="#corpus"><b>02</b><span>Corpus</span></a></li> | |
| <li data-ch="benchmark"><a href="#benchmark"><b>03</b><span>Benchmark</span></a></li> | |
| <li data-ch="leaderboard"><a href="#leaderboard"><b>04</b><span>Evaluation</span></a></li> | |
| <li data-ch="findings"><a href="#findings"><b>05</b><span>Findings</span></a></li> | |
| <li data-ch="retrieval"><a href="#retrieval"><b>06</b><span>Retrieval</span></a></li> | |
| <li data-ch="access"><a href="#access"><b>07</b><span>Access</span></a></li> | |
| </ol> | |
| </aside> | |
| <main id="top"> | |
| <!-- ββββββββ HERO ββββββββ --> | |
| <section class="hero"> | |
| <div class="hero-inner"> | |
| <p class="hero-kicker reveal">A research benchmark & open dataset Β· EMNLP 2026 submission</p> | |
| <h1 class="hero-title reveal">Can language models read India’s <em>financial law?</em></h1> | |
| <p class="hero-sub reveal"> | |
| IndiaFinBench is the first evaluation benchmark for large language models on Indian | |
| financial regulatory text β <strong>406 expert-annotated questions</strong> drawn from | |
| <strong>192 SEBI and RBI documents</strong> spanning thirty-four years of the regulatory record. | |
| </p> | |
| <div class="hero-cta reveal"> | |
| <a class="btn btn-ink" href="#leaderboard">Read the leaderboard</a> | |
| <a class="btn btn-line" href="#retrieval">Query the corpus live</a> | |
| </div> | |
| </div> | |
| <p class="hero-scrollcue reveal" aria-hidden="true">Scroll β the archive assembles<span class="cue-arrow">β</span></p> | |
| <div class="hero-ledger reveal" role="list" aria-label="Benchmark statistics"> | |
| <div class="ledger-cell" role="listitem"><span class="ledger-num" data-count="406">0</span><span class="ledger-lbl">expert-annotated questions</span></div> | |
| <div class="ledger-cell" role="listitem"><span class="ledger-num" data-count="192">0</span><span class="ledger-lbl">RBI & SEBI documents</span></div> | |
| <div class="ledger-cell" role="listitem"><span class="ledger-num" data-count="12">0</span><span class="ledger-lbl">frontier models evaluated</span></div> | |
| <div class="ledger-cell" role="listitem"><span class="ledger-num" data-count="0.785" data-dec="3">0</span><span class="ledger-lbl">Recall@5, hybrid retrieval</span></div> | |
| <div class="ledger-cell" role="listitem"><span class="ledger-num" data-count="89.7" data-dec="1" data-suffix="%">0</span><span class="ledger-lbl">best model accuracy</span></div> | |
| <div class="ledger-cell" role="listitem"><span class="ledger-num" data-count="69.0" data-dec="1" data-suffix="%">0</span><span class="ledger-lbl">human expert baseline</span></div> | |
| </div> | |
| </section> | |
| <!-- ββββββββ Β§01 THE PROBLEM ββββββββ --> | |
| <section class="chapter" id="problem"> | |
| <header class="ch-head reveal"> | |
| <span class="ch-no">Β§ 01</span> | |
| <h2 class="ch-title">The Problem</h2> | |
| <p class="ch-lede">Benchmarks read English. Regulation reads differently.</p> | |
| </header> | |
| <div class="prose-cols vellum reveal"> | |
| <p> | |
| Financial NLP benchmarks β FinQA, TAT-QA, FiQA β are built almost entirely on Western | |
| corporate filings. None test whether a model can navigate the regulatory apparatus | |
| governing the world’s most populous market. Indian regulation poses three difficulties | |
| that existing benchmarks never measure. | |
| </p> | |
| <p> | |
| Numerical thresholds are buried in dense statutory prose, often written out in words. | |
| Circulars supersede one another in long chains, so the <em>operative</em> rule at a given | |
| date is a temporal-reasoning problem, not a lookup. And the vocabulary β LODR, PMLA, | |
| AIF, FEMA, SFB β is jurisdiction-specific, thinly represented in Western training corpora. | |
| </p> | |
| </div> | |
| <div class="problem-grid"> | |
| <article class="problem-card reveal"> | |
| <span class="pc-no">i</span> | |
| <h3>Numbers hide in prose</h3> | |
| <p>Capital ratios, margin requirements and filing deadlines appear as words inside clauses, not cells inside tables. Extraction requires precision reading, then arithmetic.</p> | |
| </article> | |
| <article class="problem-card reveal"> | |
| <span class="pc-no">ii</span> | |
| <h3>Circulars supersede circulars</h3> | |
| <p>A 2019 master circular may amend a 2014 directive that replaced a 1998 notification. Answering “what rule applied in 2016?” means untangling the chain.</p> | |
| </article> | |
| <article class="problem-card reveal"> | |
| <span class="pc-no">iii</span> | |
| <h3>The vocabulary is sovereign</h3> | |
| <p>LODR is not a typo and an AIF is not a hedge fund. Jurisdiction-specific terms of art carry exact legal meanings that general-purpose corpora rarely teach.</p> | |
| </article> | |
| </div> | |
| <figure class="specimen reveal" aria-label="Annotated regulatory excerpt"> | |
| <figcaption class="spec-head"> | |
| <span class="spec-tag">Exhibit A</span> | |
| <span class="spec-src">SEBI (LODR) Regulations Β· Regulation 33(3)(a)</span> | |
| </figcaption> | |
| <blockquote class="spec-body"> | |
| The listed entity shall submit quarterly and year-to-date standalone financial results to the | |
| stock exchange within <mark class="m-num" data-note="numeral written as words">forty-five days</mark> | |
| of end of each quarter, <mark class="m-scope" data-note="scope exception">other than the last quarter</mark>, | |
| as per the requirements of <mark class="m-ref" data-note="cross-reference to resolve">Regulation 33</mark>. | |
| </blockquote> | |
| <figcaption class="spec-legend"> | |
| <span><i class="lg lg-num"></i>numerical threshold in prose</span> | |
| <span><i class="lg lg-scope"></i>scope exception</span> | |
| <span><i class="lg lg-ref"></i>cross-reference</span> | |
| </figcaption> | |
| </figure> | |
| </section> | |
| <!-- ββββββββ Β§02 THE CORPUS ββββββββ --> | |
| <section class="chapter ch-alt" id="corpus"> | |
| <header class="ch-head reveal"> | |
| <span class="ch-no">Β§ 02</span> | |
| <h2 class="ch-title">The Corpus</h2> | |
| <p class="ch-lede">Thirty-four years of primary sources, read in full.</p> | |
| </header> | |
| <div class="corpus-grid"> | |
| <div class="corpus-copy vellum reveal"> | |
| <p class="prose"> | |
| Every question in IndiaFinBench traces to a primary-source document published by the | |
| Securities and Exchange Board of India or the Reserve Bank of India between | |
| <strong>1992 and 2026</strong> β circulars, master directions, notifications and | |
| regulations, collected with full source URLs and parsed into a queryable corpus. | |
| </p> | |
| <dl class="corpus-stats"> | |
| <div><dt>SEBI documents</dt><dd class="mono c-green">92</dd></div> | |
| <div><dt>RBI documents</dt><dd class="mono c-red">100</dd></div> | |
| <div><dt>Document span</dt><dd class="mono">1992β2026</dd></div> | |
| <div><dt>Indexed chunks</dt><dd class="mono">4,347</dd></div> | |
| <div><dt>Chunk size</dt><dd class="mono">1,600 chars</dd></div> | |
| <div><dt>License</dt><dd class="mono">Public domain (GoI)</dd></div> | |
| </dl> | |
| </div> | |
| <figure class="doc-field reveal" aria-label="192 source documents: 92 SEBI, 100 RBI"> | |
| <div class="doc-dots" id="docDots"></div> | |
| <figcaption><span><i class="dot dot-sebi"></i>SEBI · 92</span><span><i class="dot dot-rbi"></i>RBI · 100</span><span class="doc-total">192 documents</span></figcaption> | |
| </figure> | |
| </div> | |
| </section> | |
| <!-- ββββββββ Β§03 THE BENCHMARK ββββββββ --> | |
| <section class="chapter" id="benchmark"> | |
| <header class="ch-head reveal"> | |
| <span class="ch-no">Β§ 03</span> | |
| <h2 class="ch-title">The Benchmark</h2> | |
| <p class="ch-lede">From circular to question: a dual-validated construction.</p> | |
| </header> | |
| <ol class="pipeline reveal" aria-label="Benchmark construction pipeline"> | |
| <li><b>Collect</b><span>192 primary documents, 1992β2026, with source URLs</span></li> | |
| <li><b>Author</b><span>QA pairs drafted against exact passages, four task types</span></li> | |
| <li><b>Validate</b><span>model check on answerability β 90.7% agreement, ΞΊ = 0.918 (CON)</span></li> | |
| <li><b>Adjudicate</b><span>human IAA on 180 items across 3 rounds β 77.2% agreement, ΞΊ = 0.645 (CON)</span></li> | |
| <li><b>Release</b><span>406 items, CC BY 4.0, with per-item difficulty labels</span></li> | |
| </ol> | |
| <div class="task-grid" id="taskGrid"><!-- built by JS from IFB_TASKS --></div> | |
| <div class="diff-strip reveal" aria-label="Difficulty distribution"> | |
| <div class="diff-bar-outer"> | |
| <div class="diff-seg ds-easy" style="--w:39.4%" title="Easy: 160 items"><span>Easy Β· 160</span></div> | |
| <div class="diff-seg ds-med" style="--w:44.8%" title="Medium: 182 items"><span>Medium Β· 182</span></div> | |
| <div class="diff-seg ds-hard" style="--w:15.8%" title="Hard: 64 items"><span>Hard Β· 64</span></div> | |
| </div> | |
| <p class="diff-note">Difficulty assigned at authoring time by reasoning depth β <em>hard</em> means multi-instrument tracking or compound arithmetic.</p> | |
| </div> | |
| </section> | |
| <!-- ββββββββ Β§04 THE EVALUATION ββββββββ --> | |
| <section class="chapter ch-alt" id="leaderboard"> | |
| <header class="ch-head reveal"> | |
| <span class="ch-no">Β§ 04</span> | |
| <h2 class="ch-title">The Evaluation</h2> | |
| <p class="ch-lede">Twelve models. Zero shots. One human baseline to beat.</p> | |
| </header> | |
| <div class="panel reveal"> | |
| <div class="panel-bar"> | |
| <div> | |
| <h3 class="panel-title" id="chartTitle">Overall accuracy</h3> | |
| <p class="panel-sub" id="chartDesc">All 406 items Β· zero-shot Β· 95% Wilson confidence intervals on hover</p> | |
| </div> | |
| <div class="tabset" id="taskTabs" role="tablist" aria-label="Metric"> | |
| <button class="tab active" role="tab" aria-selected="true" data-t="overall">Overall</button> | |
| <button class="tab" role="tab" aria-selected="false" data-t="reg">REG</button> | |
| <button class="tab" role="tab" aria-selected="false" data-t="num">NUM</button> | |
| <button class="tab" role="tab" aria-selected="false" data-t="con">CON</button> | |
| <button class="tab" role="tab" aria-selected="false" data-t="tmp">TMP</button> | |
| </div> | |
| </div> | |
| <div class="chart" id="barChart"></div> | |
| <p class="chart-foot">Dashed rule marks the human expert baseline for the selected metric (n = 100). Paired bootstrap over all 66 model pairs resolves <strong>three statistically distinct tiers</strong>.</p> | |
| </div> | |
| <div class="panel reveal"> | |
| <div class="panel-bar"> | |
| <div> | |
| <h3 class="panel-title">Full results</h3> | |
| <p class="panel-sub">Click a column to sort Β· β Claude 3 Haiku scored 91.3% on the initial 150-item subset; listed separately as not directly comparable</p> | |
| </div> | |
| </div> | |
| <div class="table-scroll"> | |
| <table class="gz-table" id="resultsTable"> | |
| <thead><tr> | |
| <th class="c sortable" data-k="rank">#</th> | |
| <th>Model</th> | |
| <th class="sortable" data-k="params">Params</th> | |
| <th>Access</th> | |
| <th class="c sortable" data-k="reg">REG</th> | |
| <th class="c sortable" data-k="num">NUM</th> | |
| <th class="c sortable" data-k="con">CON</th> | |
| <th class="c sortable" data-k="tmp">TMP</th> | |
| <th class="c sortable sorted" data-k="overall">Overall</th> | |
| <th class="c">95% CI</th> | |
| </tr></thead> | |
| <tbody id="tBody"></tbody> | |
| </table> | |
| </div> | |
| </div> | |
| <div class="panel reveal"> | |
| <div class="panel-bar"> | |
| <div> | |
| <h3 class="panel-title">Accuracy by difficulty</h3> | |
| <p class="panel-sub">Ξ = hard β easy. LLaMA-3.3-70B <em>improves</em> on hard items; Gemma 4 E4B collapses by 26.3 points.</p> | |
| </div> | |
| </div> | |
| <div class="table-scroll"> | |
| <table class="gz-table" id="diffTable"> | |
| <thead><tr><th>Model</th><th class="c">Easy <span class="th-n">n=160</span></th><th class="c">Medium <span class="th-n">n=182</span></th><th class="c">Hard <span class="th-n">n=64</span></th><th class="c">Ξ</th></tr></thead> | |
| <tbody id="diffBody"></tbody> | |
| </table> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- ββββββββ Β§05 THE FINDINGS ββββββββ --> | |
| <section class="chapter" id="findings"> | |
| <header class="ch-head reveal"> | |
| <span class="ch-no">Β§ 05</span> | |
| <h2 class="ch-title">The Findings</h2> | |
| <p class="ch-lede">What 4,872 graded answers say about regulatory reasoning.</p> | |
| </header> | |
| <div class="findings-grid"> | |
| <article class="finding reveal"> | |
| <span class="f-no">Finding 1</span> | |
| <p class="f-stat">3 tiers</p> | |
| <h3>Performance is tiered, and the tiers are real</h3> | |
| <p>Paired bootstrap (10,000 resamples, all 66 pairs) separates frontier API models (81β90%), mid-tier open-weight models (75β79%), and a small-model floor at 70%. Most cross-tier gaps are significant at p < 0.05.</p> | |
| </article> | |
| <article class="finding reveal"> | |
| <span class="f-no">Finding 2</span> | |
| <p class="f-stat">17B β 70B</p> | |
| <h3>Scale alone does not buy regulatory reasoning</h3> | |
| <p>Llama 4 Scout 17B statistically matches LLaMA-3.3-70B (p = 0.79) with a quarter of the parameters β and GPT-OSS 120B is indistinguishable from GPT-OSS 20B (p = 0.91, Ξ = +0.3 pp).</p> | |
| </article> | |
| <article class="finding reveal"> | |
| <span class="f-no">Finding 3</span> | |
| <p class="f-stat">35.9 pp</p> | |
| <h3>Numerical reasoning is the discriminator</h3> | |
| <p>NUM shows the widest spread of any task β from 84.8% (Gemini 2.5 Flash) down to 48.9% (Gemini 2.5 Pro). If you want to tell models apart, ask them to do arithmetic inside statute.</p> | |
| </article> | |
| <article class="finding reveal"> | |
| <span class="f-no">Finding 4</span> | |
| <p class="f-stat">48.9% vs 89.7%</p> | |
| <h3>Capability dissociates within a single model</h3> | |
| <p>Gemini 2.5 Pro ranks first on regulatory interpretation yet last on numerical reasoning β task-type performance can split wide open inside the same weights.</p> | |
| </article> | |
| <article class="finding reveal"> | |
| <span class="f-no">Finding 5</span> | |
| <p class="f-stat">11th / 12</p> | |
| <h3>Reasoning-specialised β timeline-capable</h3> | |
| <p>DeepSeek R1 70B, built for chain-of-thought, ranks 11th overall and manages only 70.5% on temporal reasoning β general deliberation does not transfer to supersession chains.</p> | |
| </article> | |
| <article class="finding reveal"> | |
| <span class="f-no">Finding 6</span> | |
| <p class="f-stat">12 / 12 > human</p> | |
| <h3>Every model beats the human baseline</h3> | |
| <p>Human experts score 69.0% (n = 100, CI [59.4, 77.2]). All twelve models exceed it β yet the best still miss one answer in ten, in a domain where the answer is a legal obligation.</p> | |
| </article> | |
| </div> | |
| </section> | |
| <!-- ββββββββ Β§06 THE RETRIEVAL ββββββββ --> | |
| <section class="chapter ch-alt" id="retrieval"> | |
| <header class="ch-head reveal"> | |
| <span class="ch-no">Β§ 06</span> | |
| <h2 class="ch-title">The Retrieval</h2> | |
| <p class="ch-lede">The benchmark closes the book. The retrieval system opens it.</p> | |
| </header> | |
| <p class="prose prose-narrow reveal"> | |
| IndiaFinBench evaluates closed-book reading. Its open-book counterpart is a hybrid | |
| retrieval system over the same 192-document corpus: dense semantic search and sparse | |
| lexical search run in parallel, fused by reciprocal rank β because regulatory text, | |
| saturated with citation identifiers, rewards exact matching as much as meaning. | |
| </p> | |
| <figure class="rag-diagram reveal" aria-label="Hybrid retrieval pipeline"> | |
| <svg viewBox="0 0 940 240" xmlns="http://www.w3.org/2000/svg" role="img"> | |
| <defs> | |
| <marker id="arr" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"> | |
| <path d="M0 0L10 5L0 10z" fill="currentColor"/> | |
| </marker> | |
| </defs> | |
| <g class="rd-node" transform="translate(10,90)"> | |
| <rect width="130" height="60" rx="3"/> | |
| <text x="65" y="28" text-anchor="middle" class="rd-t1">Query</text> | |
| <text x="65" y="45" text-anchor="middle" class="rd-t2">natural language</text> | |
| </g> | |
| <path class="rd-flow" d="M140 110 H 205 V 55 H 250" marker-end="url(#arr)"/> | |
| <path class="rd-flow" d="M140 130 H 205 V 185 H 250" marker-end="url(#arr)"/> | |
| <g class="rd-node rd-dense" transform="translate(250,25)"> | |
| <rect width="190" height="60" rx="3"/> | |
| <text x="95" y="28" text-anchor="middle" class="rd-t1">Dense Β· FAISS</text> | |
| <text x="95" y="45" text-anchor="middle" class="rd-t2">BGE Β· 768-d Β· 4,347 vectors</text> | |
| </g> | |
| <g class="rd-node rd-sparse" transform="translate(250,155)"> | |
| <rect width="190" height="60" rx="3"/> | |
| <text x="95" y="28" text-anchor="middle" class="rd-t1">Sparse Β· BM25</text> | |
| <text x="95" y="45" text-anchor="middle" class="rd-t2">lexical Β· 1,600-char chunks</text> | |
| </g> | |
| <path class="rd-flow" d="M440 55 H 505 V 105 H 530" marker-end="url(#arr)"/> | |
| <path class="rd-flow" d="M440 185 H 505 V 135 H 530" marker-end="url(#arr)"/> | |
| <g class="rd-node rd-rrf" transform="translate(530,90)"> | |
| <rect width="160" height="60" rx="3"/> | |
| <text x="80" y="28" text-anchor="middle" class="rd-t1">RRF fusion</text> | |
| <text x="80" y="45" text-anchor="middle" class="rd-t2">reciprocal rank Β· k = 60</text> | |
| </g> | |
| <path class="rd-flow" d="M690 120 H 780" marker-end="url(#arr)"/> | |
| <g class="rd-node" transform="translate(780,90)"> | |
| <rect width="150" height="60" rx="3"/> | |
| <text x="75" y="28" text-anchor="middle" class="rd-t1">Answer</text> | |
| <text x="75" y="45" text-anchor="middle" class="rd-t2">LLaMA-3.3-70B Β· cited</text> | |
| </g> | |
| </svg> | |
| </figure> | |
| <div class="panel reveal"> | |
| <div class="panel-bar"> | |
| <div> | |
| <h3 class="panel-title">Retrieval ablation</h3> | |
| <p class="panel-sub">Six configurations. Hybrid fusion gains +9.7 points of Recall@5 over dense-only; BM25 alone wins MRR β lexical structure matters in law.</p> | |
| </div> | |
| </div> | |
| <div class="table-scroll"> | |
| <table class="gz-table"> | |
| <thead><tr><th>Configuration</th><th class="c">Recall@5</th><th class="c">MRR</th><th class="c">p50 latency</th></tr></thead> | |
| <tbody> | |
| <tr><td>Dense only <span class="cfg">B0</span></td><td class="c mono">0.688</td><td class="c mono">0.542</td><td class="c mono">48 ms</td></tr> | |
| <tr><td>BM25 only <span class="cfg">B1</span></td><td class="c mono">0.764</td><td class="c mono"><strong>0.674</strong></td><td class="c mono">30 ms</td></tr> | |
| <tr class="row-hi"><td><strong>Hybrid RRF</strong> <span class="cfg">B2</span> <span class="cfg-pick">selected</span></td><td class="c mono"><strong>0.785</strong></td><td class="c mono">0.640</td><td class="c mono">77 ms</td></tr> | |
| <tr><td>Small chunks, 800 chars <span class="cfg">B3</span></td><td class="c mono">0.583</td><td class="c mono">0.493</td><td class="c mono">138 ms</td></tr> | |
| <tr><td>Large chunks, 2,400 chars <span class="cfg">B4</span></td><td class="c mono">0.542</td><td class="c mono">0.410</td><td class="c mono">71 ms</td></tr> | |
| <tr><td>Hybrid, k = 10 <span class="cfg">B5</span></td><td class="c mono">0.785</td><td class="c mono">0.640</td><td class="c mono">78 ms</td></tr> | |
| </tbody> | |
| </table> | |
| </div> | |
| </div> | |
| <div class="panel panel-live reveal" id="ragPanel"> | |
| <div class="panel-bar"> | |
| <div> | |
| <h3 class="panel-title"><span class="live-dot" aria-hidden="true"></span>Ask the corpus</h3> | |
| <p class="panel-sub">Live hybrid retrieval over all 192 documents β every claim sourced, every source scored.</p> | |
| </div> | |
| </div> | |
| <div class="rag-row"> | |
| <input class="rag-input" id="ragQ" type="text" placeholder="What is the minimum capital adequacy ratio for banks?" aria-label="Question for the regulatory corpus"> | |
| <button class="btn btn-ink" id="ragBtn">Retrieve</button> | |
| </div> | |
| <div class="rag-examples" aria-label="Example queries"> | |
| <button class="chip" data-q="What is the circuit breaker limit for NSE stocks?">Circuit breaker limits</button> | |
| <button class="chip" data-q="What is SEBI's definition of insider trading?">Insider trading definition</button> | |
| <button class="chip" data-q="What is the minimum capital adequacy ratio for banks?">Capital adequacy ratio</button> | |
| <button class="chip" data-q="What are the KYC requirements for opening a bank account?">KYC requirements</button> | |
| </div> | |
| <div class="rag-out" id="ragOut" hidden> | |
| <div class="rag-status" id="ragStatus" hidden><span class="spinner" aria-hidden="true"></span><span id="ragStatusText">Retrieving from corpusβ¦</span></div> | |
| <div class="rag-answer" id="ragAnswer"></div> | |
| <div class="rag-sources" id="ragSources"></div> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- ββββββββ Β§07 THE ACCESS ββββββββ --> | |
| <section class="chapter" id="access"> | |
| <header class="ch-head reveal"> | |
| <span class="ch-no">Β§ 07</span> | |
| <h2 class="ch-title">The Access</h2> | |
| <p class="ch-lede">An open dataset, an open leaderboard, an open invitation.</p> | |
| </header> | |
| <div class="panel reveal" id="explorerPanel"> | |
| <div class="panel-bar"> | |
| <div> | |
| <h3 class="panel-title">Examine a specimen</h3> | |
| <p class="panel-sub">Draw a random item from the 406 β filtered by task and difficulty, answer sealed until you ask.</p> | |
| </div> | |
| <div class="explorer-controls"> | |
| <select class="select" id="exTask" aria-label="Task type"> | |
| <option value="All">All tasks</option> | |
| <option value="Regulatory Interpretation">Regulatory Interpretation</option> | |
| <option value="Numerical Reasoning">Numerical Reasoning</option> | |
| <option value="Contradiction Detection">Contradiction Detection</option> | |
| <option value="Temporal Reasoning">Temporal Reasoning</option> | |
| </select> | |
| <select class="select" id="exDiff" aria-label="Difficulty"> | |
| <option value="All">All difficulties</option> | |
| <option value="Easy">Easy</option> | |
| <option value="Medium">Medium</option> | |
| <option value="Hard">Hard</option> | |
| </select> | |
| <button class="btn btn-ink" id="exBtn">Draw item</button> | |
| </div> | |
| </div> | |
| <div class="ex-card" id="exCard" hidden> | |
| <div class="ex-meta"><span class="ex-id mono" id="exId"></span><span class="ex-badge" id="exTaskBadge"></span><span class="ex-badge" id="exDiffBadge"></span></div> | |
| <p class="ex-label">Context</p> | |
| <blockquote class="ex-context" id="exContext"></blockquote> | |
| <p class="ex-label">Question</p> | |
| <p class="ex-question" id="exQuestion"></p> | |
| <button class="btn btn-line btn-sm" id="exReveal">Unseal answer</button> | |
| <div class="ex-answer" id="exAnswer" hidden><p class="ex-label">Gold answer</p><p class="mono" id="exAnswerText"></p></div> | |
| </div> | |
| </div> | |
| <div class="access-grid"> | |
| <div class="panel reveal"> | |
| <div class="panel-bar"><div><h3 class="panel-title">Submit a model</h3><p class="panel-sub">Any public HuggingFace model, evaluated zero-shot on all 406 items with four-stage scoring. Results join the leaderboard with Wilson CIs.</p></div></div> | |
| <div class="form-grid"> | |
| <label class="field"><span>HuggingFace model ID <em>*</em></span><input class="input" id="hfId" type="text" placeholder="mistralai/Mistral-7B-Instruct-v0.3"></label> | |
| <label class="field"><span>Display name</span><input class="input" id="dispName" type="text" placeholder="Mistral-7B"></label> | |
| <label class="field"><span>Parameters</span><input class="input" id="modelParams" type="text" placeholder="7B"></label> | |
| <label class="field"><span>Model type</span> | |
| <select class="select" id="mtype"><option>Frontier API</option><option>Open-weight API</option><option>Local (Ollama)</option><option>Reasoning API</option></select> | |
| </label> | |
| </div> | |
| <div class="form-foot"> | |
| <button class="btn btn-ink" id="subBtn">Open submission issue</button> | |
| <p class="status" id="statusBox" role="status" hidden></p> | |
| </div> | |
| </div> | |
| <div class="panel reveal"> | |
| <div class="panel-bar"><div><h3 class="panel-title">Cite the record</h3><p class="panel-sub">Dataset CC BY 4.0 Β· code MIT Β· source documents public domain (Government of India).</p></div></div> | |
| <div class="cite-box"> | |
| <button class="copy-btn" id="copyBtn">Copy</button> | |
| <pre class="mono" id="citeText">{% raw %}@article{pall2026indiafinbench, | |
| title = {{IndiaFinBench}: An Evaluation Benchmark | |
| for LLM Performance on Indian Financial | |
| Regulatory Text}, | |
| author = {Pall, Rajveer Singh}, | |
| journal = {Proceedings of EMNLP}, | |
| year = {2026}, | |
| url = {https://github.com/Rajveer-code/IndiaFinBench} | |
| }{% endraw %}</pre> | |
| </div> | |
| <div class="access-links"> | |
| <a class="btn btn-line" href="https://huggingface.co/datasets/Rajveer-code/IndiaFinBench" target="_blank" rel="noopener">Dataset on HuggingFace</a> | |
| <a class="btn btn-line" href="https://github.com/Rajveer-code/IndiaFinBench" target="_blank" rel="noopener">Code on GitHub</a> | |
| </div> | |
| </div> | |
| </div> | |
| </section> | |
| </main> | |
| <!-- ββββββββ FOOTER ββββββββ --> | |
| <footer class="footer"> | |
| <div class="footer-rule" aria-hidden="true"></div> | |
| <p class="footer-brand"><span class="brand-seal">Β§</span> India<em>Fin</em>Bench</p> | |
| <p class="footer-line">Rajveer Singh Pall Β· Gyan Ganga Institute of Technology and Sciences Β· <a href="mailto:rajveerpall04@gmail.com">rajveerpall04@gmail.com</a></p> | |
| <p class="footer-sub">406 questions Β· 192 documents Β· 12 models Β· zero-shot Β· dataset CC BY 4.0 Β· code MIT</p> | |
| </footer> | |
| <script src="/static/js/data.js?v={{ js_ver }}"></script> | |
| <script src="/static/js/main.js?v={{ js_ver }}" defer></script> | |
| <script src="/static/js/archive-scene.js?v={{ js_ver }}" defer></script> | |
| </body> | |
| </html> | |