Kepler: Code Writes Every Number So AI Can't Hallucinate
How Kepler Builds Finance AI That Cannot Make Up a Number
Vinoo Ganesh is CEO and co-founder of Kepler, which builds verifiable AI for financial services, and was previously head of business engineering at Citadel. His AI Engineer talk starts with the market: since his previous talk three months earlier, about $270 million of venture money went into verification layers, and one competitor shipped Kepler's own tagline after a VC passed along its pitch deck. His complaint is that they copied the post-processing check and skipped the architecture that makes it work. "You can't just tack verification on at the end."
Hallucination is structural, not a model bug: Ganesh rejects the idea that better models will eliminate hallucination. "You know another word for hallucination? Alpha." The creativity that makes a firm's analysts valuable is the same mechanism that invents numbers, and a firm's internal data is never in the model's training set anyway. Wall Street's response has been to buy every RAG platform and run agent pilots, yet most finance AI tools end up formatting PowerPoint slides, and "we still haven't actually built a DCF cradle to grave."
Three sources of wrong numbers: The wrong document was retrieved; the right document was retrieved and the wrong number pulled from it (a 2025 10-K restating 2023 revenue); or the model did mental math. Ganesh's fix for the third is blunt: models predict tokens, a CPU cycle adds two numbers, use the CPU cycle. For the first two, Kepler preprocesses unstructured documents into a structured store where "Code writes every number." Each fact gets a pointer, a hashed source ID. The model acts as a planning analyst that decides where to look; code and math do the retrieval and the arithmetic.
Pointers the model must dereference: "If a model cannot de-resolve that pointer, it cannot print that number out." A citation is therefore verified, corrected at search time or refused. Users see each number as a clickable chip that shows the extraction or calculation behind it. Kepler's production data shows refusals, cases where the model could not dereference a pointer, dropping sharply over time but not to zero, because inference is still probabilistic, so a final post-processing check remains.
Search wide, then narrow: Retrieval runs approximate nearest neighbor plus BM25 to about 200 candidate documents, reciprocal rank fusion to about 60, then cross-encoders on query and chunk pairs. LLMs left to plan their own search go depth-first and stop at the first plausible hit, because searching wide is expensive. "A lookup cannot get it wrong. Search can." He also lists the security failures of homegrown systems: forgetting the tenant filter so one fund can read another's documents, callers impersonating another firm, stale results, direct reads that skip search rules, and empty indexes. The fix is scoping every search with security built in.
5 Questions Vinoo Ganesh Says to Ask Any Finance AI Vendor
- Does the model write pointers? - Facts should enter a structured store through code, with IDs the model can only read back.
- Is every citation source-checked? - Not an annotation added afterward, but a check that the number came from the cited span.
- Is arithmetic source-checked? - Calculations should run in deterministic code with inputs traceable to sources.
- Can files reach the wrong client? - Tenant filters, identity checks and allow lists on every query.
- What happens to a number from nowhere? - The system should refuse, not format it nicely.
What Verifiable AI Means for Agents Doing Financial Work
Ganesh's closing line is a direction for the whole field: "We're now out of the search phase of AI. We need to be building infrastructure." For agents doing analyst work, that means grounding as an architectural constraint rather than a prompt instruction, and treating hallucination as something the system prevents structurally. It is the same instinct as Ramp's decision to keep a frontier model as orchestrator over a small retrieval model and Arca's rule that anything touching money goes to a human.