查看: 15|回复: 0

"SWE-agent: Agent-Computer Interfaces Enable Automated Software Engineering" 论文笔记

[复制链接]

2

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2011-2-2
发表于 2025-8-13 22:21:00 | 显示全部楼层 |阅读模式

介绍

(1) 发表:NIPS'24

(2) 背景

考虑直接与 Linux 终端直接互动的 Agent 的简单设置,我们发现 LM Agent 很难在这种环境下可靠地采取行动。例如,它无法提供简单的命令来编辑一个小文件段,并且如果用户进行无效编辑,则不会提供任何反馈。这些缺陷大大阻碍了性能,激发了对代理计算机接口 (ACI) 的需求,即 LM Agent 和计算机之间的抽象层,以增强 LM 代理在计算机环境中的能力

image-20250811175611075

(3) 贡献

在本文中假设 LM 固定,仅专注于设计 ACI 以提高其性能。这意味着我们塑造了动作、文档和环境反馈,以补充 LM 的局限性和能力

方法

ACI 的主要组件为:搜索导航、文件查看器、文件编辑器和上下文管理。在每个步骤中,SWE-Agent 都会产生一个思想和命令,然后在环境中将命令执行的反馈 (ReAct 算法) 结合在一起。 SWE-Agent 在 Linux 终端上构建,还允许在需要时访问常见的 Linux命令和实用程序

(1) 搜索导航

我们介绍了特殊命令 find_file,search_file 和 search_dir,该命令在搜索文件或目录中的文件名和字符串时,输出搜索结果的摘要

image-20250811215429119

(2) 文件查看器

文件查看器一次显示文件的最多 100 行窗口。代理可以使用命令 scroll_down 和 scroll_up 移动此窗口,也可以使用 goto 命令访问特定行

(3) 文件编辑器

编辑命令与文件查看器一起工作,允许代理替换打开文件中的特定行范围。此命令采用 3 个必需的参数:起始行,终点和替换文本。类似于人类使用 IDE 编辑文件时注意到格式错误,我们将代码 Linter 集成到编辑函数中,以提醒 Agent 其编辑文件时可能引入的错误

(4) 上下文管理器

获取有关 Bash 和 ACI 命令正确使用的说明、文档和示范。在每个步骤中,系统都指示他们同时产生思想和动作。无效的生成触发了一个错误响应则会要求 Agents 再试一次,然后重复直到收到有效的生成

实验

image-20250812002632198

SWE-agent 的方法设计明显优于 RAG 和 Shell-only agent

总结

该工作提出并设计了完善的 ACI 框架,对 LLM Agent 在软件领域的应用作出巨大改进



来源:https://www.cnblogs.com/mianmaner/p/19036849
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部