国产AI程序员引领技术革新,开发应用从此一句话搞定

发表时间: 2024-06-21 19:36

作者 | 香草
编辑 | 李水青

还记得今年3月,轰动了整个科技圈的AI程序员Devin吗?现在,国内版Devin来了。

智东西6月21日报道,今日,阿里云推出首个基于通义大模型的“AI程序员”,可分钟级完成端到端应用开发,大幅提升研发效率,预计实现产能提升100倍。

▲阿里云在上海AI峰会上发布AI程序员(图源:阿里云)

该AI程序员构建了创新的多智能体(Agent)架构,由不同的智能体分别负责需求理解、任务拆解、代码编写、测试、问题修复、部署发布等软件开发任务并协同工作,一站式完成开发流程,具备架构师、开发工程师、测试工程师等多种岗位的技能。

发布会现场,阿里云演示了用对话形式,让AI程序员自主完成一款奥运赛事日程应用,从提需求到页面上线,全程仅花费10分钟。如果按照传统的开发方式,人类程序员至少需要半天才能完成。

▲AI程序员开发的应用截图(图源:阿里云)

阿里云的AI程序员与Devin相比有什么不同之处?和AI编码助手通义灵码有什么关系?它能完成什么样的开发任务,将如何提升程序开发效率?智东西与阿里云资深技术专家、通义灵码产品技术负责人神秀进行了深入交谈,试图解答这些问题。

一、端到端一站式开发,10分钟构建赛事日程应用

今年3月,来自硅谷的创业团队Cognition AI发布了全球首个AI程序员智能体Devin,号称是“世界上第一位完全自主的AI软件工程师”。相较之下,阿里云AI程序员有哪些差异之处?

神秀告诉智东西,在定义上,阿里云AI程序员与Devin是类似的,不同之处主要有三点:一是实现了端到端的效果,在开发全流程上实现了更高的完整度;二是交互上的优化,在开发过程中可以与人类程序员产生多次交互,生成的代码也可以二次编辑;三是在底层模型上,首次使用国产的通义模型体系,而非GPT-4等海外模型。

在上海AI峰会上,阿里云现场展示了AI程序员的能力。通过自然语言对话,AI程序员能全程自主完成理解需求、拆分任务、编写代码、识别并解决报错、运行代码等整个流程,仅用10分钟就能开发出一款奥运赛事日程应用。

▲AI程序员理解需求并编写代码(图源:阿里云)

如果按照传统的开发方式,程序员需要先后完成爬虫编写、网页开发、编写Python文件、处理程序以及运行、调试、修改代码等工作,至少需要半天时间才能完成。

与阿里云自己的AI辅助编程产品通义灵码相比,二者虽然都是基于大模型做编码,但表现形式完全不同。

产品形态上,通义灵码是IDE插件,而AI程序员可以理解为一个智能体,既可以用作IDE插件,也可以作为网页或软件单独使用。

在与人类交互方式上,通义灵码主要作为辅助工具完成单点需求,整体工作流程仍以人类为主,对人类工程师的工作过程没有太大改变;AI程序员则作为主体,人类程序员只需要输入需求、校验代码等。

底层技术上,二者有一脉相承的延续性,在AI程序员中会用到通义灵码的技术,通义灵码也会用到智能体相关技术,不过AI程序员是以智能体为主。

二、基于通义大模型的多智能体,三层技术创新挑战GPT-4

目前,阿里云的AI程序员仍处于早期预研阶段,能够完成一些简单的任务,比如自主去网上寻找工具、自我调试、测试迭代等。神秀称,用直观一点的方式来说,AI程序员还无法通过阿里云的面试。

AI程序员采用的底层模型是通义大模型,通过创新的多智能体架构,由不同的智能体分别负责需求理解、任务拆解、代码编写、测试、问题修复、部署发布等软件开发任务并协同工作,一站式完成开发流程。

基于多智能体协同架构,AI程序员可以结构化任务管理,由人类团队定义问题、拆解需求,实现任务快速分配;通过将复杂任务拆解成单个小的子任务,简化工作流程、提高开发灵活性和适应性,符合企业特点和需要;同时,每个智能体能够专注特定任务,可大幅提升系统工作效率。

例如,在编码智能体中,AI程序员首创了代码仓库知识图结构,不仅能理解用户的需求,还能精准定位代码对应的修改位置并自动给出修改方案,极大地简化了传统软件开发的过程。

当智东西问道,在开发AI程序员的过程中,遇到最大的技术挑战是什么?阿里云是如何克服的?

神秀谈道,在AI代码领域的主流榜单SWE-bench中,大部分公司都是用GPT-4、Llama 3、Claude 3等海外模型作为底座,而阿里云希望能让国产模型追上它们的表现并实现超越,这是团队需要攻坚的第一大挑战

▲AI代码领域榜单SWE-bench

具体来说,阿里云AI程序员主要有三个层面的技术创新:最上层,产品和工程团队通过创新的产品定义以及多智能体框架的研发,打造了全新的产品形态;在中间层,针对代码编写的真实场景,去组织数据、训练模型,进行垂直的定向优化;最底层,则是基础模型的迭代与更新。

神秀认为,GPT-4等并不是不可超越的,尤其是具体到代码编写这一垂直领域。未来阿里云将集中对AI程序员使用工具的能力、执行效率、成本、性能等方面进行优化,预计在7月会发布详细的指标和模型进展。

三、内部AI代码生成率已达26%,目标取代70%重复性工作

去年11月,阿里云发布AI编程助手通义灵码,目前每日辅助开发者生成代码超3000万次。而随着通义大模型技术的进步,AI程序员的出现让软件开发从通义灵码引领的“辅助驾驶”,逐步进入“自动驾驶”阶段。

今年4月2日,阿里云宣布内部正在全面推行AI编程,未来20%的代码将由通义灵码编写。

两个多月过去,这一目标实现了吗?

神秀告诉智东西,截至目前,阿里云内部已有26%的代码是由AI生成。随着模型能力的提升,这个数值未来还有很大的提升空间。他谈道,阿里云的愿景是让AI来代替开发工作中70%的重复性工作,让程序员有时间和精力集中在更复杂、更能创造价值的工作当中,例如算法的创新、技术的改进。

在编码生产力工具上,大模型产品有很多种形态出现,最简单的就是通义千问等通用AI助手,在此基础上进行定向优化就得到了通义灵码;而更高的定向能力需求,需要更多的产品形态来支撑,因此阿里云在通义灵码的基础上,推出了创新形态的AI程序员。

关于AI程序员是否会代替人类开发者的问题,阿里云也有自己的思考。

神秀称,虽然AI程序员是全流程、端到端的一站式产品,但它在工作过程中不会完全脱离人类控制。人类程序员做好需求定义、需求分解、复杂架构分解等工作,AI程序员作为“分身”,基于人类定义去做详细拆解、编码、知识获取等,最终项目的上线拍板仍由人类负责。

目前,通义灵码在综合人效的提升上达到10-15%,未来结合AI程序员,预计可以达到30-40%的水平。

从AI程序员产品的终态来看,神秀认为,“人机协同模式的改变”是大模型对软件研发带来最重要的变化,将是颠覆性的创新,可能会改变整个软件行业。

在实际落地过程中,产品形态也将一步步进行优化,阿里云认为其大致基于三种模式演进。

首先是LLM as Copilot,不改变软件工程专业分工,AI工具通过与人协同提升开发效率,解决单点事务性工作,像通义灵码一样,在IDE中完成一些简单的任务。

其次是LLM as Agent,AI智能体作为单一领域职能专家,自主使用工具完成预定任务,人类主要负责给定上下文,完成知识对齐这将独立于现有的工作流程。

最后是LLM as Multi-Agent,多个智能体可以相互协作完成复杂任务的开发,人类只需负责创意、纠偏和确认。在这个过程中,测试人员、开发人员之间的协同关系可能会发生变化。阿里云此次推出的AI程序员就属于这一形态。

就像大模型的出现带来了提示词工程师等新的工种,在神秀看来,AI程序员也可能带来现有工作岗位的职责转换或是全新的岗位。例如,未来项目经理、产品经理也可以和AI程序员打交道完成任务,工程师则有可能向产品经理去转型,而不是去做琐碎的编码,二者之间的边界会变得模糊。

通过此次发布,阿里云也希望能引起业界对AI程序员这一方向的思考:AI程序员怎么去读懂原来的代码?如何对现有的代码进行改造,成让AI程序员更好理解?未来是否会出现专门面向AI的编程框架?

阿里云内部提出了“AI原生研发范式”,针对AI时代的研发流程进行思考。

阿里云通义大模型业务负责人徐栋谈道:“软件应用的开发范式正在发生改变,未来用户只需定义问题、提出需求,分钟级完成一个应用开发将成为常态。通过AI编程助手和AI程序员的加持,每一位人类程序员都将成为超级个体。”

结语:产品仍处于早期阶段,预计半年内落地应用

阿里云推出首个AI程序员产品,展现了其对AI编程的愿景——未来每个企业都会有虚拟AI员工加入,带来新质生产力。目前,该产品仍在初期阶段,暂未达到生产级可用和实现规模化的落地应用。

神秀谈道,之所以选择在早期就发布产品,主要有三个层面的考虑:

首先,让企业看到真实的AI程序员与人类交互的模式,引发其对未来发展远景的思考,当颠覆性的技术出现时,能随着技术发展及时进行组织变化调整。

其次,通过Demo的发布,让企业和开发者了解AI程序员技术最新的进展,后续阿里云也将详细解读产品底层技术。

最后,初期的产品仍有很大的提升空间,阿里云希望更多的企业和开发者能参与到产品共创当中,为AI程序员提出优化建议。

据透露,阿里云AI程序员将在未来几个月内推出内测版本,并预计在半年内正式落地应用,我们期待看到这一虚拟的AI助手为企业和开发者注入新质生产力。