普林斯顿大学最近推出了一款名为SWE-agent的AI程序员,这是世界上首个开源的AI程序员,它基于GPT-4技术,能够在GitHub仓库中自动修复bug。这个智能体-计算机接口(ACI)的诞生,标志着AI在软件工程领域的应用迈出了重要一步。
SWE-agent在SWE-bench测试集上的表现令人瞩目,它成功解决了12.29%的问题,平均耗时仅为93秒,准确率与之前推出的AI程序员Devin相当。SWE-agent的开源性质意味着它在GitHub上迅速获得了1.6k星和109个Fork,显示出开源社区对这一技术的高度认可和兴趣。
项目地址:https://top.aibase.com/tool/swe-agent
SWE-agent的工作原理是与专门的终端交互,它可以打开、滚动和搜索文件,编辑特定行并自动进行语法检查,编写和执行测试。这种设计类似于为人类设计的UI,能够阻止错误并提供反馈。例如,在处理一个矩阵操作bug时,SWE-agent能够重现问题、定位到问题代码、进行修改并成功解决问题。
普林斯顿大学的研究人员为SWE-agent设计了简洁的指令和反馈格式,使得模型能够更轻松地浏览代码仓库、查看、编辑和运行代码文件。SWE-agent的工作流程分为两个阶段:推理和评估。推理阶段,SWE-agent处理GitHub上的问题并生成修复方案;评估阶段,则确认方案是否真正解决了问题。
这项研究的核心作者John Yang和Carlos E. Jimenez,都是普林斯顿大学的研究助理和博士生,他们的研究兴趣集中在语言基础、交互、LLM的基准测试、软件工程和代码生成等领域。他们的工作展示了AI在软件工程领域的潜力,引发了关于AI与人类在工程过程中角色和能力的深层次思考。
随着AI技术的发展,我们看到了AI在编程领域的进步,它们不仅能规划和执行复杂的工程任务,还能修复漏洞并负责整个项目的开发流程。然而,尽管AI在编写安全代码方面取得了进展,但人类的监督仍然至关重要。AI的兴起虽然还未能达到完全取代软件工程师的阶段,但它正在改变技术领域的面貌和未来的走向。
普林斯顿团队的这一开源AI程序员,不仅为软件工程领域带来了新的研究和应用前景,也为我们提供了一个关于人工智能与人类合作共创未来的思考机会。随着技术的不断进步,我们或许将见证AI在软件工程领域扮演更加重要的角色。