专栏名称: iOS开发
分享iOS相关技术文章、学习资料、视频教程、热点资讯、工具资源、课程书籍等。每天推送,欢迎投稿!
目录
相关文章推荐
湘微教育  ·  关注!湖南这些考试时间定了→ ·  7 小时前  
潇湘晨报  ·  谢娜发文报平安 ·  昨天  
湖南日报  ·  中国电信原总裁兼首席运营官梁宝俊辞职 ·  2 天前  
51好读  ›  专栏  ›  iOS开发

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

iOS开发  · 公众号  ·  · 2024-04-05 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 的工作成果,他剥去了过度炒作的外衣,让我们看到了工程的实质是回归基础并注重实用性的改进措施。”







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