专栏名称: 程序员专栏
点击关注,进实战技术交流群!分享技术文章、工具资源、精选课程、视频教程、热点资讯、学习资料等。
目录
相关文章推荐
深圳大件事  ·  深圳地铁道歉! ·  10 小时前  
深圳特区报  ·  请看,今天的深圳特区报 ·  15 小时前  
深圳大件事  ·  事发深圳!一10岁男孩坠崖 ·  19 小时前  
深圳特区报  ·  60000张消费券送!送!送! ·  昨天  
51好读  ›  专栏  ›  程序员专栏

华人开源最强「AI 程序员」炸场,让 GPT-4 自己修 Bug!

程序员专栏  · 公众号  ·  · 2024-04-07 18:00

正文

架构师大咖
架构师大咖,打造有价值的架构师交流平台。分享架构师干货、教程、课程、资讯。架构师大咖,每日推送。
公众号

自从“AI 程序员” Devin 问世之后,近期的一大趋势就是程序员们争先恐后地要让自己失业,试图抢先造出比自己更强大的程序员。

普林斯顿大学为 软件工程界迎来了一位新星—— SWE-agent ,论文将在 4 月 10 日 正式发布,目前项目已在 GitHub 上开源。

GitHub: https://github.com/princeton-nlp/SWE-agent

和其他的“AI 程序员”相比,SWE-agent 的特点就是 将 GPT-4 这样的大型语言模型(LLMs)转化为软件工程代理 ,使其能够修复真实 GitHub 仓库中的错误和问题。 SWE-agent 在软件工程基准测试中的 准确度与 Devin 相当 ,在解决 GitHub 仓库问题上的性能甚至超过了 Devin:SWE-agent 平均只需 93 秒 就能修完 Bug。

完整的 SWE-bench 基准测试结果显示,SWE-agent 修复了 12.29% 的问题,Debin 则是 13.84%——但 SWE-agent 有一大优势:开源 。这一成绩也表明,开源模型有能力追赶甚至超越闭源模型的性能。SWE Agent 的高精度显示了其处理复杂软件工程任务的能力。

SWE-agent 的一个核心特性是其 开源代理计算机接口 ,该接口支持代码的编辑和执行。这一专门设计的接口旨在简化代理(由 GPT-4 驱动)与代码的交互,提高任务执行效率。通过提供诸如导航仓库、搜索文件、编辑行和将输入转换为代码等特定命令,代理计算机接口确保了代理与代码库之间的无缝交互。

代理计算机接口的设计对 SWE-agent 的性能至关重要。研究发现,将 GPT-4 连接到一个普通的 bash 终端并不能获得最佳效果。因此,专门设计了一个对语言模型友好的代理计算机接口,以提高代理的理解能力和性能。这种新设计促进了代理与代码库之间的有效沟通,确保了解决软件工程问题的准确性和效率。

SWE-agent 通过一个专门的终端与代码进行交互和执行任务 。这个终端允许代理打开、滚动和编辑文件,确保精确更改,避免错误。它还使代理能够编写和执行测试,从而优化代码质量和效率。这个终端对 SWE-agent 的性能至关重要,增强了其有效处理软件工程任务的能力。

SWE-agent 的 一作、华人 John Yang 在 X 上用一张图解释了这点:

最终实现的性能,比前段时间爆火的 RAG 检索技术要强很多:

SWE-agent 开发过程中还有一个有趣发现是, 限制 AI 系统访问的信息量可以提升其性能 。通过仅允许系统一次查看 100 行代码,而不是整个文件,代理的规划和执行变得更加高效。这种限制有助于简化代理的思维过程,使其能够专注于处理更小部分的代码。这种优化策略已被证明对 SWE-agent 的整体性能有显著提升。

英伟达研 究科学家 Jim Fan 也在 X 上盛赞 SWE:“通过精心调整 GPT-4 命令行工具的设计,足以在 SWE-bench 性能测试中取得 12.3% 的结果。既没有神奇的技术革新,也不需要模型的重大突破。

待到 GPT-5 问世,其在执行指令、工具操作及处理长篇幅上下文的能力上必将实现显著飞跃。届时,当前热议的所谓“提示工程 2.0”技术或许不会像现在这般关键。在此特别点赞 John Yang 的工作成果,他剥去了过度炒作的外衣,让我们看到了工程的实质是回归基础并注重实用性的改进措施。”







请到「今天看啥」查看全文