FinanceComplexQA:面向工业级金融文档的智能体推理基准测试
- 关联论文:2607.19238
- 作者:flyP
- 更新:2026-07-25
一句话结论
本文发布 FinanceComplexQA:一个面向"工业级金融文档"的开放式智能体推理基准,包含 2,000 份合成的专业金融文档 + 6,000 个高质量问答对(另含 2,026 个深度研究任务),并配套 Finance-LaTeX Skill(基于 LaTeX 的专家级文档合成流程)与 Agent-as-a-Judge 多指标评估器;论文用它对主流 RAG 与 Agentic Reasoning 系统做了全面评测,定位了它们在数值计算、多跳推理、归纳、行业分析四类任务上的失败模式。
解决的真问题
金融领域是 Agentic Reasoning(智能体推理)最被看好的落地方向之一,原因很简单——金融分析天然是"大规模信息整合 + 数值计算 + 多跳推理 + 行业判断"的综合体。然而现有基准普遍有三个痛点:
- 文档过于简化:很多 benchmark 用单页财报或结构化 CSV,根本无法覆盖真实投行报告、研报、监管文件中复杂的版式(多列、嵌套表格、公式、交叉引用、注释脚注)。
- 任务过于单跳:多是"这一页找一句话"级别的 QA,没法测出真正的多跳 / 跨表 / 跨文档推理。
- 参考答案容易"过期":金融数据的数字会随公司披露更新,旧 QA 容易失效;缺乏相对稳定、可重测的参考答案。
FinanceComplexQA 想正面解决这三件事——专家级版式 + 复杂推理 + 稳定参考答案 + 智能体裁判。
核心方法
整套方法由三部分组成。
1. Finance-LaTeX Skill:基于 LaTeX 的专家级文档合成
为了保证"工业级版式",作者团队没有用通用 LLM 自由生成文档,而是显式构建了一个 Skill(一个专家级 LaTeX 模板 / 工作流):
- 用 LaTeX 表达金融文档中常见的复杂版式——多列表格、嵌套 cell、数学公式、附注、条件格式。
- Skill 内部封装专家领域知识(财报口径、估值表、风险披露模板、行业研究框架等),合成出来的文档更接近真实卖方研报 / 上市公司公告。
- 在这个 Skill 之上构建一个 agent workflow:agent 用 Skill 调用 + 模板 + 工具,组合生成 2,000 份"专业级"金融文档,并由它衍生 6,000 个高质量问答对。
Skill 这一层是这篇论文区别于一般 benchmark 工作的关键:作者把"如何写一份像样的金融文档"显式建模成可被 agent 调用的 Skill,而不是依赖一次性 prompt。
2. FinanceComplexQA 基准结构
数据集规模与构成:
- 2,000 份专业金融文档(合成但版式专业);
- 6,000 个高质量问答对(文档级 QA);
- 2,026 个深度研究任务(Deep Research tasks),覆盖 1,009 份文档;
- 覆盖六大主流场景 × 七类任务(⚠️ abstract 中未列出具体场景 / 任务清单,以下为解读方推测:六大场景可能包含财报分析 / 估值 / 风险 / 行业 / 投资策略 / 监管披露;七类任务可能包含数值抽取、计算、对比、归纳、多跳、表格推理、观点分析。具体清单应以 PDF 原文第 3 节为准。)
3. Agent-as-a-Judge:多指标智能体裁判
为开放式生成做评测,作者构建了一个 Agent-as-a-Judge:
- 用一个具备工具调用能力的评估 agent,对候选答案在多个维度上同时打分(数值准确性、引用忠实度、推理完整性、表达清晰度等);
- 配合"相对稳定和永久的参考答案"——意指答案在生成时通过 LaTeX Skill 锁定了真实数值与推理路径,不会随外部数据漂移;
- 双语(中/英)支持,覆盖中文与英文金融文档场景。
伪代码大致为:
qa_pair = Skill.synthesize(doc=latex_doc, mode="complex")
ref = Skill.ground_truth(qa_pair) # 锁定参考答案
agent_ans = candidate_agent.run(doc, qa_pair)
scores = JudgeAgent.evaluate(
agent_ans, ref, doc,
metrics=["numeric", "faithfulness", "reasoning", "clarity"]
)
关键实验与数据
论文用 FinanceComplexQA 做了 主流 RAG 系统 + 主流 Agentic Reasoning 工具的全面评测。能力维度聚焦四类:
- 数值计算:从表格 / 附注中抽取数据并做加减乘除、年化、同比 / 环比等运算;
- 多跳推理:跨表 / 跨文档 / 跨页脚注,串联多个事实得出结论;
- 内容归纳:把多份片段压缩成投资观点或风险提示;
- 行业分析:在行业层面做横向对比、趋势判断、政策影响。
主要发现(按 abstract 表述):
- 不同 Agent 在"复杂真实问题"上性能差异显著——不是"大家都差不多",而是真有梯队。
- Agentic Reasoning 整体上比传统 RAG 更强,但在"精确数值计算"上仍有明显错误,反映出 LLM 在金融场景下"数字稳健性"不足。
- 在多跳推理上,Agent 的工具使用 / 检索链越长,越容易在中间环节漂移。
- Agent-as-a-Judge 相比字符串匹配或单一指标,能更准确捕捉到"答案看似合理但其实算错"或"答案算对但漏掉了限定条件"这类失败模式。
⚠️ 事实核查注记:abstract 未给出任何具体性能数字或系统排名。解读中"性能差异显著"、"比传统 RAG 更强"均来自 abstract 定性描述,无量化数据支撑。"具体哪些 RAG / Agent 表现最好、分数差多少",以 PDF 原文第 5 节表格为准。
亮点与局限
亮点:
- Skill-first 的合成思路:用 LaTeX Skill 把"工业级版式"显式建模,避免了 LLM 自由生成文档时常见的版式粗糙问题。
- 2,000 份 + 6,000 + 2,026 任务的复合规模:覆盖文档级 QA + 深度研究两类任务。
- 稳定参考答案 + Agent-as-a-Judge:解决了金融 QA 的"答案漂移"和"开放式答案难评"两个老大难。
- 失败模式分析的价值:不只给分数,还具体拆解四类典型失败,对工程团队调优 Agent 非常实用。
局限:
- 合成数据 vs 真实分布:2,000 份文档由 LaTeX Skill 合成,再真实也是合成,与真实市场研报 / 监管文件的"语气、模糊度、合规措辞"仍有差距。
- Agent-as-a-Judge 的偏差风险:用 LLM 当裁判本身有偏,与人类评估的一致性(Cohen's κ 等)原文未明确给出。
- 多跳推理的"链长上限":复杂推理链超过 5~6 跳后,金融 Agent 是否仍稳定,本基准可能尚未充分覆盖。
- 覆盖场景:六大场景的清单 / 七类任务的清单在 abstract 中未给出,原文未明确列出,解读方做了合理推测,需以 PDF 原文为准。
- 任务是否随时间真正"永久稳定":金融模板和估值方法会演化,Skill 的可维护性是一个长期问题。
对工程落地的启发
- 把"领域知识"显式建模成 Skill:金融、法律、医疗这种"版式 + 表达"重的领域,把专家知识做成可调用的 Skill,比纯靠 prompt 工程靠谱得多。
- LaTeX / 模板驱动 + Agent 调用是一个被低估的范式:模板保证结构与质量边界,Agent 保证灵活性。
- 金融 Agent 的"数值稳健性"是核心短板:就算逻辑写得通,数字算错就废了——后续应该在工具链里强制把计算 offload 给 Python / 代码解释器,而不是让 LLM 内部算。
- 多跳推理链要做"中间结果校验":金融多跳推理的关键不是答案生成,而是中间环节的可验证性。
- Agent-as-a-Judge 可以引入但需做偏差评估:建议同时跑一次小规模人类评估,校准 judge 的偏差。
与同方向工作的关系
- DocVQA、ChartQA、InfographicsVQA:通用文档理解基准,版式远没这么复杂。
- TAT-QA、FinQA、ConvFinQA:金融数值 / 对话 QA 主流基准,本文与之形成"难度阶梯"——本文更接近真实投行场景。
- FinGPT / BloombergGPT:金融 LLM 训练视角,本文与之互补——本文是评测视角,关心的是系统级表现而非模型微调。
- OpenAI Deep Research、Anthropic Computer Use、Gemini Deep Research:通用 Agentic Reasoning 系统,本文把它们作为被评测对象。
- 金融 RAG(FinReportRAG 等):传统检索增强方案,本文的对比对象。
适合谁读
- 做金融 AI、智能投顾、研报自动化的研究 / 工程师团队。
- 想为自家 Agent 找一个"贴近真实金融场景"压力测试的负责人。
- 做 Agentic Reasoning 评测方法(Agent-as-a-Judge)方向的人。
- 在合成数据 + Skill 工程上有兴趣的研究者。
工程落地与核查(Jay)
事实核查摘要
| 核查项 | 状态 | 说明 |
|---|---|---|
| 2,000 份文档 + 6,000 QA + 2,026 深度任务规模 | ✅ 原文一致 | abstract 明确给出 |
| LaTeX Skill 合成文档方案 | ✅ 方法合理 | Skill = 模板 + agent workflow,方法学上可复现 |
| Agent-as-a-Judge 多指标评测 | ✅ 合理推断 | 方法有别于传统字符串匹配,与 Auto-J 等对齐评估研究一致 |
| 六大场景 / 七类任务清单 | ⚠️ 原文未明确 | abstract 无具体清单,解读方做了合理推测,需以 PDF 原文第 3 节为准 |
| 具体系统性能排名 | ⚠️ 原文未给出 | abstract 只做定性描述("差异显著"),无量化数字 |
| Agent-as-a-Judge 与人类一致性(Cohen's κ) | ⚠️ 原文未明确 | 需查阅 PDF 原文第 5 节 |
| 双语支持(中/英) | ✅ 原文一致 | abstract 明确提到 |
实际系统怎么用
FinanceComplexQA 的工程价值主要在两个方向:
方向一:作为内部评测基准(直接参考)
论文的 Skill-first 合成范式可以被工程团队直接借鉴——把自家金融场景的文档格式做成可配置的 LaTeX Skill,生成一批内部测试文档,用于持续追踪 Agent 质量:
Finance-Skill(内部版)
├── 财报 Skill:三大表、附注、MD&A 模板
├── 研报 Skill:行业分析框架、估值模型模板
├── 监管 Skill:监管文件格式规范
└── 合规 Skill:信息披露规范模板
这套 Skill 的核心价值是版式可配置 + 数值可注入,可以针对自家产品的垂类场景定制,不依赖外部数据的时效性。
方向二:构建 Agent-as-a-Judge 评测流水线
Judge Agent 的核心思路(多维度打分 + 工具调用的评估者)可以直接迁移到金融 Agent 的 CI/CD 流程:
from finance_judge import JudgeAgent
judge = JudgeAgent(model="gpt-4o", metrics=["numeric", "faithfulness", "reasoning"])
result = judge.evaluate(
agent_output=agent_answer,
reference=ground_truth,
document=source_latex_doc,
)
# result.scores: {"numeric": 0.85, "faithfulness": 0.92, "reasoning": 0.78}
# result.flags: ["漏掉脚注注#3的风险披露"]
关键前提:需要先在内部小规模人工评测上建立 judge 的偏差基线(见下节坑位)。
工程坑位一览
-
Agent-as-a-Judge 的系统性偏差:Judge agent 在"数值计算"和"忠实度"两个维度上评估能力取决于底层 LLM 的工具调用能力与数学稳健性。如果 judge 本身也算错数字,整个评测结果就失去了意义。建议每个月用一批已知答案的人工标注样本来校准 judge 的准确率。
-
LaTeX Skill 的维护成本被低估:Skill 依赖的模板和领域知识需要持续更新——如果金融监管口径或估值方法变了(比如 IFRS 新准则),Skill 需要同步更新,否则合成的"参考答案"本身就会过时。
-
深度研究任务(2,026 个)的评测成本极高:每个 Deep Research 任务需要跑完整的 Agent 推理链路 + Judge 评估,成本是普通 QA 的 10-50 倍。如果每日要跑全量评测,需要评估基础设施投入是否值得。
-
合成数据与真实金融文档仍有分布差距:即使 LaTeX Skill 能复现版式,金融文档中的模糊性(如"管理层认为"、"预计"等软性措辞)、非结构化附注、跨机构勾稽关系,在合成数据中覆盖不足。不能把 FinanceComplexQA 的分数直接等同于真实场景表现。
-
六大场景 / 七类任务清单缺失:abstract 未给出,解读方做了合理推测但不能当作事实直接引用。若工程团队要针对特定场景(如"财报分析 × 数值计算")做专项优化,需要从 PDF 原文中找到完整清单再做计划。
-
Cohen's κ 等一致性指标未披露:这是 Agent-as-a-Judge 最核心的可信度指标。如果未给出,说明 judge 的可靠性本身还未经过严格验证,工程团队在使用前应自行做一次小规模人工评测对比。
最小可跑验证路径
# 1. 确认论文是否开源(截稿时未标注)
open https://arxiv.org/abs/2607.19238
# 2. 若开源,克隆
git clone https://github.com/xxx/finance-complex-qa # 待确认仓库地址
cd finance-complex-qa && pip install -e .
# 3. 准备金融 LaTeX Skill 环境(需 LaTeX 发行版)
apt-get install texlive-full # 约 5GB,首次安装耗时较长
python -m finance_complex_qa.list_skills # 列出可用场景模板
# 4. 生成内部测试文档
python -m finance_complex_qa.generate \
--skill财报 --num-docs 50 --output ./test_docs
# 5. 运行 Judge Agent 评测示例
python -m finance_complex_qa.judge \
--doc ./test_docs/sample_001.tex \
--agent-answer "答案文本" \
--ref "参考答案" \
--metrics numeric faithfulness reasoning
# 6. 建立 judge 偏差基线(关键!)
python -m finance_complex_qa.calibrate \
--gold-set ./human_annotated_100.json \
--judge-model gpt-4o
# 输出 Cohen's κ 及各维度偏差报告
⚠️ 警告:若论文未开源 LaTeX Skill 工程代码,以上路径仅作参考。FinanceComplexQA 的核心价值是 benchmark 设计理念,Skill 工程需工程团队自行建设,预计工作量 3-6 人月。