返回评测
代码生成 代码-科学计算 未饱和 模态 · 代码 任务 · 代码生成 未获取到

AInsteinBench 未获取到

244 个来自 PySCF/Qiskit/OpenMM/RDKit/AMReX/Einstein Toolkit 的真实开发任务,检验 LLM 能否在科学软件生态里做端到端科研开发

ByteDance Seed / Princeton University ·

考察能力

仓库级代码修改 科学不变量保持 跨文件协同推理 数值稳定性 空间推理 科学领域知识

构建信息

数据规模
244 problems / 6 科学代码库 / 5 学科域
构建方式
从 6 个科研仓库的 maintainer PR 爬取 + 模块消融合成任务,多阶段过滤并由 10 名领域博士人工复核
评测方式
每个实例一个隔离 Docker 容器,CodeAct Agent 以 Plan-Act 循环读写文件、执行命令、跑测试,测试驱动验证
核心指标
%Resolved(解决率)

模型效果排行

🥇 Claude 4.5 Opus
44.0% 2026-08
🥈 Gemini 3 Pro
42.8% 2026-08
🥉 DeepSeek V3.2
37.0% 2026-08
4. Doubao Seed 1.8
36.7% 2026-08
5. GPT-5-high
35.4% 2026-08
6. Claude 4.5 Sonnet
33.7% 2026-08
7. GPT-5.1
32.9% 2026-08
8. Kimi K2
29.1% 2026-08

为什么重要

现有的编码智能体评测存在一个结构性盲区:它们几乎不考察”科学正确性”。

  • 科学推理类基准(如 GPQA、SciEval)测的是概念性知识,答对选择题即可,不涉及动手改代码。
  • 通用软件工程基准(如 SWE-bench 系列)测的是通用功能实现与 issue 修复,任务分布被 Web 应用和工具库主导。论文指出 SWE-bench 虽包含 Astropy 一个科学仓库,但这远远谈不上代表性采样。

真实的计算科学研究却是另一回事。一个研究生或博士后的日常是:读文献 → 把物理/数学假设编码进模拟代码 → 跑大规模模拟 → 根据求解器反馈迭代。这条链路要求模型能读懂长生命周期的科研仓库、理解领域特定的不变量(守恒律、k 点排序、胞几何)和数值约束,并且在不破坏科学正确性的前提下实现或修复代码。

AInsteinBench 填补的正是这个空白:它不问”你能不能修一个 Web 应用的 bug”,而问”你能不能在 PySCF、Qiskit、Einstein Toolkit 这类生产级科研软件生态里,端到端地完成一次真实的科研开发”。

构建方式

仓库选择

按四条标准从科研软件中筛出 6 个仓库,覆盖 5 个学科域:

域仓库角色
QC 量子化学PySCF高精度电子结构求解器,模块化 Python 接口
QI 量子信息Qiskit量子电路构建与模拟,硬件后端执行
NR 数值相对论Einstein Toolkit + AMReX大规模相对论模拟、高性能 AMR 框架
MD 分子动力学OpenMM力场分子动力学,面向生物分子的优化内核
CI 化学信息学RDKit分子性质预测、指纹与化学信息学算法

选择标准为:认可度(领域事实标准,用户与引用量大)、广度(学科不同、软件栈跨 Python 前端与 C/C++/Fortran 高性能内核)、维护性(issue 讨论活跃、有结构化测试套件)、可复现(能在固定 commit 上跑自包含构建与测试,不依赖外部数据)。

两条数据流水线

A. 仓库爬取的真实 PR(bug 修复为主)

  1. PR 爬取:克隆仓库,用 GitHub API 收集全部 PR,抽取 issue 描述、base commit、fix patch、关联测试更新。仅保留同时满足三条的 PR:(1) 解决明确定义的科学或数值 bug(排除文档、重构、大型功能添加);(2) 包含能暴露失败并验证修复的测试更新;(3) 已合并进主分支。
  2. 环境配置:为每个 PR 重建与其创建时相近的依赖栈,在最小化隔离 Docker 容器中执行,保证确定性测试与跨机器可复现。
  3. Fail-to-Pass 过滤:沿用 SWE-bench / Multi-SWE-bench 流程,验证每个实例在重建环境中能产生清晰的 fail-to-pass 转换。
  4. API 补充:对新功能类 PR,解析 fix patch 的 git diff 抽取新引入函数/类的签名,再解析 test patch 筛出真正被测试用到的符号,把精简后的 “Minimal API” 文档块附加到 issue 描述里。

B. 合成的功能实现任务

识别科研仓库中的关键计算模块(例如 Einstein Toolkit 里的 Cactus “Thorn”),移除或屏蔽模块内部分源码做功能消融,然后基于随附文档、接口规范与剩余代码上下文构造任务,要求智能体重建缺失组件——比如用特定时空度规填充网格、实现微分方程右端源项、做寻找视界的表观球面分解。这类任务的验证靠参数文件与输出检查定义的测试模拟(如 test/ 目录的参考数据),原始代码只作为参考答案。

人工验证与难度分级

10 名相关领域博士做最终审核,分两层:

  • Issue 验证:确认每个实例有明确且有意义的科学背景,剔除纯工程驱动、缺乏科学相关性的问题;评估描述清晰度(能否仅凭仓库内上下文推断失败模式与预期行为);对描述不完整的功能请求,用与测试相关的最小 API 文档补齐。
  • 测试验证:审核 test patch 是否忠实捕捉预期科学需求,并修正两类失败模式——覆盖不足(测试太弱,允许伪修复)通过增加回归用例强化;覆盖过度(过度约束特定实现策略,拒绝其他科学上有效的修复)移除规定性断言。

难度按 科学深度(1–5) 与 工程难度(1–5) 两个维度打分,取整均值后分档:Easy [1, 2.33]、Medium (2.33, 3.66]、Hard (3.66, 5]。

关键发现

1. 最好的模型也只解决 44%,科学软件远未被攻克

Claude 4.5 Opus 以 44.0% 的整体解决率居首,即便在 Easy 档也只有 59.3%,Hard 档骤降到 30.2%。作为对照,同一批模型在通用 SWE-bench 类基准上已能冲到 90% 以上——通用编码能力与科研编码能力之间的落差,是这份基准最刺眼的信号。

2. 学科分化极大,最难的域指向真实科研痛点

以榜首 Claude 4.5 Opus 为例,分域得分为 QI(量子信息)67.6% > MD(分子动力学)53.7% > NR(数值相对论)44.1% > QC(量子化学)38.3% > CI(化学信息学)19.6%。

  • CI 全线崩塌:GLM 4.6 与 GPT-4o 在 RDKit 上直接 0.0%,原因是化学信息学要求真实的三维空间推理。
  • NR 需要跨文件协调:AMReX 一类任务常常要跨 5 个以上文件协同修改,解决率最低。

3. 失败是”知识失败”而非”编码失败”

论文归纳出五类失败模式:数学细节错误、守恒律破坏、空间推理不足、科学/代码约定误用、科学知识混淆。没有一类是语法或 API 使用问题——写 Python 从来不是科学软件的难点。

4. 定位能力不等于修复能力

论文把 issue 定位(是否编辑了 gold patch 涉及的必需文件)单独抽出评测。DeepSeek V3.2 与 Claude Opus 4.5 的定位分数都超过 0.70,但整体解决率只有 37.0% 和 44.0%。模型找得到病灶,却修不好。

5. 效率上,成功轨迹早早饱和

几乎所有问题至少需要 20 次迭代做仓库探索与定位;成功轨迹集中累积在前 20–60 步,此后额外步骤主要贡献的是失败轨迹。这意味着给智能体更多步数并不能线性换取成功率。

局限性与展望

  • 仅覆盖 6 个仓库,虽横跨 5 个学科,但对整个科研软件生态仍是小样本。
  • 评测使用 CodeAct Agent 单一 harness,harness 效应未被量化(同期其他基准已证明换 harness 会改变排名)。
  • 合成任务依赖”模块消融”构造,与真实科研需求分布是否一致有待检验。
  • 论文未报告被会议接收的 venue,目前为 arXiv 预印本。

关联基准

参考链接

科学计算 编码智能体 仓库级 量子化学 分子动力学 数值相对论 ByteDance Seed