A research framework called FinAgent-RAG outperforms existing retrieval-augmented generation systems on financial document question answering by replacing single-pass lookups with iterative reasoning loops.
Most RAG systems retrieve context once, then hand it to a language model to generate an answer. That works fine for simple lookups but falls apart on corporate filings, where answering a single question might require pulling a revenue figure from a table, cross-referencing a footnote, and doing multi-step arithmetic. FinAgent-RAG addresses this with three components: a retriever trained on hard negatives to tell apart passages that look similar but contain different numbers; a reasoning module that writes and runs Python code for arithmetic instead of asking the model to do mental math; and a routing layer that assigns cheaper compute paths to simpler questions. On the FinQA, ConvFinQA, and TAT-QA benchmarks, the framework scores 76.81%, 78.46%, and 74.96% execution accuracy — beating the next-best baseline by between 5.6 and 9.3 percentage points while cutting API costs by 41.3% on FinQA.
The cost reduction is the detail most likely to matter in production. Financial institutions do not run a handful of queries; they run thousands, and a 41% API cost cut on a high-volume workload is a real budget line, not a footnote. The code-execution approach to arithmetic is also a quiet rebuke to the trend of trusting large language models to multiply numbers in their heads — something they remain unreliable at.
The system was tested across four different underlying LLMs, which suggests the gains are architectural rather than a lucky pairing with one model — though real-world performance on proprietary filings, with their idiosyncratic formatting, will tell a more complete story than any benchmark.