科研智能体的通病不是不会做,而是不知道"做成什么样才算对"——AutoSciRub:先学会评估,再动手改进

让 AI 智能体帮你做一项完整的科研任务,体验大概是这样的:你甩给它一句"结合多种观测手段估算全球冰川质量损失",它跑了几小时,交回来一份洋洋洒洒的报告。看起来挺像回事,但你仔细一翻——该做的对照实验没做,引用的分析方法跟数据格式对不上,结论写得斩钉截铁,底下却没有一条证据撑得住。

问题出在哪?不是模型不够聪明,而是任务本身就没告诉它"好"长什么样。开放式的科研指令,目标、方法、证据要求、成功标准全是隐含的。智能体只能凭感觉猜,猜漏了也没人提醒它。

图1:开放式科研任务的困境——任务只给高层指令,目标、方法、证据、成功标准全是隐含要求,智能体规划执行后交出的报告漏分析、用错流程、结论没支撑

图1:论文开篇的问题示意图。左边是开放式任务指令("结合多种观测手段测量全球冰川质量损失"),右边是被"划掉眼睛"的隐含要求——目标、方法、证据、成功标准全都不可见。智能体按自己的理解规划和执行,最终报告上打着三个红叉:遗漏分析(Missed Analyses)、错误流程(Wrong Procedures)、无支撑结论(Unsupported Conclusions)。

今天要聊的这篇论文(arXiv: 2608.31076),给了一个我觉得方向很对的解法:别急着让智能体干活,先让它把"评分标准"写出来

核心摘要

浙大、电子科大、北邮、浙工大联合团队提出 AutoSciRub,一个"评估先行"(evaluation-first)的科研智能体框架。思路一句话讲完:在执行科研任务之前,先自动归纳出一份任务专属的、可执行的评分细则(rubric)——把指令拆成原子科学目标,去文献里找方法学依据,探查任务数据能支撑什么,再合成一条条具体可验证的准则;然后用这份 rubric 反过来指导执行、做准则级验证、驱动定向修订。效果上,在 ResearchClawBench 上跨三个骨干模型平均涨 2.08 分、跨三种 agent harness 平均涨 2.95 分;迁移到 AstaBench E2E Discovery 的 20 任务子集上,平均暴涨 16.8 分。我的判断:这不是底层算法突破,但它点破了一个被普遍忽视的设计哲学——rubric 不该只是事后打分工具,它应该是执行时的科学规范。对做 Deep Research 类产品的团队,这篇值得细读。

论文信息

  • 标题:Learning to Evaluate Before Improving: Automatic Rubric Induction for Automatic Research Agents
  • 作者:Xuehai Wang, Haowei Qin, Tongxin Liu, Junkai Li, Buqiang Xu, Jintian Zhang, Yijun Chen, Zirui Xue, Shumin Deng(通讯)
  • 机构:浙江大学、电子科技大学、北京邮电大学、浙江工业大学
  • 链接:https://arxiv.org/abs/2608.31076 | 代码:https://github.com/zjunlp/AutoSciRub

🎯 为什么需要这篇论文:rubric 一直被用错了地方

先交代下背景。过去一年 AI for Science 方向的智能体工作爆发式增长,端到端跑"文献综述 → 实验设计 → 写代码 → 出报告"的完整科研流已经不是 demo,而是有正经 benchmark 在测了(比如这篇用的 ResearchClawBench 和 AstaBench)。随之而来的问题是:怎么评估这些智能体的产出?

目前主流做法是 rubric-based evaluation——人类专家先写好一份评分细则,智能体跑完后,用 LLM-as-a-Judge 对着细则逐条打分。ResearcherBench、ResearchRubrics 这些基准都是这个路子。这个方向本身已经很成熟了,Stanford 那边甚至有人专门做了统一框架(Autorubric),把各种打分、校准、去偏技巧收拢到一起。

但你有没有发现一个别扭的地方:rubric 永远是事后才出场的

任务跑完了,专家 rubric 拿出来,打分,结束。对智能体来说,这份细则从头到尾不存在。它干活的时候不知道自己该产出什么证据,产出完了也没人告诉它哪条没达标、该怎么补。这就好比学生闭卷考试,考完才第一次看到评分标准——考得差不能全怪学生。

作者把这个洞察提炼成一句话:learn to evaluate before improving。rubric 应该从"事后评估工具"变成"中间科学规范"(intermediate scientific specification),在执行前被自动归纳出来,贯穿任务理解、执行、验证、修订整个生命周期。

说实话,这个想法本身不算石破天惊——做 Agent 工程的人多少都干过"先让模型自己列 checklist 再干活"的事。但把它形式化、系统化,并且在两个硬核科研 benchmark 上验出稳定收益,这是这篇论文的实际贡献。

🏗️ 方法:AutoSciRub 的两段式设计

先把问题形式化一下。每个科研任务 \(\tau_i = (x_i, \mathcal{E}_i)\)\(x_i\) 是高层指令,\(\mathcal{E}_i\) 是任务可见环境(文献、数据、搜索、代码执行工具)。智能体 \(\pi\) 产出:

\[\mathcal{A}_i^\pi = \pi(x_i, \mathcal{E}_i) = (r_i, \mathcal{S}_i)\]

其中 \(r_i\) 是研究报告,\(\mathcal{S}_i\) 是支撑产物(代码、结果、表格、图)。每个任务背后存在一个潜在科学规范 \(\mathcal{Z}_i^* = (\mathcal{G}_i^*, \mathcal{C}_i^*)\)——该达到的科学目标和验证所需的证据要求。麻烦在于,\(\mathcal{Z}_i^*\) 执行时根本拿不到。AutoSciRub 要做的就是从指令、文献和数据里把这个潜在规范"猜"出来、落成可执行的形式。

整个框架分两大阶段,看这张图:

图2:AutoSciRub 框架总览——左半部分是自动 rubric 归纳的四步流水线,右半部分是 rubric 引导的执行-验证-修订循环

图2:AutoSciRub 全景。左半部分(I. Automatic Rubric Induction):任务指令先经 Rubric Skeleton Induction 拆成原子目标(goal 1/2/3),每个目标生成检索 query 做 Scientific Literature Grounding,经论文/数据文档/方法文档过滤后得到 Grounded Knowledge(方法协议、指标基线、对照消融、证据产物);同时 Task-Data Exploration 对任务可见数据做轻量画像(格式、字段、数据关系);最后 Criterion Synthesis 把三者合成为结构化 Rubric。右半部分(II. Rubric-Guided Iterative Revision):rubric 作为输入指导 Execution 产出报告,Verification 逐准则检查并给出反馈(缺实验、对比不完整),驱动下一轮修订,直到通过或预算耗尽,输出 Final Report。

阶段一:自动 Rubric 归纳,四步走

第一步,骨架归纳(Rubric Skeleton Induction)。把指令拆成一组原子科学目标:

\[\hat{\mathcal{G}}_i = \phi_{inst}(x_i) = \{g_{i,k}\}_{k=1}^{K_i}\]

每个目标 \(g_{i,k} = (n_{i,k}, s_{i,k})\) 只有名称和具体科学要求。关键设计:这一步只看指令本身,不引入任何具体方法、指标、基线。骨架定义"做什么",不定义"怎么做"。这个克制是刻意的——过早承诺方法会把智能体锁死在局部解上。

第二步,文献落地(Scientific Literature Grounding)。对每个目标,围绕概念、方法、指标、标准协议构造检索 query,先查任务自带文献,再调 harness 的联网搜索(arXiv、OpenAlex、Semantic Scholar、Tavily 都用了)。有个细节值得说:检索结果会过一道隐藏目标论文黑名单——benchmark 的每个任务是基于一篇已发表论文构建的,如果让智能体检索到那篇原文,就等于泄题了。这个黑名单由评估 harness 维护,归纳过程不可见。每任务保留 5 到 7 篇核心论文,按科学目标而不是按论文组织知识。

第三步,任务数据探查(Task-Data Exploration)。轻量级扫一遍任务数据:有哪些文件、什么格式、字段单位标签、实验条件、跨数据源的关系。只用于规划可行性,真正的实验推迟到执行阶段。

第四步,准则合成(Criterion Synthesis)。把骨架、文献知识、数据画像三者合并,合成任务专属的可执行 rubric:

\[\hat{\mathcal{R}}_i = \phi_{syn}(\hat{\mathcal{G}}_i, \{\mathcal{K}_{i,k}\}, \mathcal{P}_i) = \{\rho_{i,j}\}_{j=1}^{M_i}\]

每条准则 \(\rho_{i,j}\) 链接到一个或多个科学目标,并明确五样东西:相关数据来源、所需实验或分析、评估指标与对比、预期证据产物、满足条件。

可执行 rubric 到底长什么样

这是全文我最喜欢的一张图,拿一个真实任务做对比:

图3:同一任务下 AutoSciRub 生成的可执行 rubric 与基准 golden checklist 的对比——前者规定了证据如何产出,后者只描述报告里该出现什么

图3:一个凝聚态物理任务(用 tr-ARPES 观测单层外延石墨烯中的 Floquet-Bloch 态)的对比实例。左侧 AutoSciRub 的可执行 rubric 是结构化的:goal 是"识别并刻画 Floquet-Bloch 复制带及 avoided crossing 处的带隙测量",experiments 明确要求"在 Γ 点和 avoided-crossing 动量处提取 EDC""对 EDC 做双峰 Voigt 拟合",required_artifacts 指定图必须展示 n = -1、0、+1 边带且峰间距匹配约 248 meV,baselines 要求与 Floquet 理论预测的带隙对比,data_sources 直接指向具体数据文件。右侧的 golden checklist 只写了"报告里要有能看清主 Dirac 锥和复制带的能量-动量图""坐标轴要标能量和动量"这类表面要求。最终左侧智能体的报告产出了 4 张符合要求的图,右侧只达到 1/3 的覆盖。

看明白差别了吗?Golden checklist 说的是 报告里应该有什么(what),可执行 rubric 说的是 证据应该怎么被造出来(how)——用哪个数据文件、做什么拟合、跟什么理论值对比、产出什么图。前者只能事后打分,后者能事前指导、事中验证、事后诊断。

阶段二:Rubric 引导的验证与修订

rubric 归纳完,交给骨干研究智能体当执行规范,产出初版产物 \(\mathcal{A}_i^{(0)}\)。然后进入循环。

准则级验证:对每条准则单独判定:

\[(z_{i,j}^{(t)}, d_{i,j}^{(t)}) = \text{Verify}(\rho_{i,j}, \mathcal{A}_i^{(t)})\]

\(z \in \{0, 1\}\) 表示准则是否满足,\(d\) 是剩余证据缺口的具体描述。注意这里输出的不是总分,而是逐准则的诊断——哪条没过、差什么证据。

定向修订:未通过准则加诊断构成反馈 \(\Delta_i^{(t)}\),驱动下一轮修订:

\[\mathcal{A}_i^{(t+1)} = \pi_{rev}(\mathcal{A}_i^{(t)}, \Delta_i^{(t)}, \mathcal{E}_i | \hat{\mathcal{R}}_i)\]

修订动作可以是补实验、修正证据产物、强化分析,或者干脆删掉没有支撑的结论。最多 3 轮,带自适应早停——所有准则过了就提前收工。

整个设计其实挺朴素的:没有新模型、没有 RL、没有训练,全是推理时的结构化流程。值钱的是这个流程被认真地拆解、约束、并且在严谨的 benchmark 协议下验证了。

🧪 实验:涨分稳,但有几个地方要泼冷水

设置

两个 benchmark。ResearchClawBench:40 个任务,覆盖天文、化学、地球科学、能源、信息、生命、材料、数学、神经科学、物理十个领域,每个任务基于一篇已发表论文构建,隐藏原文和官方 rubric,GPT-5.1 当评估器,0 到 100 分。AstaBench E2E Discovery:从 40 任务测试集用种子 20260707 一次性随机采了 20 个,MiniMax-M3 当评估器。

配置上做了两组交叉:固定 Codex harness 换三个骨干模型(GPT-5.4、GLM-5.2、MiniMax-M3);固定 DeepSeek-V4-Flash 换三种 harness(Claude Code、OpenClaw、OpenScience)。每个任务跑一次,每份提交由评估器独立评 3 次取均值。

主结果:ResearchClawBench

跨模型组(固定 Codex):

Backbone vanilla +AutoSciRub 变化
GPT-5.4 18.66 21.04 ↑2.38
GLM-5.2 20.86 22.73 ↑1.87
MiniMax-M3 19.05 21.04 ↑1.99

跨 harness 组(固定 DeepSeek-V4-Flash):

Harness vanilla +AutoSciRub 变化
Claude Code 16.60 18.74 ↑2.14
OpenClaw 17.25 20.36 ↑3.11
OpenScience 14.49 18.09 ↑3.60

汇总:跨模型平均涨 2.08 分,跨 harness 平均涨 2.95 分。60 个成对领域比较里 49 个提升,化学、能源科学、神经科学在全部 6 个配置中一致提升。

AstaBench 上的迁移结果更猛:Claude Code 涨 19.36、Codex 涨 12.61、OpenClaw 涨 18.38,平均 16.78 分,而且成功完成的任务数不降反升(Claude Code 和 Codex 从 18/20 到 20/20)。

泼第一盆冷水:绝对分数低得惊人

看到上面表格我的第一反应不是"涨了多少",而是"怎么都这么低"。vanilla 最好的配置才 20.86 分(满分 100,作者提到大约 50 分相当于达到目标论文级别的再发现)。这说明 ResearchClawBench 是个极难的基准——当前最强的科研智能体配置,端到端完成度也就两成上下。

所以这些提升的正确读法是:在一个所有方法都在地板上挣扎的任务上,AutoSciRub 稳定地把地板抬高了两三个点。涨分幅度本身不大,但一致性好——6 个配置全部正收益,这在小样本(40 任务)基准上算难得。

泼第二盆冷水:非算力对齐的比较

作者在协议里坦白了一点:vanilla 和 +AutoSciRub 共享任务输入和工具,但不是算力对齐的——AutoSciRub 引入了额外的模型调用(归纳、验证、修订都是钱)。也就是说,多出来的 2 到 3 分里,有多少来自"评估先行"的机制设计,有多少来自单纯"多花了 token",这篇论文没有回答。

当然,下面的消融部分挽回了一些说服力,接着看。

消融:收益大头在修订环节

OpenClaw + DeepSeek-V4-Flash 上的阶段累积消融:

配置 骨架 落地 修订 分数 Δ
Base 17.25
仅骨架 17.61 +0.36
+ 落地合成 18.31 +1.06
完整 20.36 +3.11

三个发现。其一,光有骨架(只明确"做什么")帮助很小,+0.36 聊胜于无。其二,加上文献落地和准则合成,累计 +1.06,开始有点意思。其三,最大的单步增量来自 rubric 引导的迭代修订,+2.05——占了总收益的近三分之二。

关键对照:为什么不是"自我精炼"的功劳

作者做了一个我很欣赏的对照实验:把 rubric 拿掉,让智能体做通用的自我精炼(self-refinement),同样的修订轮次、同样的未修订基线(18.31):

修订轮次 无 Rubric 自我精炼 Rubric 引导修订
1 18.80(+0.49) 19.47(+1.16)
2 18.52(+0.21) 20.08(+1.77)
3 19.08(+0.77) 20.36(+2.05)

无 rubric 的精炼三轮只涨 0.77,中间还出现回退——这符合我们对 LLM 自我修订的一贯观察,改着改着就漂移了。而 rubric 引导修订单调上升,累计收益是前者的 2.7 倍。这个对照基本回答了上面的算力质疑:收益不是来自"多改几遍",而是来自"有显式准则定位具体缺陷"。

再看修订动态:第一轮平均涨 1.16,聚合收益逐轮递减,但这不是方法失效——是自适应早停把已经通过的任务摘出去了(第一轮后 23 个任务已达标,只剩 17 个进第二轮、6 个进第三轮)。对剩余这些硬骨头,每轮平均提升反而还有 1.43 和 1.89。40 个任务里 35 个在 3 轮内通过验证。作者自己也说,只跑一轮修订已经是很好的成本折衷点——这个建议对工程落地很实用。

最诚实的发现:改善了"操作化",没改善"科学立意"

§4.4 的分析是全文最有意思的部分。作者用 MiniMax-M3 从四个维度(5 分制)评判归纳出的 rubric 质量,对比纯骨架和完整可执行 rubric:

维度 骨架 可执行 Rubric 变化
Specificity 具体性 1.65 4.40 +2.75
Evidence Verifiability 证据可验证性 1.78 4.08 +2.30
Actionability 可行动性 2.00 3.83 +1.83
Scientific Core Coverage 科学核心覆盖 3.35 3.07 −0.28
四维均分 2.20 3.84 +1.64

前三维大涨,最后一维反而降了

这个负号很值钱。它说明 AutoSciRub 擅长的是"把已经识别出的科学方向转化成具体可验证的要求",但如果骨架阶段就没抓住科学核心,后续的落地和合成只会把次要方向做得更精细、更跑偏。说到底,高层科学判断力仍然压在骨干模型身上,这套框架替代不了。

说实话,很多论文会把这种负面发现藏到附录里,这篇敢放在正文分析里讲清楚,加分。

💡 我的判断

亮点:一是概念转换干净利落地被执行了——rubric 从事后工具变执行规范,整个 pipeline 的每一步(黑名单防泄题、准则链接目标、逐准则诊断)都有明确的工程理由;二是评估做得扎实,两个基准、六种配置、消融加对照实验,还主动暴露了算力非对齐和科学覆盖度下降两个软肋;三是 2.7 倍于自我精炼的对照结果,给"结构化反馈优于盲改"这个直觉提供了硬数据。

问题:ResearchClawBench 上 2 到 3 分的绝对提升不算大,且 40 任务的规模让每个小数点都晃;AstaBench 上 16.8 分的暴涨看着惊艳,但那是 20 个任务的单次采样子集,而且换了评估器(MiniMax-M3),两个基准的数字不能直接比着看。另外"Work in progress"的标注也提示结果可能还会变。

跟同期工作的位置:rubric 自动生成这条线今年很热闹——有做 LLM-as-a-Judge 动态 rubric 的,有做 rubric 验证可靠性的,但那些工作的 rubric 都服务于"评判别人"。AutoSciRub 的差异点在于 rubric 服务的是产出者自己,用于执行指导和迭代改进。这个定位在 Deep Research 类产品里是刚需:用户给个模糊需求,系统得先自己想清楚"什么叫做好",再去干活。

工程启发:如果你在做 Deep Research 或 AI Scientist 类产品,这套"骨架 → 文献落地 → 数据探查 → 准则合成 → 逐准则验证修订"的流程几乎可以直接搬。尤其两点值得抄:修订别用通用 self-refine,用显式准则驱动,收益差近 3 倍;修订一轮就停,是成本和性能的最佳折衷。

还有一个更本质的问题这篇没解决:骨架归纳的质量完全依赖骨干模型的科学品味。当模型连"这个任务的核心科学问题是什么"都判断错的时候,后面整条流水线都是在精致地跑偏。怎么评估和提升这层"科学立意"能力,可能是下一个值得做的工作。


觉得有启发的话,欢迎点赞、在看、转发。跟进最新AI前沿,关注我