SWE-agent: Agent-Computer Interfaces Enable Automated Software Engineering
SWE-agent:面向 Agent 设计代码操作接口
通过更适合 model 的 search、编辑、feedback 与 context 接口,提升在真实代码仓库中的问题修复能力。
Classification & RSI Relation 1 Variant · Editorial Assessment
主题标签用于检索;以下按实际 Experiment / Variant 判断更新对象与证据。Not Demonstrated 表示这项研究未提供相应证据。
Main Method
- Update Target
- No persistent system target in this setting
- Loop Role
- Solver
- Persistence
- Ephemeral
- Recursive Reuse
- Not Demonstrated
- Evidence
- Task Gain
- System Boundary
- Software Engineering Interfaces & Tools;以该论文实际可更新组件为边界,固定部分见下方判定。
- Feedback
- 仓库 search 结果、编辑后的内容、语法检查、代码执行与测试输出。
- Evidence Scope
- 接口来自人工行为分析和配置 search,运行中的 Agent 没有自动演化自身工具。它修改的是目标仓库,foundation model 也冻结。因此代码修改、execution feedback 与高分修复本身,均不足以构成 Recursive Self-Improvement。 已核验固定版本的相关方法与主要结果;未独立复现。
本实验由研究者设计与消融 ACI,Agent 修改的是任务仓库。没有展示持久的 Agent 自更新;收录为相关接口研究,可从 All Papers 与 Method 找到。
检查原文设置 ↗原论文明确提出或报告的内容
相关文献中已有的知识与结论
基于证据的解释、重建或教学推演
待验证的猜测、实验计划或新研究提案
Idea Reconstruction 是从已知背景出发的推演,不代表作者真实心理过程。Follow-up 是研究提案;相关工作比较不等于已证实 Novelty。教学示例与原文案例在正文中区分。
Contents · 12 Questions
Core Intuition
用一个清楚的视角抓住方法本质。
Agent 的表现取决于 foundation model 与操作环境的配合。紧凑编辑、清楚 feedback 和适量 context 可以改变同一 model 的有效能力;编辑理解是,系统层改进应把工具造成的摩擦与 model 本身的知识缺口分开测量。
Method & Worked Example
沿着输入、处理、输出走完 Pipeline。
设计少量 search、定位、文件查看与局部编辑命令,在修改后直接展示新内容并检查语法。系统压缩旧观察,保留当前关键信息;model 交替提出操作和读取 execution feedback,直至提交修复补丁。
原文展示了带行号的 File Viewer 与按行替换的 Editor。输入 Issue 和仓库,Agent 搜索相关文件,打开有限行窗口,定位修改范围,提交编辑后立即读取更新的文件与检查反馈,再运行测试,输出 Patch。变化发生在任务仓库中;ACI 和底层 Model 在该任务循环中保持既定实现。
Mathematical Foundations
从符号、直觉与简单例子理解理论。
主要贡献是系统设计,没有新的核心数学推导。用成功率与成本理解接口:更短 Observation 能节省 Token,但若删掉决定性证据,会降低任务成功率;更严格编辑检查能阻止语法错误,也可能增加回合。必须在统一任务和预算下测量这项取舍,不能单看命令数量。
Task success, tokens, turns, and edit failures should be measured under the same ACI budget
Experiments & Claims
Research Question → Experiment → Answer
Question:特制 ACI 是否改善软件工程表现?→ Experiment:在 SWE-bench 与 HumanEvalFix 评估,并通过接口变体检查搜索、编辑及 Context 管理的作用。→ Answer:作者报告效果及行为差异,支持接口对固定 Model 的重要性;具体数字对应论文版本与 Benchmark 设置。
原论文中,GPT-4 Turbo 配合该接口在完整 SWE-bench 上解决 12.47% 的任务,在 Lite 子集解决 18.00%。这些是特定历史 model 与预算下的修复成绩,用于说明接口设计作用,不代表当前最高水平。
Takeaways
这篇论文改变了哪些判断?
One-Week Reproduction
用一周检验一个最小且明确的命题。
Day 1–2:准备十个小仓库修复任务。Day 3–5:比较原始 Shell、有限窗口 Viewer 和带检查的 Editor,固定 Model。Day 6–7:分析定位失败、语法破坏、测试遗漏及成本,避免只统计最终 Patch 是否生成。
Counterexample Design
如何构造有辨识力的反例?
构造必须同时查看远距离两个函数才能理解的问题。若窗口化接口降低了全局线索可见性,导致错误局部修复,就能展示 Context 节省的适用边界。
Sources & Verification
阅读已固定版本的原文 Background、方法与主要结果,结合下列相关文献撰写。Paper Claim 表示作者报告,未独立复现;Inference 包括数学教学推演与 Idea Reconstruction。One-Week Reproduction、Counterexample 和 Follow-up 均为待执行提案,Novelty 尚需更全面的文献与实验检验。
- [1] SWE-agent: Agent-Computer Interfaces Enable Automated Software Engineering · v3 ↗原文 Background、Method / Formalization 与主要实验或理论结论。数字沿用原文设置;未独立运行完整实验。
- [2] ReAct: Synergizing Reasoning and Acting in Language Models ↗相关方法与研究背景;用于说明具体差异,不能替代对本篇结论的验证。
- [3] Reflexion: Language Agents with Verbal Reinforcement Learning ↗相关方法与研究背景;用于说明具体差异,不能替代对本篇结论的验证。
