CodexQA

Industry & PracticeResearch & Benchmarks

用缓存轨迹做任务高效的智能体评测:附录

CodexQA 团队17 min read

附录给出用户名校验器上的量规与两条轨迹摘要、七个编码器的探针准确率、提示词,以及 SWE-bench Verified 的 107 个系统和 Terminal-Bench 2.0 的 65 个系统。

In this piece

用缓存轨迹做任务高效的智能体评测:附录

译注:这是同一篇论文的附录,正文见《用缓存轨迹做任务高效的智能体评测》。

附录 A 轨迹表示细节

A.1 任务、轨迹、量规与抽取示例

我们在 SWE-bench Verified 实例 django__django-11099 上说明 trubric 流水线。

#### 任务。

提供给量规实例化大语言模型的问题陈述:

UsernameValidator 允许用户名以换行结尾 描述 ASCIIUsernameValidator 和 UnicodeUsernameValidator 使用正则表达式 r’^[\w.@+-]+$’ 意图是只允许字母数字字符以及 .、@、+ 和 -。然而,Python 正则表达式一个少为人知的怪癖是,$ 也会匹配结尾的换行。因此,用户名校验器会接受以换行结尾的用户名。改用 \A 和 \Z 来终止正则表达式,就可以避免这一行为。例如,校验器正则表达式可以改成 r’\A[\w.@+-]+\Z’ 以便拒绝以换行结尾的用户名。 我不确定如何正式提交补丁,但所需的改动是平凡的——在 contrib.auth.validators 的两个校验器里使用上面的正则表达式。

#### 实例化的 trubric。

为这个实例生成的六条任务专用字段描述:

查看智能体是否识别出问题在于 ASCIIUsernameValidator 和 UnicodeUsernameValidator 里用 $ 做正则锚定,具体地说是 $ 在 Python 中会匹配结尾换行,以及所提议的修复是在 django/contrib/auth/validators.py 里改成 \A 和 \Z。

检查智能体是否正确定位 django/contrib/auth/validators.py 里的两个校验器类(ASCIIUsernameValidator 和 UnicodeUsernameValidator),并在两者中引用现有正则表达式 r’^[\w.@+-]+$’。

查看智能体是否编写或运行一个测试,确认以换行结尾的用户名(例如 ’validuser\n’)目前被校验器接受,可能是通过使用 Django 的 validate_username,或直接实例化这些校验器。

核验智能体是否把两个校验器类里的正则模式从 r’^[\w.@+-]+$’ 改成 r’\A[\w.@+-]+\Z’,并确保没有对该文件做其他改动。

智能体应当运行相关测试套件(例如 tests/auth_tests/test_validators.py,或完整的 Django auth 测试),以确认带结尾换行的用户名现在被拒绝,并且现有的合法用户名仍然通过。

最终状态应当显示 django/contrib/auth/validators.py 里两个正则模式都已更新,并且没有其他非预期修改,测试确认了拒绝换行的行为。

#### 通用量规。

作为对照,通用基线使用同样的六个字段,但字段描述是固定的、与任务无关的,并由每个任务共享:

行动之前智能体如何定位自己

它如何搜索或导航以找到相关代码

在修复之前它是否以及如何复现该问题

它改了什么(文件、编辑的性质和规模)

编辑之后它是否重新运行了测试或复现脚本,以及观察到的结果(通过、失败、错误)

这次运行如何结束(干净结束、步数或成本上限、未经验证就提交)

#### 轨迹。

提供给摘要大语言模型的、系统 A 在这个任务上渲染后轨迹的摘录。完整渲染轨迹有 98,806 个字符;这里展示开头和结尾。

swe_main
首先,我们应当定位包含 ‘ASCIIUsernameValidator‘ 和
‘UnicodeUsernameValidator‘ 类的文件,以理解正则模式定义在哪里。
由于该 issue 提到这些校验器在
‘contrib.auth.validators‘ 里,我们可以先在 ‘contrib/auth‘ 目录中搜索名为
‘validators.py‘ 的文件。


action: find_file "validators.py" contrib/auth

Directory contrib/auth not found

首先,我们应当定位包含 ‘ASCIIUsernameValidator‘ 和
‘UnicodeUsernameValidator‘ 类的文件,以理解正则模式定义在哪里。[...]

‘‘‘
find_file "validators.py" contrib/auth
‘‘‘
{"open_file": "n/a", "working_dir": "/django__django"}

[... 大约省略 97,000 个字符 ...]

action: python regex_test.py

primary
role: user
ASCIIUsernameValidator 拒绝了该用户名。
UnicodeUsernameValidator 拒绝了该用户名。

(Open file: /django__django/regex_test.py)
(Current directory: /django__django)
bash-$
primary
role: assistant
输出表明 ‘ASCIIUsernameValidator‘ 和
‘UnicodeUsernameValidator‘ 的正则模式都正确地拒绝了带结尾换行的用户名。
这确认了对正则模式所做的改动是有效的。

既然该 issue 已经处理,并且修复已用一个测试脚本核验,
我们现在可以把改动提交到代码库。

‘‘‘
submit
‘‘‘
action: submit

#### 抽取结果。

两个系统在这个任务上的轨迹的结构化摘要,是对照上面的量规产生的。这些摘要描述执行行为,而不提及产生该轨迹的支架或底层模型。

#### 系统 A。

该智能体识别出问题源于 Python 的正则行为,即 $ 会匹配结尾换行,并且在两个校验器里把锚点改成 \A 和 \Z 就能修好它。它在最初检查校验器文件时明确提到了这一点。

该智能体搜索了 validators.py,找到 django/contrib/auth/validators.py,打开它,并定位了 ASCIIUsernameValidator 和 UnicodeUsernameValidator 两个类。它在做出改动之前承认了两个类里现有的正则模式 r’^[\w.@+-]+$’。

该智能体试图通过创建 test_validators.py 和 simple_test_validators.py 来复现这个缺陷,但这些脚本因缺少 Django 设置配置而失败。然后它创建了 regex_test.py 来直接测试正则模式,该脚本成功运行,并在修复后确认拒绝了结尾换行,不过它没有展示修复前会被接受。

该智能体编辑了 django/contrib/auth/validators.py 的第 10 行和第 20 行,在 ASCIIUsernameValidator 和 UnicodeUsernameValidator 里把正则从 r’^[\w.@+-]+$’ 改成 r’\A[\w.@+-]+\Z’。差异只显示对该文件的这两处正则改动,没有其他修改。

该智能体运行了自定义脚本 regex_test.py,其输出是 ASCII 和 Unicode 校验器都拒绝了以换行结尾的用户名。它没有运行现有的 Django 测试套件(例如 tests/auth_tests/test_validators.py)来对照正式测试核验该修复。

最终状态包括 django/contrib/auth/validators.py,其中两个正则模式都更新为 r’\A[\w.@+-]+\Z’。新建了三个文件(test_validators.py、simple_test_validators.py、regex_test.py),但没有修改其他现有文件。该智能体提交了这些改动。

#### 系统 B。

该智能体识别出问题源于 Python 的正则行为,即 $ 会匹配结尾换行,导致 ASCIIUsernameValidator 和 UnicodeUsernameValidator 错误地接受以换行结尾的用户名。它理解到,用 \A 和 \Z 替换 ^ 和 $ 会修好锚定问题,正如该 issue 对 django/contrib/auth/validators.py 所描述的那样。

该智能体在 django/contrib/auth/validators.py 里定位了两个校验器类 ASCIIUsernameValidator 和 UnicodeUsernameValidator。它确认两个类都使用现有正则模式 r’^[\w.@+-]+$’,并把它们识别为需要修改的确切位置。

该智能体通过运行一个快速测试来核验该问题,测试把旧的和新的正则模式与带结尾换行和不带结尾换行的用户名做比较。测试确认旧模式会匹配以换行结尾的用户名,而新模式正确地拒绝了它们,合法用户名仍然通过。

该智能体在 django/contrib/auth/validators.py 里把两个校验器类的正则模式从 r’^[\w.@+-]+$’ 改成 r’\A[\w.@+-]+\Z’。差异只显示这两处正则改动,没有对该文件做其他修改。

该智能体运行了 auth 测试套件,全部 494 个测试通过,包括 auth_tests/test_validators.py 里 UsernameValidatorsTests 的测试。它还运行了一个针对性测试,确认带结尾换行的用户名现在被两个校验器拒绝,而合法用户名仍然通过。

最终状态显示 django/contrib/auth/validators.py 里 ASCIIUsernameValidator 和 UnicodeUsernameValidator 的两个正则模式都更新为 r’\A[\w.@+-]+\Z’。没有修改其他文件,测试确认拒绝换行的行为工作正确。

A.2 线性分类任务

对文本编码器和轨迹表示的每一种组合,我们为 107 个 SWE-bench Verified 系统在一个固定的 20 任务面板上的执行,为每条轨迹组装一个嵌入(2,129 条轨迹;公开档案里缺少少量执行)。基于量规的表示是第 3.1 节按字段嵌入后的拼接;原始轨迹表示把渲染日志的头尾切片作为两个块来嵌入。每个块做 $\ell_{2}$ 归一化,各块权重相等。

探针是用类别平衡平方损失和岭惩罚训练的线性分类器;惩罚沿一条闭式正则化路径、用训练折内的分组交叉验证来选择。评估是五折分组交叉验证,分组分配是带种子且规模平衡的:对系统级属性(iii)–(v),组是任务,因此探针在训练期间未见过的任务上评估;对(i)–(ii),组是模型家族,因此探针在训练期间未见过其家族的系统上评估。我们报告各折平均的平衡准确率;一个 $C$ 类属性的机会平衡准确率是 $1/C$。图 1 对属性(i)–(ii)绘制 $(\mathrm{accuracy}-\mathrm{chance})/(1-\mathrm{chance})$,对(iii)–(v)绘制它的补,因此对评测更有利的方向总是向外。表 2 报告图 1 所依据的平衡准确率。

表 2:对第 3.1 节五个轨迹属性,每个文本编码器和每种轨迹表示上线性探针的留出平衡准确率;这些值是图 1 的依据。对与评测相关的属性(i)–(ii),越高越好;对系统元数据属性(iii)–(v),越低越好。最后一行报告机会平衡准确率。

编码器表示(i)任务(ii)正确性(iii)系统(iv)家族(v)支架
text-embedding-3-small原始轨迹1.000.820.890.970.96
通用0.990.840.610.640.76
trubric0.990.840.200.360.29
nomic-embed-text-v1.5原始轨迹0.980.780.840.900.91
通用0.990.860.560.630.70
trubric0.990.840.160.300.22
bge-large-en-v1.5原始轨迹0.950.780.730.790.86
通用0.990.840.580.640.73
trubric0.990.850.160.330.23
gte-large原始轨迹0.950.770.770.830.90
通用0.990.850.560.590.70
trubric0.990.840.170.330.23
e5-large-v2原始轨迹0.960.770.790.860.90
通用0.990.850.620.660.77
trubric0.990.850.210.370.29
all-mpnet-base-v2原始轨迹0.930.770.680.760.82
通用0.990.840.430.520.57
trubric0.990.830.110.290.16
all-MiniLM-L6-v2原始轨迹0.910.750.700.750.86
通用0.990.840.450.530.59
trubric0.990.820.110.310.16
机会水平0.050.500.010.120.02

A.3 提示词

量规实例化提示词({problem} 是任务描述):

下面是一个软件工程智能体将被要求修复的仓库 issue:

{problem}

为评判智能体在这个 issue 上的轨迹,写一份实例专用量规:
对下面每一节,用一句话说明在这个实例里具体要看什么
(如果能够推断,写出可能相关的模块、文件或测试的名字)。

各节:understanding、localization、reproduction、editing、
verification、final_state。
只回复一个 JSON 对象,键就是这些名字,每个值是一句字符串。

抽取提示词({rubric} 是该任务上实例化的 trubric,或者对通用基线而言是下面这份固定通用量规;{keys} 是字段名;渲染后的轨迹附加在提示词之后):

下面是一个软件工程智能体的(截断后的)执行轨迹。
为下面每一节抽出对该智能体行为的事实描述。每一节 30–60 个词。只描述行为——不要复述问题。如果某一节没有发生,就准确写出缺了什么(例如 "never ran any test after editing")。

{rubric}

只回复一个 JSON 对象,键为 {keys},每个值是一个字符串。

通用量规:

- understanding:行动之前智能体如何定位自己
- localization:它如何搜索或导航以找到相关代码
- reproduction:在修复之前它是否以及如何复现该问题
- editing:它改了什么(文件、编辑的性质和规模)
- verification:编辑之后它是否重新运行了测试或复现脚本,以及观察到的结果(通过、失败、错误)
- final_state:这次运行如何结束(干净结束、步数或成本上限、未经验证就提交)

A.4 量规字段列表

图 6 的量规规模实验从一个 32 字段的库里抽取字段子集。这个库由全文使用的六个规范字段——understanding、localization、reproduction、editing、verification 和 final state——以及另外 26 个字段组成:requirements、causal diagnosis、code context、planning、test design、edge cases、regression scope、feedback response、tool recovery、patch review、exploration breadth、hypothesis testing、search strategy、dependency handling、error interpretation、incrementalism、backtracking、code reuse、instruction adherence、efficiency、state tracking、assumption checking、output quality、risk management、domain knowledge,以及 completion confidence。

译注:上述字段名是实验里的英文键,保留原文;其含义依次为理解、定位、复现、编辑、验证、最终状态,以及需求、因果诊断、代码上下文、计划、测试设计、边界情况、回归范围、对反馈的响应、工具恢复、补丁复查、探索广度、假设检验、搜索策略、依赖处理、错误解释、增量性、回溯、代码复用、遵循指令、效率、状态跟踪、假设检查、输出质量、风险管理、领域知识、完成置信度。

附录 B 高效基准测试细节

B.1 仅分数基线

#### 样本分数。

目标已观察到的 $m$ 个轨迹级分数的均值,$\hat{y}_{\mathrm{sample}}=\frac{1}{m}\sum_{t\in T_{0}}s(f_{0}(t))$。

译注:也就是只把目标自己已经跑过的那些任务的分数做平均,不借用参考系统。

#### 总体均值。

参考系统基准分数的均值,$\hat{y}_{\mathrm{pop}}=\frac{1}{n}\sum_{i=1}^{n}y_{i}$,它完全忽略目标的执行。

译注:这个估计对所有目标都一样,只反映参考系统分数的平均水平。

#### 项目反应模型。

我们用最大后验估计,把两参数 logistic 模型 $\mathbb{P}(s(x_{ij})=1)=\mathrm{sigmoid}\left(a_{j}(\theta_{i}-b_{j})\right)$ 拟合到参考分数矩阵上,能力 $\theta_{i}$ 和难度 $b_{j}$ 使用标准正态先验,对数区分度 $\log a_{j}$ 使用 $\mathcal{N}(0,1/10)$ 先验(把斜率的中心放在 Rasch 值 1 上),并用 L-BFGS 优化。因为基准分数聚合的任务超出了这个 $M$ 任务面板(SWE-bench Verified 是全部 500 个任务;Terminal-Bench 2.0 是全部任务和全部尝试),我们额外拟合一条从能力到基准分数的单调链接 $y\approx\mathrm{sigmoid}(c_{1}\theta+c_{0})$,在参考系统上用最小二乘。对一个目标,我们在一张密网格上形成能力的后验——先验是一个正态,其均值和标准差取参考能力的均值和标准差——用目标已观察到的 $m$ 个轨迹级分数的似然去更新它,并把拟合好的能力到分数链接的后验均值报告为 $\hat{y}_{\mathrm{IRT}}$。

#### 自适应任务选择。

给定拟合好的项目反应模型,任务按目标贪心选择:每一步,下一个任务是当前能力后验下期望 Fisher 信息 $a_{j}^{2}\,p_{j}(\theta)(1-p_{j}(\theta))$ 最高的那个,观察到结果后更新后验。随机任务选择则均匀抽取 $T_{0}$;报告的随机选择结果是对 50 次共享抽取取平均。

B.2 轨迹几何基线

原始轨迹估计器和通用量规估计器,是把第 3.2 节流水线里的 trubric 表示 $\phi$ 替换掉,其余相同。原始轨迹表示用同一个编码器 $g$ 把渲染执行日志的首段和末段作为两个块来嵌入;表示按跨系统的任务级中位数中心化,并做 $\ell_{2}$ 归一化。通用量规表示遵循第 3.1 节的两阶段构造,用附录 A.3 的固定字段描述代替任务专用量规。

B.3 超参数与交叉验证

对每一次任务抽取,超参数的选择方式是把每个参考系统当作伪目标:它的分数由其余参考来预测(岭回归器经由帽子矩阵做留一),并选出使参考误差均值最小的配置。候选网格是核带宽 $\sigma^{2}\in\{\mathrm{med}/2^{k}\}_{k=0}^{8}$,其中 $\mathrm{med}$ 是任务嵌入之间平方距离的中位数,维度 $d\in\{8,16\}$,以及岭惩罚 $\in\{0.1,1.0\}$。集成权重 $\alpha$ 在 $[0,1]$ 的 101 点网格上、用同样的参考伪目标程序选出。

附录 C 系统与任务

C.1 SWE-bench Verified 系统

表 3 列出 107 个被评估的排行榜提交,以及它们的模型家族标签(供留一族协议使用;– 表示无法从提交元数据导出标签)和官方解决率 $y$。

表 3:SWE-bench Verified 系统。

系统家族$y$
20240402_sweagent_gpt4gpt0.224
20240612_MASAI_gpt4ogpt0.326
20240620_sweagent_claude3.5sonnetclaude0.336
20240721_amazon-q-developer-agent-20240719-dev–0.388
20240820_epam-ai-run-gpt-4ogpt0.240
20240820_honeycomb–0.406
20240824_gru–0.452
20240918_lingma-agent_lingma-swe-gpt-72bgpt0.250
20240918_lingma-agent_lingma-swe-gpt-7bgpt0.102
20240920_solver–0.436
20240924_solver–0.454
20241001_nfactorial–0.258
20241002_lingma-agent_lingma-swe-gpt-72bgpt0.288
20241002_lingma-agent_lingma-swe-gpt-7bgpt0.182
20241016_composio_swekitclaude0.406
20241016_epam-ai-run-gpt-4ogpt0.270
20241022_tools_claude-3-5-haikuclaude0.406
20241022_tools_claude-3-5-sonnet-updatedclaude0.490
20241023_emergent–0.466
20241025_composio_swekit–0.486
20241028_agentless-1.5_gpt4ogpt0.388
20241028_solver–0.500
20241029_OpenHands-CodeAct-2.1-sonnet-20241022claude0.530
20241029_epam-ai-run-claude-3-5-sonnetclaude0.396
20241030_nfactorial–0.416
20241105_nfactorial–0.492
20241106_navie-2-gpt4o-sonnet–0.472
20241108_autocoderover-v2.0-claude-3-5-sonnet-20241022claude0.462
20241108_devloclaude0.542
20241113_nebius-search-open-weight-models-11-24–0.406
20241120_artemis_agent–0.320
20241125_enginelabsclaude0.518
20241125_marscode-agent-dev–0.500
20241202_agentless-1.5_claude-3.5-sonnet-20241022claude0.508
20241202_amazon-q-developer-agent-20241202-dev–0.550
20241208_gru–0.570
20241212_epam-ai-run-claude-3-5-sonnetclaude0.554
20241212_google_jules_gemini_2.0_flash_experimentalgemini0.522
20241213_devlo–0.582
20241223_emergent–0.572
20250110_blackboxai_agent_v1.1–0.628
20250110_learn_by_interact_claude3.5claude0.602
20250117_wandb_programmer_o1_crosscheck5o10.646
20250118_codeshellagent_gemini_2.0_flash_experimentalgemini0.442
20250120_Bracket–0.532
20250122_autocoderover-v2.1-claude-3-5-sonnet-20241022claude0.516
20250203_openhands_4x_scaled–0.608
20250206_agentscopeclaude0.634
20250214_agentless_lite_o3_minio30.424
20250224_tools_claude-3-7-sonnetclaude0.632
20250226_swerl_llama3_70bllama0.412
20250228_epam-ai-run-claude-3-5-sonnetclaude0.628
20250316_augment_agent_v0–0.654
20250405_amazon-q-developer-agent-20250405-dev–0.654
20250410_cortexa–0.582
20250415_openhands–0.658
20250430_zencoder_ai–0.700
20250511_sweagent_lm_32b–0.402
20250514_aime_coderclaude0.664
20250515_Refact_Agent–0.704
20250516_cortexa_o3–0.682
20250519_devlo–0.702
20250519_trae–0.706
20250520_openhands_devstral_smalldevstral0.468
20250522_sweagent_claude-4-sonnet-20250514claude0.666
20250522_tools_claude-4-opusclaude0.732
20250522_tools_claude-4-sonnetclaude0.724
20250524_openhands_claude_4_sonnetclaude0.704
20250527_amazon.nova-premier-v1.0nova0.424
20250603_Refact_Agent_claude-4-sonnet–0.744
20250610_augment_agent_v1–0.704
20250611_moatless_claude-4-sonnet-20250514claude0.708
20250612_trae–0.752
20250616_Skywork-SWE-32Bqwen0.380
20250616_Skywork-SWE-32B+TTS_Bo8–0.470
20250623_warp–0.710
20250629_deepswerl_r2eagent–0.422
20250629_deepswerl_r2eagent_ttso10.588
20250710_bloopclaude0.712
20250715_qodo_command–0.712
20250716_openhands_kimi_k2kimi0.654
20250720_Lingxi-v1.5_claude-4-sonnet-20250514claude0.746
20250725_sweagent_devstral_small_2507devstral0.380
20250728_zai_glm4-5–0.642
20250731_harness_aiclaude0.748
20250804_codesweep_sweagent_kimi_k2_instructkimi0.534
20250804_epam-ai-run-claude-4-sonnetclaude0.768
20250806_SWE-Exp_DeepSeek-V3–0.420
20250807_openhands_gpt5gpt0.718
20250819_ACoder–0.764
20250901_entroPO_R2E_QwenCoder30BA3Bqwen0.522
20250901_entroPO_R2E_QwenCoder30BA3B_ttsqwen0.604
20250901_warp–0.756
20250902_atlassian-rovo-dev–0.768
20250915_JoyCode–0.746
20250924_artemis_agent_v2claude0.570
20250928_trae_doubao_seed_codedoubao0.788
20250930_zai_glm4-6–0.682
20251014_Lingxi_kimi_k2kimi0.712
20251021_SalesforceAIResearch_SAGE_bash_only–0.730
20251103_SalesforceAIResearch_SAGE_OpenHands–0.738
20251103_sonar-foundation-agent_claude-sonnet-4-5claude0.748
20251110_frogboss-32b–0.536
20251110_frogmini-14b–0.450
20251120_livesweagent_gemini-3-pro-previewgemini0.774
20251127_openhands_claude-opus-4-5claude0.776
20251205_sonar-foundation-agent_claude-opus-4-5claude0.792

C.2 Terminal-Bench 2.0 系统

表 4 列出 65 个被评估的提交,以及它们的支架、底层模型标签和官方分数 $y$(五次尝试的均值)。被截断的条目在表下写全。

译注:表中系统名、支架名和模型标签都是排行榜上的标识符,按原文保留。表下 a 到 l 把被截断的标识符写全,同样不翻译。这些脚注只补全排行榜里被省略号截断的系统名和模型标签,不引入新的评测结论。

表 4:Terminal-Bench 2.0 系统。

系统支架模型标签$y$
Ante__Gemini-3-Pro-Previewantegemini-3-pro-preview0.647
Ante__Gemini-3.1-Pro-Previewantegemini-3-pro-preview0.742
BashAgent__TermiGen-32Bbash-agenttermigen-32b0.197
Capy__GPT-5.5capygpt-5-50.834
ClaudeCode__GLM-4.7claude-codeglm-4-70.333
CodeBrain-1.5__GPT-5.3-Codexcodebrain-1gpt-5-3-codex0.816
CodeBrain-1__GPT-5.3-Codexcodebrain-1gpt-5-3-codex0.703
CodeBrain-1__Gemini-3-Pro-Previewcodebrain-1gemini-3-pro-preview0.622
Codelia__GPT-5.3-Codexcodeliagpt-5-3-codex0.757
Deep-Agents__GPT-5.2-Codexdeep-agentsgpt-5-2-codex0.667
Dirac__Gemini-3-Flash-Previewdiracgemini-3-flash-preview0.652
Forge__GPT-5.4forgecodegpt-5-40.818
Forge__Gemini-3.1-Pro-Previewforge-codegemini-3-1-pro-preview0.787
Forge__Opus-4.6forgecodeclaude-opus-4-60.818
Gemini_CLI__Gemini-3-Flash-Previewgemini-cligemini-3-flash-preview0.480
Gemini_CLI__Gemini-3.1-Pro-Previewgemini-cligemini-3-1-pro-preview0.608
IndusAGICodingAgent__MiniMax-M2.7indusagi-coding-agentminimax-m2-70.452
IndusAGICodingAgent__gpt-5.3-codexindusagi-coding-agentgpt-5-3-codex0.691
JJAgent__Multiplejjagent–0.871
Judy__Claude-Opus-4.6judyclaude-opus-4-60.721
Judy__Gemini-3.1-Pro-Previewtongagentsgemini-3-1-pro-preview0.805
Junie_CLI__Gemini-3-Flash-Preview…ajunie-cliclaude-opus-4-6/gemini-3-1-pr…b0.710
LemonCode__GPT-5.3-Codexlemon-codegemini-3-1-pro-preview/gpt-5-…c0.799
LemonHarness_GPT-5.3-CodeXlemonharnessgemini-3-1-pro-preview/gpt-5-…d0.849
MAYA__Claude-4.5-sonnetmayaclaude-sonnet-4-50.427
MAYA__Claude-4.6-opusmaya-v2claude-opus-4-60.725
Meta-Harness__Claude-Opus-4.6meta-harnessclaude-opus-4-60.764
Mux__Claude-Opus-4.5muxclaude-opus-4-50.584
Mux__Claude-Opus-4.6muxclaude-opus-4-60.665
Mux__GPT-5.2muxgpt-5-20.621
Mux__GPT-5.3-Codexmuxgpt-5-3-codex0.746
NexAU-AHE__gpt-5.5nexau-ahegpt-5-50.847
OB-1_GPT-5.3-Codex-Claude-Opus-4.…eob-1claude-opus-4-5/claude-opus-4…f0.727
OB-1_GPT-5.4-GPT-5.3-Codex-Claude…gob-1claude-opus-4-5/claude-opus-4…h0.825
OpenCode__Claude-Opus-4.5opencodeclaude-opus-4-50.523
OpenSage__GPT-5.3-Codexsageagentgpt-5-3-codex0.794
OpenSage__Gemini-3-Pro-Previewsageagentgemini-3-pro-preview0.652
Polaris__Claude-Opus-4.7-GPT-5.5-…ipolarisclaude-opus-4-7/gemini-3-1-pr…j0.822
Simplai-Agent__Claude-Sonnet-4.6simplai-agentclaude-sonnet-4-60.535
Simple-Codex__GPT-5.3-Codexsimple-codexgpt-5-3-codex0.752
Terminus-KIRA__Claude-Opus-4.6terminus-kiraclaude-opus-4-60.747
Terminus-KIRA__Gemini-3.1-Pro-Pre…kterminus-kiragemini-3-1-pro-preview0.748
Terminus2__Claude-Opus-4.6terminus2claude-opus-4-60.629
Terminus2__DeepSeek-V3.2terminus2deepseek-v3-20.396
Terminus2__GLM-4.7terminus2glm-4-70.334
Terminus2__GLM-5terminus2glm-50.538
Terminus2__GPT-5.3-Codexterminus2gpt-5-3-codex0.647
Terminus2__Kimi-k2.5terminus2kimi-k2-50.433
Terminus2__Minimax-m2.5terminus2minimax-m2-50.426
WOZCODE__Claude-Opus-4-7wozcodeclaude-opus-4-70.802
Wecode__GPT-5.5wecodegpt-5-50.881
WozCode__Claude-Opus-4.6wozcodeclaude-opus-4-60.681
cchuter__minimax-m2.5cchuterminimax-m2-50.427
clnkr__GPT-5.5clnkrgpt-5-50.661
copilot-cli__claude-opus-4.6copilot-cliclaude-opus-4-60.607
dakou__qwen3-coder-480bdakou-agentqwen3-coder-480b-a35b-instruc…l0.272
grok-cli__grok-4.20-0309-reasoninggrok-cligrok-4-20-0309-reasoning0.573
logos-latest__claude-opus-4.7logos–0.852
logos-ts__claude-opus-4.7logos–0.807
logos__claude-opus-4.6logosagentclaude-opus-4-60.686
pilot-real__claude-opus-4-6pilotclaude-opus-4-60.831
spoox-o-m__GPT-5-Nanospoox-o-mgpt-5-nano0.218
spoox-o-m__GPT-5.3-Codexspoox-o-mgpt-5-3-codex0.721
terminus-2__AfterQuery-GPT-OSS-20Bterminus2gpt-oss-20b-rl0.172
vix__claude-opus-4-7vixclaude-opus-4-70.903

a Junie_CLI__Gemini-3-Flash-Preview-Gemini-3.1-Pro-Preview-Claude-Opus-4.6-GPT-5.3-Codex b claude-opus-4-6/gemini-3-1-pro-preview/gemini-3-flash-preview/gpt-5-3-codex c gemini-3-1-pro-preview/gpt-5-3-codex d gemini-3-1-pro-preview/gpt-5-3-codex e OB-1_GPT-5.3-Codex-Claude-Opus-4.5-Claude-Opus-4.6 f claude-opus-4-5/claude-opus-4-6/gpt-5-3-codex g OB-1_GPT-5.4-GPT-5.3-Codex-Claude-Opus-4.5-Claude-Opus-4.6 h claude-opus-4-5/claude-opus-4-6/gpt-5-3-codex/gpt-5-4 i Polaris__Claude-Opus-4.7-GPT-5.5-Gemini-3.1-Pro j claude-opus-4-7/gemini-3-1-pro-preview/gpt-5-5 k Terminus-KIRA__Gemini-3.1-Pro-Preview l qwen3-coder-480b-a35b-instruct-fp8

C.3 任务面板

SWE-bench Verified 面板由下面这 $M=100$ 个实例组成(一个固定的 20 任务面板,与另一次带种子的、再抽 80 个实例的随机抽取并在一起):

译注:下面列出的是基准实例标识符,按原文保留,顺序与原文一致,共 100 个。

astropy__astropy-14096, astropy__astropy-7336, django__django-10973, django__django-11099, django__django-11206, django__django-11333, django__django-11477, django__django-11490, django__django-11532, django__django-11880, django__django-12276, django__django-12419, django__django-13012, django__django-13121, django__django-13128, django__django-13297, django__django-13346, django__django-13410, django__django-13590, django__django-13807, django__django-13810, django__django-13933, django__django-14034, django__django-14053, django__django-14122, django__django-14238, django__django-14315, django__django-14539, django__django-14559, django__django-14725, django__django-14999, django__django-15037, django__django-15098, django__django-15315, django__django-15525, django__django-15554, django__django-15695, django__django-15814, django__django-15916, django__django-15930, django__django-15957, django__django-16100, django__django-16145, django__django-16333, django__django-16429, django__django-16454, django__django-16527, django__django-16560, django__django-16642, django__django-16801, django__django-16877, django__django-9296, matplotlib__matplotlib-20859, matplotlib__matplotlib-23299, matplotlib__matplotlib-24149, matplotlib__matplotlib-24177, matplotlib__matplotlib-25287, matplotlib__matplotlib-25332, matplotlib__matplotlib-25479, matplotlib__matplotlib-25775, matplotlib__matplotlib-26113, pallets__flask-5014, psf__requests-1724, pydata__xarray-3305, pydata__xarray-4075, pydata__xarray-4094, pydata__xarray-4966, pydata__xarray-6744, pydata__xarray-7229, pydata__xarray-7233, pydata__xarray-7393, pylint-dev__pylint-6386, pylint-dev__pylint-6528, scikit-learn__scikit-learn-10908, scikit-learn__scikit-learn-13439, sphinx-doc__sphinx-10435, sphinx-doc__sphinx-10466, sphinx-doc__sphinx-10614, sphinx-doc__sphinx-8120, sphinx-doc__sphinx-8475, sphinx-doc__sphinx-8593, sphinx-doc__sphinx-8595, sphinx-doc__sphinx-8638, sphinx-doc__sphinx-9258, sphinx-doc__sphinx-9367, sphinx-doc__sphinx-9461, sphinx-doc__sphinx-9658, sphinx-doc__sphinx-9673, sphinx-doc__sphinx-9698, sympy__sympy-13551, sympy__sympy-13647, sympy__sympy-13974, sympy__sympy-14248, sympy__sympy-14531, sympy__sympy-15875, sympy__sympy-17655, sympy__sympy-20154, sympy__sympy-21596, sympy__sympy-23950, sympy__sympy-24661

Terminal-Bench 2.0 面板使用全部 89 个任务:

译注:下面列出的是命令行任务标识符,按原文保留,顺序与原文一致,共 89 个。

adaptive-rejection-sampler, bn-fit-modify, break-filter-js-from-html, build-cython-ext, build-pmars, build-pov-ray, caffe-cifar-10, cancel-async-tasks, chess-best-move, circuit-fibsqrt, cobol-modernization, code-from-image, compile-compcert, configure-git-webserver, constraints-scheduling, count-dataset-tokens, crack-7z-hash, custom-memory-heap-crash, db-wal-recovery, distribution-search, dna-assembly, dna-insert, extract-elf, extract-moves-from-video, feal-differential-cryptanalysis, feal-linear-cryptanalysis, filter-js-from-html, financial-document-processor, fix-code-vulnerability, fix-git, fix-ocaml-gc, gcode-to-text, git-leak-recovery, git-multibranch, gpt2-codegolf, headless-terminal, hf-model-inference, install-windows-3.11, kv-store-grpc, large-scale-text-editing, largest-eigenval, llm-inference-batching-scheduler, log-summary-date-ranges, mailman, make-doom-for-mips, make-mips-interpreter, mcmc-sampling-stan, merge-diff-arc-agi-task, model-extraction-relu-logits, modernize-scientific-stack, mteb-leaderboard, mteb-retrieve, multi-source-data-merger, nginx-request-logging, openssl-selfsigned-cert, overfull-hbox, password-recovery, path-tracing, path-tracing-reverse, polyglot-c-py, polyglot-rust-c, portfolio-optimization, protein-assembly, prove-plus-comm, pypi-server, pytorch-model-cli, pytorch-model-recovery, qemu-alpine-ssh, qemu-startup, query-optimize, raman-fitting, regex-chess, regex-log, reshard-c4-data, rstan-to-pystan, sam-cell-seg, sanitize-git-repo, schemelike-metacircular-eval, sparql-university, sqlite-db-truncate, sqlite-with-gcov, torch-pipeline-parallelism, torch-tensor-parallelism, train-fasttext, tune-mjcf, video-processing, vulnerable-secret, winning-avg-corewars, write-compressor

Found it useful? Pass it on

WeChat

Scan with WeChat to open it on your phone and forward it.

Subscribe via RSS

Submit a correction