论文信息
| 项目 | 内容 |
|---|---|
| 日期 | 2026-10-17 |
| 论文 | SWE-Journey: Towards More Realistic Evaluation of Coding Assistants through Long-Horizon, Multi-Turn Interaction |
| 作者 | Hexuan Deng, Yue Wang 等 16 人 |
| 机构 | Tencent AI Data |
| 链接 | arXiv:2610.11559 |
| 代码 | 流水线开源(见论文附录) |
一句话总结
SWE-Journey 用「弱到强任务合成 + 真实用户人格模拟」构建了更接近真实场景的编程 Agent 基准,发现当前模型解题能力不是瓶颈——面对软件架构师通过率 78.5%,面对非程序员却只有 23%,交互能力才是短板。
解决什么问题
Claude Code、Codex 这类编程助手已成为 LLM Agent 最大的落地场景,但现有基准(SWE-bench 系)与真实使用差在两点:
- 任务视程短:真实开发是在持续演进的仓库里完成一长串改动,后一步依赖前一步;而基准多为单 issue 单补丁。
- 交互缺失:真实用户不会一次给出完整需求文档,而是增量提出请求、给反馈、中途改目标,且不同用户风格差异极大。
两个维度同时覆盖的评测此前是空白。
核心方法
(1)弱到强长程任务合成:难点在于合成模型造不出超过自身能力的任务。解法是分解:先用强模型(Claude Opus 4.8)在 Docker 容器里探索仓库、生成任务蓝图和子任务;再由较弱的模型(GLM-5.2)逐个子任务执行「请求生成 → 补丁+F2P测试 → P2P回归测试」三步循环,每一轮把上一轮任务作为种子继续扩难度(要求在上下文范围/改动范围/需求深度/知识广度四个维度中至少两个超越种子),滚雪球式长出长程任务。全程不挖公开 issue,降低泄露风险,单实例成本从人工标注约 $100 降到 $56.64。
(2)人格驱动用户模拟:从真实交互日志(SWE-Chat)挖掘出五个用户人格维度,按专业程度归为四类典型用户——非程序员、产品经理、新开发者、软件架构师,各自绑定不同的目标稳定性、控制风格和验证行为。用户模拟 Agent(GLM-5.2)带 bash/隐藏测试工具,维护「子任务主观状态」和「用户置信度」(初始 50,归零即放弃会话),每条消息还要过一遍质量门(自然度、不泄露答案、披露节奏等七项评分)。
(3)在线评测:不用传统的「提交补丁离线验证」,而是让被测模型在同一个持久 Docker 容器里连续干活,用户认为某阶段完成时立刻测一次(捕捉「用户被骗以为做完了」),会话结束再全量回归测。
实验结果
- 基准规模:30 个长程实例、594 个子任务、6332 个 F2P / 4166 个 P2P 测试节点;参考补丁平均改 10.2 个文件、768 行——约为 SWE-bench Pro 的 2 倍文件、4 倍行数。
- 13 个模型四人格平均,每个模型的功能测试通过率约一半或更低。
- 最核心的数据:同一批任务,软件架构师人格下平均 Final F2P 78.5%(Claude-Opus-5 达 93.6%),非程序员人格下仅 23.0%,差距 55.5 个百分点。单次 mega-prompt 无交互的设定结果介于两者之间——说明交互可增益也可致损。
- 成本敏感场景有惊喜:Hy3 平均分 54.33、单会话 $0.65,约为 Claude-Opus-5 成本的 1/65。
- 弱模型定位错误率 Miss% 接近 60%,且「错上加错」——自测通过后在错误方向上越来越自信,甚至编造技术论据拒绝用户正确提示。
深层洞察
这篇论文最有价值的发现是:编程 Agent 的能力瓶颈正在从「会不会写代码」转移到「会不会跟人打交道」。任务本身模型是解得动的(架构师人格 78.5% 证明了这一点),但用户描述模糊、需求摇摆、无法自查时,模型就崩了。论文把交互能力拆成三项:问对(asking right)——多数模型提问的轮次占比不足 20%,而 Hy4、Claude-Opus-5 高频定向澄清所以得分高;找对(finding right)——在模糊请求下定位正确的改动位置,弱模型过半轮次定位偏靶;改对(fixing right)——接受用户正确修正而不是嘴硬。这给「vibe coding」泼了盆冷水:让不会编程的人可靠地用 AI 编程,目前还不成立。
局限性
- 规模受成本约束:仅 30 个实例,合成+实验已花 $16k。
- 用户人格是数据挖掘出的「典型条件」组合,不还原真实用户群的行为频率分布,人格结果也不能归因到单一维度。
- 用户模拟器本身是 GLM-5.2,模拟器的偏差会传导进评测。
- 4166 个 P2P 节点、LLM-as-Judge 的细粒度指标虽抽检过 90%+ 一致率,但仍是模型评模型。
工程实践启示
- 做编程 Agent 产品,值得为「提问策略」单独投入:在需求模糊时主动澄清的模型最终通过率显著更高,这比堆解题能力性价比可能更高。
- 给用户加置信度/止损机制是真实存在的需求:模拟器「置信度归零即放弃」正对应真实用户流失。
- 便宜模型有明确生态位:需求清晰的简单任务用低成本模型($0.65/会话),复杂模糊任务再上前沿模型,成本分层是产品化的现实路径。
- 在线持续验证很关键:每个阶段用户「以为完成」时立刻跑测试,能在交付前抓住模型蒙混过关——自动化流水线里应内置阶段性回归。
- 用弱模型分解执行、强模型规划合成的「弱到强」数据流水线,是低成本造高难度评测/训练数据的可复用范式。