File size: 12,137 Bytes
d80fba2 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b da045a0 e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f da045a0 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f e46cb4b 42d3c8f da045a0 42d3c8f d80fba2 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 | <!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>FinDendro · Do LLMs Know What They Know? · The Fin AI</title>
<meta name="description" content="FinDendro dates what LLMs know about financial history, and checks it against what they say they know." />
<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,500;0,9..144,600;1,9..144,500&family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;1,6..72,400;1,6..72,500&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet" />
<link rel="icon" href="./assets/finai-logo.png" />
<link rel="stylesheet" href="./style.css" />
</head>
<body>
<div class="progress" id="progress"></div>
<div class="glow" aria-hidden="true"></div>
<div class="edge edge-l" aria-hidden="true"><span class="e-name">FinDendro</span></div>
<div class="edge edge-r" aria-hidden="true"><span class="e-name">The Fin AI</span></div>
<div class="tip" id="tip" role="tooltip"></div>
<header class="header" id="header">
<div class="wrap nav">
<a href="https://thefin.ai/" class="brand" target="_blank" rel="noreferrer"><img src="./assets/finai-logo.png" alt="" />The Fin AI<span class="brand-sep">/</span><span class="brand-fd">FinDendro</span></a>
<div class="nav-right">
<nav class="links" id="navLinks">
<a href="#replay" data-sec="replay">Replay</a>
<a href="#leaderboard" data-sec="leaderboard">Leaderboard</a>
<a href="#core" data-sec="core">Core sample</a>
<a href="#date" data-sec="date">Declared date</a>
<a href="#benchmark" data-sec="benchmark">Benchmark</a>
</nav>
<a class="btn btn--sm btn--ghost nav-data" href="https://huggingface.co/datasets/TheFinAI/FinDendro" target="_blank" rel="noreferrer">Data <span class="arrow">↗</span></a>
<a class="btn btn--sm" href="https://arxiv.org/abs/2611.06808" target="_blank" rel="noreferrer">Paper <span class="arrow">↗</span></a>
</div>
</div>
</header>
<main id="top">
<section class="hero" id="hero">
<div class="wrap hero-grid">
<div class="hero-copy">
<a class="award reveal" href="#replay"><span class="medal" id="bird" aria-hidden="true"></span>Temporal self-knowledge · <b>1999 to 2026, quarter by quarter</b> →</a>
<h1 class="wordmark reveal">FinDendro</h1>
<p class="hero-sub reveal">A tree records every year it lived.<br />An LLM <em>can't tell you</em> what it remembers.</p>
<p class="lead reveal">Dendrochronologists date wood by reading its rings. We date models the same way. Every model, <span class="rotator" id="rotator"></span>, answers dated questions about markets and says whether it knows each answer. Then we check both.</p>
<div class="stats reveal" id="stats"></div>
<div class="ctas reveal">
<a class="btn btn--lg" href="#replay">Try to beat a model</a>
<a class="btn btn--lg btn--ghost" href="#leaderboard">See who knows</a>
</div>
<p class="paper-links reveal"><a href="https://arxiv.org/abs/2611.06808" target="_blank" rel="noreferrer">arXiv 2611.06808 ↗</a><a href="https://huggingface.co/papers/2611.06808" target="_blank" rel="noreferrer">Hugging Face Papers ↗</a></p>
</div>
<figure class="hero-viz reveal">
<figcaption><span>Cross-section · one ring per period</span><a href="#core">Read the core →</a></figcaption>
<div class="xs-chips" id="xsChips" role="tablist" aria-label="Choose a model"></div>
<div class="xs-wrap">
<div class="xs-side xs-side--l"><b>Says</b><span>claims it knows</span></div>
<div class="xs" id="xs"></div>
<div class="xs-side xs-side--r"><b>Knows</b><span>answers correctly</span></div>
</div>
<div class="xs-ends" id="xsEnds"></div>
<p class="hero-claim">“I don't know” is <em>not</em> evidence that a model doesn't know.</p>
</figure>
</div>
<div class="ticker" id="ticker" aria-label="Leaderboard ticker"><div class="ticker-track" id="tickerTrack"></div></div>
</section>
<section class="section" id="replay">
<div class="wrap">
<div class="sec-head reveal">
<span class="kicker">Replay</span>
<h2>It said it <em>didn't know</em>. Then it named the price.</h2>
<p class="note">Real questions from the benchmark and the models' recorded answers. Make your pick first, then see what each model chose and whether it claimed to know.</p>
</div>
<div class="game reveal">
<article class="q-card">
<div class="q-top"><span class="q-kick" id="qKick"></span><span class="q-n" id="qN"></span></div>
<p class="q-text" id="qText"></p>
<div class="q-opts" id="qOpts"></div>
<div class="q-foot">
<button class="btn btn--ghost btn--sm" id="qReveal" type="button">Reveal without guessing</button>
<button class="btn btn--sm" id="qNext" type="button" hidden>Next fact →</button>
</div>
</article>
<aside class="a-card">
<div class="a-head"><span>What the models said</span><span class="a-score" id="aScore"></span></div>
<div class="a-rows" id="aRows"></div>
<p class="a-punch" id="aPunch" hidden></p>
</aside>
</div>
</div>
</section>
<section class="section section--tint" id="leaderboard">
<div class="wrap">
<div class="sec-head reveal">
<span class="kicker">Leaderboard</span>
<h2>Who <em>knows</em>, and who <em>admits</em> it</h2>
<p class="note">Open a row for the breakdown. Click a heading to rank by it.</p>
</div>
<div class="board reveal"><div class="scroll"><table class="lb" id="lb"></table></div></div>
<div class="keys reveal">
<p><b>Knows</b> accuracy on 1,340 controlled facts, chance about 0.27. <b>Says</b> share of answers claiming knowledge. <b>Right when denying</b> accuracy on facts the model says it does not know. <b>Gap</b> how much better it does when it claims to know, inside each period.</p>
<p class="ramp-key">Darker green means higher. <span class="ramp"></span></p>
</div>
</div>
</section>
<section class="section" id="core">
<div class="wrap">
<div class="sec-head reveal">
<span class="kicker">Core sample</span>
<h2>The last ring and the last <em>claim</em> can be years apart</h2>
<p class="note">One rule places every boundary. Knowledge ends where accuracy falls halfway to chance. Claims end where the claim rate halves.</p>
</div>
<div class="cal card reveal">
<div class="legend">
<span><i class="mk mk--k"></i>Knowledge ends</span><span><i class="mk mk--c"></i>Claims end</span><span><i class="mk mk--s"></i>Says when asked</span><span><i class="mk mk--v"></i>Vendor cutoff</span><span><i class="band"></i>Claiming without knowing</span>
</div>
<div id="calendar"></div>
</div>
<div class="big card reveal">
<div class="big-top">
<div class="pick" id="coreChips" role="tablist" aria-label="Choose a model"></div>
<div class="legend"><span><i class="ln ln--k"></i>Accuracy</span><span><i class="ln ln--c"></i>Claim rate</span><span><i class="tick"></i>Chance</span></div>
</div>
<div class="chart" id="coreChart"></div>
<p class="note" id="coreNote"></p>
</div>
</div>
</section>
<section class="section section--tint" id="grain">
<div class="wrap">
<div class="sec-head reveal">
<span class="kicker">Grain</span>
<h2>Models admit the <em>Fed</em> and hide the <em>prices</em></h2>
<p class="note">Frontier models claim knowledge of most Fed decisions and almost no stock prices, yet they recall prices well above what they admit.</p>
</div>
<div class="fam reveal" id="fam"></div>
</div>
</section>
<section class="section" id="date">
<div class="wrap">
<div class="sec-head reveal">
<span class="kicker">Declared date</span>
<h2>A date changes the <em>words</em>, not the <em>knowledge</em></h2>
<p class="note">Backtests fix the forecast origin with one line. Add it and watch what moves.</p>
</div>
<div class="prompt-line reveal">
<button class="sw" id="dateSw" type="button" role="switch" aria-checked="false"><i></i></button>
<code id="dateCode"><span id="datePrefix">Assume that today is May 31, 2023. Answer as you would on that date.</span></code>
</div>
<div class="decl reveal">
<div class="card"><h3>Claims to already know</h3><div class="hb" id="declC"></div></div>
<div class="card"><h3>Accuracy on the value</h3><div class="hb" id="declA"></div></div>
</div>
</div>
</section>
<section class="section section--tint" id="pit">
<div class="wrap">
<div class="sec-head reveal">
<span class="kicker">Saplings</span>
<h2>Clean by construction, <em>empty</em> by construction</h2>
<p class="note">Point-in-time models stop reading at a cutoff, so they cannot leak. At 1 to 1.5B parameters they also retain almost none of these facts. Scored by candidate likelihood, accuracy sits near chance on both sides of the cutoff.</p>
</div>
<div class="board reveal"><div class="scroll"><table class="lb pit" id="pitT"></table></div></div>
</div>
</section>
<section class="section" id="benchmark">
<div class="wrap">
<div class="sec-head reveal">
<span class="kicker">Benchmark</span>
<h2><em>One</em> fact, <em>one</em> choice, two answers</h2>
<p class="note">Every option pairs a value with a statement of knowledge, so a single letter reveals both what the model thinks and whether it claims to know.</p>
</div>
<div class="how reveal">
<div class="eg card">
<p class="eg-q">What was the 12-month percent change in the US CPI for June 2023?</p>
<div class="eg-grid">
<span class="eg-h">“I know this value”</span><span class="eg-h">“I do not know, best guess”</span>
<span>A. 2.8%</span><span>E. 2.8%</span><span class="eg-hit">B. 3.0%</span><span class="eg-hit">F. 3.0%</span><span>C. 3.2%</span><span>G. 3.2%</span><span>D. 3.4%</span><span>H. 3.4%</span>
</div>
<p class="note">The published value is shaded. The model picks one letter out of eight.</p>
</div>
<div class="m-grid">
<div><h3>Facts</h3><p>2,226 dated U.S. facts drawn from a pool of 20,972. Twelve FRED series, month-end prices of 50 companies and Fed decisions, scored against the value published at the time.</p></div>
<div><h3>Questions</h3><p>Five prompts per fact. One asks for the value alone. Four offer the paired options, as a recall or a prediction, with and without a declared date.</p></div>
<div><h3>Controls</h3><p>47% of numerical facts fall to repeating last month's value, so they do not count toward knowledge. Fed decisions use balanced accuracy.</p></div>
<div><h3>Boundaries</h3><p>One rule for every model, from two-quarter rolling accuracy and the claim rate, each against its 2015 to 2020 level.</p></div>
</div>
</div>
</div>
</section>
</main>
<footer class="foot"><div class="wrap foot-in"><span>FinDendro · The Fin AI</span><span class="foot-links"><a href="https://arxiv.org/abs/2611.06808" target="_blank" rel="noreferrer">Paper · arXiv 2611.06808 ↗</a><a href="https://huggingface.co/papers/2611.06808" target="_blank" rel="noreferrer">Hugging Face Papers ↗</a><a href="https://huggingface.co/datasets/TheFinAI/FinDendro" target="_blank" rel="noreferrer">Questions and raw results ↗</a></span></div></footer>
<script src="./data.js"></script>
<script src="./app.js"></script>
</body>
</html>
|