OpenAI发表PaperBench:AI自主复现顶尖论文?

在这里插入图片描述
就在今天openai开源 PaperBench,这是一个基准,用于评估 AI 代理复制最先进 AI 研究的能力。代理必须复制顶级 ICML 2024 论文,包括理解论文、编写代码和执行实验。
论文地址:PaperBench: Evaluating AI’s Ability to Replicate AI Researchf
项目地址:https://github.com/openai/preparedness/tree/main/project/paperbench
以下都是对该论文的一些总结:

  1. 提供20篇ICML 2024的研究论文,要求AI代理从头复制这些研究,理解贡献、开发代码库和执行实验。
  2. 通过与原作者共同开发的分层标准,为每个复制任务创建清晰的评分标准,共计8316个可评分任务。
  3. 引入基于大型语言模型的评判者,自动对复制尝试进行评分,以便实现可扩展的评估。
    在这里插入图片描述

下面是详细且具体地描述这篇论文:

论文概述:PaperBench:评估AI复制AI研究的能力

这篇论文介绍了一个名为 PaperBench 的新基准测试,旨在评估AI智能体(agents)复制最先进的AI研究成果的能力。具体来说,智能体需要从头开始复制20篇 ICML 2024 会议上发表的聚光灯(Spotlight)和口头报告(Oral)论文,这包括理解论文的贡献、开发代码库以及成功执行实验。
在这里插入图片描述

为了进行客观评估,论文作者开发了详细的评估细则(rubrics),将每个复制任务分层分解为更小的子任务,并为每个子任务制定了明确的评分标准。总的来说,PaperBench 包含了 8,316 个可以单独评分的任务。这些评估细则与每篇ICML论文的作者共同开发,以确保其准确性和现实性。

为了实现可扩展的评估,论文作者还开发了一种基于 LLM 的裁判(judge),可以根据评估细则自动对复制尝试进行评分。为了评估裁判的性能,作者创建了一个单独的裁判基准测试(JudgeEval)。通过 PaperBench 评估了几种前沿模型,发现性能最佳的智能体,即使用开源脚手架的 Claude 3.5 Sonnet (New),平均复制得分达到 21.0%。最后,论文作者招募了顶尖的机器学习博士来尝试 PaperBench 的一个子集,发现目前的模型尚未超越人类基线。论文作者开源了他们的代码,以促进未来对AI智能体的AI工程能力的研究。

核心方法:分层评估细则与LLM裁判

PaperBench 的核心方法在于使用分层评估细则和LLM裁判相结合的方式,对AI智能体复制AI研究成果的能力进行全面、客观且可扩展的评估。

1. 分层评估细则 (Hierarchical Rubrics):

评估细则的设计是 PaperBench 的关键组成部分。它将复杂的论文复制任务分解为一系列更小、更易于管理和评估的子任务。评估细则采用树状结构,每个节点代表一个特定的要求或目标。

  • 层次结构: 评估细则是一个树状结构,根节点代表复制论文的总体目标(例如,复制论文的核心贡献)。根节点之下的每个层级都将任务分解为更精细的子任务。叶节点(Leaf Nodes)代表了最细粒度的、可以直接评估的要求。
  • 粒度级别: 评估细则的每个层级都以更精细的粒度描述需求。论文作者会不断分解节点,直到他们估计专家可以在15分钟内审查一次提交是否满足要求(假设他们熟悉该论文)。
  • 权重: 每个节点都被赋予一个权重,表示该节点相对于其同级节点的重要性。权重用于计算最终的复制得分,确保对论文更重要的部分给予更多的重视。
  • 要求类型 (Requirement Types): 每个叶节点都属于以下三种类型之一:
    • 结果匹配 (Result Match): 评估执行后的提交是否包含复制论文中特定结果的证据。裁判会查看 reproduce.shreproduce.log 以及在复制步骤中创建或修改的任何文件。
    • 执行 (Execution): 评估在运行 reproduce.sh 脚本时是否发生了特定的执行结果。裁判会查看 reproduce.shreproduce.log 和源代码。
    • 代码开发 (Code Development): 评估智能体的源代码是否包含某些要求的正确实现。

技术细节:

R 为评估细则(rubric),R 是一个树状结构,其中每个节点 n 包含以下属性:

扫描二维码关注公众号,回复: 17610523 查看本文章
  • requirement: 对特定要求的文字描述。
  • type: 节点类型(Result Match, Execution, Code Development)。
  • weight: 节点权重,表示其重要性。
  • children: 子节点列表。

叶节点 l 没有子节点。对于每个叶节点,裁判分配一个二进制分数 s(l),如果满足要求则为1,否则为0。

非叶节点 n 的分数计算为其子节点分数的加权平均值:

s(n) = ∑ weight© * s© , 对于所有子节点 c belonging to children(n)

其中 weight© 是子节点 c 的权重。

根节点的分数 是整个提交的最终复制得分。

2. LLM裁判 (LLM Judge):

由于人工评估需要耗费大量时间和资源,论文作者开发了一种基于LLM的自动裁判来对复制尝试进行评分。

  • 裁判实现: 裁判使用 LLM (OpenAI 的 o3-mini) 作为后端模型。对于每个叶节点,裁判会被提供论文的 Markdown 版本、完整的评估细则JSON、叶节点的要求以及经过筛选的提交文件。
  • 上下文管理: 由于完整的提交通常太长,无法完全放入模型的上下文窗口,裁判首先对代码库中的文件按相关性进行排序,然后只包含最相关的十个文件。
  • 评分过程: 裁判根据叶节点的要求评估提交,并分配一个二进制分数(1或0)。然后,这些分数会根据评估细则的层次结构进行加权平均,以计算出每个节点的得分,直到达到根节点,得到最终的复制得分。
  • 提示工程 (Prompt Engineering): 为了确保裁判的准确性,论文作者使用了精心设计的提示语,明确了裁判的角色、任务以及评分标准。

技术细节:

裁判的目标是为每个叶节点 lR 预测一个二进制分数 s(l)。裁判使用以下输入:

  • P: 论文的文本表示 (Markdown)。
  • R: 完整的评估细则 (JSON)。
  • requirement(l): 叶节点 l 的要求描述。
  • files(l): 根据叶节点类型筛选出的相关文件(例如,源代码、日志文件、结果文件)。

裁判使用LLM来预测分数:

s(l) = LLM(P, R, requirement(l), files(l))

裁判的输出是一个包含分数和解释的文本。然后使用另一个LLM(GPT-4o)将输出解析为0或1的二进制分数。

3. 裁判评估 (JudgeEval):

为了评估LLM裁判的准确性,论文作者创建了一个名为JudgeEval的辅助基准测试。

JudgeEval数据集: JudgeEval 包含来自 PaperBench 数据集的四篇论文的部分复制品,以及一篇来自 PaperBench 开发集的论文。这些复制品由人类专家手动评分,作为评估自动裁判的黄金标准标签。
评估指标: 使用标准二进制分类指标(例如,准确率、精确率、召回率和 F1 分数)来评估裁判的性能。

在这里插入图片描述

PaperBench 的优势和局限性:

PaperBench 提供了一个有价值的框架,用于评估AI智能体的AI工程能力。它的优势在于:

  • 真实性: 它直接评估了AI智能体执行实际AI研究任务的能力。
  • 客观性: 分层评估细则和LLM裁判提供了客观的评估标准。
  • 可扩展性: LLM裁判使大规模评估成为可能。

然而,PaperBench 也存在一些局限性:

  • 数据集大小: PaperBench 目前只包含20篇论文。
  • 评估细则创建成本高: 创建详细的评估细则非常耗时。
  • LLM裁判的准确性: LLM裁判的准确性不如人类专家。
  • 潜在的污染: 由于论文作者的代码库可能在线存在,模型可能会内化解决方案,导致性能虚高。

总的来说,PaperBench 是一个有价值的基准测试,可以帮助评估AI智能体在复制AI研究方面的进展,并为未来的研究提供方向。