En 30 segundos
Vinoo Ganesh, CEO of Kepler, argues that finance cannot rely on language models to produce unverified figures: a model may find the wrong source, misread a number's scale or period, or invent arithmetic. Kepler's approach combines structured facts and hybrid search with deterministic calculations, a citation registry, tenant-level authorization, and a filter that removes figures it cannot verify. Ganesh walks through the architecture, its search and security layers, and a live example of tracing Apple's revenue and growth back to filings and calculations. He also shares Kepler's own evaluation results and limits the claim carefully: the platform can prevent unsupported numbers from appearing as verified output, but it cannot stop a model from hallucinating in general or replace every analyst workflow.
- 1Trace every financial figureGanesh's core rule is that an analyst should never show a client or portfolio manager a number they cannot validate. Language models can retrieve a plausible but wrong source, confuse a figure's unit or period, and make unreliable calculations.
- 2Let code, not the model, write numbersKepler's architecture has retrieval find the source, deterministic code perform calculations, and a post-processing filter verify citations. The model can plan and compose prose, but it cannot introduce an unsupported number into the verified output.
- 3Store context with each factA figure needs a value, unit, scale, and period; the table may place the scale far from the number itself. Ganesh says XBRL can be wrong and firms also depend on private documents, so the system must handle both public filings and internal data.
- 4Search broadly, then rerankKepler combines approximate nearest-neighbor vector search with BM25, fuses the results, and reranks candidates with a cross-encoder and source trust signals. The search layer is designed to work across structured public records and private company documents.
- 5Recheck tenant access on every hitEach retrieved document is reauthorized in Postgres, and query filters accumulate tenant scope throughout the process. This is intended to prevent one desk or firm from seeing another's research, even when search spans shared infrastructure.
- 6Plain RAG did not pass Kepler's number checksGanesh reports that Kepler's filter refused 10,981 citations in its evaluations, including 3,810 numeric mismatches. He argues that ordinary retrieval-augmented generation alone is insufficient for work that needs numerical accuracy and auditability.
Conclusiones
- In financial work, every displayed number should be traceable to a source a reader can inspect.
- Use language models to plan and explain, while deterministic tools retrieve facts and perform arithmetic.
- A financial fact needs its value, unit, scale, and reporting period to be meaningful.
- Combine structured data with keyword and vector search when information also lives in unstructured documents.
- Reauthorize each retrieved document for the current tenant before exposing it to a model.
- If a citation cannot be verified or repaired reliably, remove the number instead of presenting it as fact.
Lee la transcripción completa por capítulos
Why financial numbers need proof
Ganesh introduces Kepler and the high-accuracy environments that shaped its design. He sets out the rule that every figure presented to a client or portfolio manager must be explicitly validated and traceable.
Thanks for coming. I'm Vinoo Ganesh, CEO of Kepler, and I'm glad to be here with a few teammates. This session follows a broader presentation about Kepler and the questions people had about how the technology works in practice. Before Kepler, I started at Palantir, where I led the compute layer, built a data-as-a-service company, and later worked as head of business engineering at Citadel. Those environments taught us that accuracy and fidelity matter when systems support demanding work.
Where language models lose numerical fidelity
A model can retrieve a dubious source or the right document but the wrong number, unit, scale, year, or page. It can also produce arithmetic without a dependable guarantee of correctness.
The central rule in finance is simple: an analyst should never show a client or portfolio manager a number they cannot explicitly validate or trace. A claim such as revenue growing 12.4% to $418.2 billion is not decorative prose; each figure has to be right. The problem is that language models are probability machines. The same property that makes them creative also makes them difficult to trust in a mission-critical setting.
Attaching a source after a model has written an answer does not solve the problem. A model does not read a whole document in the way an analyst would: systems commonly chunk documents, run semantic search, and retrieve material that may only be loosely relevant. That can yield a completely wrong source, such as a sensational blog post, even when a more authoritative filing exists.
Even with the right filing, the model may attach the wrong meaning to a number. A bare 17 could mean millions or billions, yen or dollars, revenue in a particular year, or simply a page number. A 2025 filing may describe 2023 results, so the document date does not establish the period of the fact. Every one of those distinctions matters when the answer must be verifiable.
There is also arithmetic: growth rates, margins, and multiples require calculations that a language model cannot be trusted to perform by itself. Some models can write code to calculate, but the model's own output does not guarantee faithful results. Kepler's response is an architecture in which the model cites figures but never writes them: retrieval finds the source, predetermined deterministic code does the math, and a post-processing filter checks the answer.
Models cite; deterministic code calculates
Kepler separates retrieval, computation, and verification: the model plans, tools find facts, code does the math, and a filter checks citations. Ganesh describes a registry built from a large corpus of SEC material to connect figures to source locations.
Kepler preprocessed more than 30 million SEC documents and registered citations: financial facts such as revenue and balance-sheet figures, as well as statements in management discussion and analysis. Ganesh describes about 20,000 registered items and filing facts made available as citable anchors. The point of an anchor is that a user can click a number and return to the underlying document and location that supports it.
In production, Kepler refuses citations that it cannot verify. If a number has no valid citation, the model is structurally unable to include it in the verified output. Ganesh says the filter correctly extracted about 21,000 citations in the figures he presents. The wider design is that language models plan, while deterministic software handles every number and, more broadly, every fact.
The question-to-answer pipeline
The model plans which filings, updates, and calculations are needed, then tools retrieve and compute the answer. A typed citation registry gives each fact the metadata and source link needed to make it auditable.
A user asks a question and the model builds a plan using the available tools, retrieval steps, citation filter, and source locations. For a question about Google's adjusted EBITDA, for example, the system may need facts across several 10-K filings, an investor presentation, an earnings call, or a later restatement. The model works out what information is needed; tools retrieve it, compute values, build tables, and register the resulting facts for citation.
The citation registry adds magnitude, metadata, and type to the facts so they can be surfaced correctly. Imagine a 2025 Palantir 10-K that reports 2023 revenue. The number belongs to 2023 even though it appears in a later filing. A table may state the value as “one” while “billions” appears elsewhere on the page, so the system has to reconnect that distant context before it can produce a meaningful, traceable answer.
Models tend to keep generating prose, including figures they cannot prove came from a trusted source. Kepler therefore strips out an unsupported number during post-processing and aims to make each figure clickable in the platform. Ganesh calls this a particularly granular form of traceability: a reader should be able to inspect the evidence rather than accept a number on the model's authority.
Facts need units, scale, and period
A raw number in a filing is not self-explanatory: its scale may be elsewhere in a table and its year may differ from the filing date. Kepler also needs to search internal documents such as memos, spreadsheets, and shared drives.
A financial fact needs more than a value. It also needs its unit, scale, and reporting period; a figure such as 416,000 is ambiguous without those annotations. Ganesh notes that XBRL would help if it were always correct, but says it is wrong around 10 percent of the time. Investors also use internal information, so a useful system must cover a firm's own documents as well as public filings.
Private research can include investment memos, spreadsheets, and files in services such as SharePoint, Box, OneDrive, Outlook, or Egnyte. Kepler structures data where it is already structured and uses search where it is not. It puts public and private material into a searchable namespace, using hybrid retrieval while preserving the platform's citation and access guarantees.
Hybrid search and reranking
Kepler combines vector search with BM25, fuses the result lists, and reranks candidate documents. It then weighs source reliability, since an earnings call and a filing may report conflicting information.
Kepler's search process combines approximate nearest-neighbor retrieval over embeddings with BM25 keyword search. It runs both methods across the namespace, over-fetches candidates, and fuses their rankings with reciprocal rank fusion. The candidate set is then narrowed with a cross-encoder and reranked using trust signals, since different sources may report conflicting versions of what appears to be the same fact.
A disagreement between an earnings-call transcript and a 10-K is not automatically a search bug; it can be a meaningful conflict that the system needs to distinguish. Kepler returns selected sources to the model after this search and reranking work. Ganesh also emphasizes the ability to regenerate embeddings as information changes, while noting that operating an embedding model efficiently can be costly.
Tenant isolation at retrieval time
Every hit is checked against tenant and ownership permissions in Postgres before it reaches the model. Signed identity, scoped tokens, and filters applied throughout the query help keep each firm's research within its own environment.
Search must also respect tenant isolation. It would be unacceptable for one Citadel desk to see another desk's research, so Kepler reauthorizes every document hit in Postgres before the model sees it. As the query is built, each layer adds its tenant filters, preventing a later retrieval step from accidentally widening access across the firm's data.
Kepler's authorization service controls creation of scoped tokens, while user and organization identity come from a signed device. These checks are designed to keep a firm's research within its own environment. The access control must apply consistently to search and reading, so a document hidden from search cannot reappear through a separate read path.
A citation registry for reproducible facts
Unique identifiers connect entities and facts to source metadata, while display values let users choose units or currency. Each figure links back to its source and calculations so the same query can produce reproducible results.
To show a number in the platform, Kepler assigns each fact a unique identifier that supports entity recognition and resolution. The source ID points to metadata stored in a deterministic engine. A separate display value lets the same underlying fact appear in the user's preferred units or currency, while retaining a link to the source and the calculation used to produce it.
Ganesh describes an invariant: users can click every number and fact to see where it came from. A result should therefore be citable, deterministic, and reproducible. He calls the system idempotent: rerunning the same query should return the same result, rather than subtly changing the figures each time.
Ganesh says roughly a third of the citations encountered in their corpus involve math the model did not do. Models may recall a historical figure from training data, but that does not prove they retrieved it from the right year, entity, or reporting scope. For a 2005 revenue question, the model's familiarity with a number is not a substitute for tracing it to the correct historical source.
Verify each citation as it streams
A filter resolves citation markers against the registry as the model responds. When no match is found, Kepler strips the number; selective citation repair is possible, but Ganesh does not detail how it works.
As the response streams, citation markers are checked against the registry. The model resolves a pointer to a registered source, and the platform uses that record to provide traceability. If the number does not match a verifiable source, Kepler strips it from the response. This is deliberately conservative: users who depend on an assistant to speculate or invent figures may find that the product is not useful for their task.
The same constraint shapes the product's use cases. Ganesh says Kepler is intended for financial research that needs accurate, traceable information, not creative marketing copy or work where opportunistic selling matters more than numerical fidelity. By checking public equities research and a firm's internal data against sources, the system aims to provide a grounded retrieval engine across both corpora.
Removing every unmatched citation can make the system feel less magical, so Kepler also has a post-processing step that may try to repair a citation. Ganesh says the platform does this in certain situations, but leaves the details vague to protect the company's intellectual property. The stated principle remains that a number should only survive when the system can reliably connect it to evidence.
What Kepler's evaluations caught
Ganesh says Kepler's filter refused thousands of citations, including thousands of numeric mismatches, in its evaluations. He concludes that a vector database or basic RAG setup does not by itself provide the auditability finance requires.
Ganesh shares an evaluation result aimed at claims that ordinary RAG makes financial research reliable. Kepler's filter refused 10,981 citations; he says about 3,810 were outright wrong numbers. The presentation breaks the refusals into cases such as missing quotes, numbers absent from quoted text, unregistered sources, mismatches with source values, malformed markers, and incorrect units. These are figures from Kepler's own evaluation, as presented by its CEO.
For semantic search alone, basic retrieval can still be useful. But Ganesh argues that a vector database or a standard RAG connection is not sufficient where numerical accuracy and auditability are required. The architecture he advocates combines broad retrieval with source checks and deterministic computation. The model may still hallucinate, but a number it cannot cite is prevented from reaching the user as verified output.
Tracing Apple's revenue calculation
The product demonstration shows a question about Apple's FY2025 revenue and growth. Users can click the reported figures to inspect the filing and see the deterministic calculation behind the 6.4% growth result.
The product example asks for Apple's FY2025 revenue and its growth rate. The displayed answer gives net sales of $416.161 billion, up 6.4 percent from $391.035 billion in FY2024. Clicking a number opens the relevant 10-K, highlights the supporting fact, and shows the spreadsheet calculation for the growth rate, with each input linked to its own source.
Ganesh expects this kind of architecture to become standard as financial research tools mature. Today, analysts still extract data from S-1 filings and move it from PDFs into Excel; Kepler's goal is to automate that repetitive work. He sees the larger opportunity as giving people better tools for research and analysis rather than asking models to produce unsupported ideas.
Where the guarantees end
The guarantees concern traceable research and controlled arithmetic, not a complete replacement for a hedge fund or every analyst task. Ganesh sees a future in combining distinctive retrieval with deterministic computing so AI handles routine document-to-spreadsheet work and people focus on ideation.
The guarantees have limits. Kepler says it makes models cite figures, verifies citations, moves arithmetic into a compute layer, isolates tenants, and measures recall; that can support distinctive, traceable research, but it does not amount to a complete hedge fund that replaces everyone. Ganesh's closing vision is a more “quantamental” workflow that combines unique retrieval with deterministic computing, automating routine work so people can spend more time on the ideation they want to do.
Ganesh closes by thanking the audience and noting that an appendix follows.
Más de este canal
19:43EN
20:55EN
18:27EN
17:56EN
35:19EN
18:31EN