全球首个 AI 程序员 Devin 的横空出世,可能成为软件和 AI 发展史上一个重要的节点。它掌握了全栈的技能,不仅可以写代码 debug,训模型,还可以去美国最大求职网站 Upwork 上抢单。 Devin 诞生之后,让码农纷纷恐慌。最近,微软同时也整出了一个 AI 程序员 ——AutoDev,能够自主生成、执行代码等任务。
与 Devin 这种极致追求效率和产出结果的方向有所不同。AutoDev 专为自主规划、执行复杂的软件工程任务而设计,还能维护 Docker 环境中的隐私和安全。
在此之前,微软已有主打产品 GitHub Copilot,帮助开发人员完成软件开发。
然而,包括 GitHub Copilot 在内的一些 AI 工具,并没有充分利用 IDE 中所有的潜在功能,比如构建、测试、执行代码、git 操作等。
基于聊天界面的要求,它们主要侧重于建议代码片段,以及文件操作。AutoDev 的诞生,就是为了填补这一空白。
论文地址:AutoDev: Automated AI-Driven Development
用户可以定义复杂的软件工程目标,AutoDev 会将这些目标分配给自主 AI 智能体来实现。
然后,这些 AI 智能体可以对代码库执行各种操作,包括文件编辑、检索、构建过程、执行、测试和 git 操作。
甚至,它们还能访问文件、编译器输出、构建和测试日志、静态分析工具等。
AutoDev 从以前许多在 AI 智能体领域的研究中汲取了灵感,比如 AutoGen—— 编排语言模型工作流并推进多个智能体之间的对话。
AutoDev 的能力超越了对话管理,使智能体能够直接与代码存储库交互,自动执行命令和操作,从而扩展了 AutoGen。
同样,AutoDev 的研究也借鉴了 Auto-GPT。这是一种用于自主任务执行的开源 AI 智能体,通过提供代码和 IDE 特定功能来支持执行复杂的软件工程任务。