当前位置: 首页 » 资讯 » 人工智能 » 正文

阿里云「通义灵码」迎来重磅升级,「AI 程序员」正式亮相!

IP属地 北京 编辑:朱天宇 InfoQ 时间:2024-09-21 14:32:59

作者 | 付秋伟

最近两年,随着大语言模型和生成式 AI 技术的爆火,软件开发领域首当其冲成为了最热门的大模型应用场景之一,GitHub Copilot、通义灵码等 AI 辅助编程工具纷纷问世。这些工具通过自然语言处理和机器学习技术,能够理解开发者的意图,并且提供行级 / 函数级代码、单元测试和代码注释的智能生成等功能,极大地提高了开发者的编码效率和代码质量。

以通义灵码为例,数据显示,过去一年通义灵码插件下载量超 500 万,每日辅助开发者生成代码超 3000 万次,累计生成代码超 10 亿行, 已被广泛应用于金融、制造、互联网、交通、汽车、能源等行业,成为国内最受欢迎的辅助编程工具。

随着大模型的持续进化,在语义理解、代码生成、开发工作流等方面的能力也获得了持续、全面的提升,辅助编程工具有没有可能像汽车的自动驾驶一样,只需要自然语言交互,就能实现“自动编程”呢?

此次云栖大会上,阿里云给出了它的答案——通义灵码「AI 程序员」。

9 月 19 日,2024 云栖大会在杭州拉开帷幕。会上,阿里云宣布「通义灵码」重磅升级,从「辅助编程」工具,进化到能自主执行任务拆解、代码编写、缺陷修复、测试等任务的「AI 程序员」,最快分钟级完成从 0 到 1 的应用开发,提升数十倍开发效率。

据介绍,「AI 程序员」是基于通义大模型的 AI 智能体,可以自主执行任务拆解、代码编写、缺陷修复、测试等编程相关任务。相比于编程助手,「AI 程序员」可以脱离 IDE 软件,像真人程序员一样执行缺陷修改、需求分析、代码实现、问题排查等任务工作流,同时具备架构师、开发工程师、测试工程师等多种岗位技能,最快可分钟级完成应用开发。

交互层面,由于「AI 程序员」是基于通义大模型构建的多智能体,每个智能体能够分别负责具体的软件开发任务并互相协作,用户只需要参与“需求输入”、“确认计划”、“确认实现”三个步骤,即可完成一个端到端的产品功能研发。

‍例如,当系统出现 BUG 时,开发者只需要将问题链接丢给「AI 程序员」,它就能自动读取问题,进行代码库拉取、问题分析等动作,并基于分析结果生成解决计划。同时,凭借着首创的代码仓库知识图结构,「AI 程序员」不仅能理解用户的需求,还能精准定位代码对应的修改位置并自动给出修改方案。开发者可以直接查看「AI 程序员」定位的代码文件进行勘误或者给出优化建议,促使「AI 程序员」进行代码调优,确认无误后再点击执行代码变更。另外,「AI 程序员」还会贴心地生成代码合并请求标题及表述,只需要开发者最后确认提交即可。

除了“缺陷自动修复”功能,当开发者有新的开发需求时,同样可以将需求描述给「AI 程序员」并选择模板,AI 程序员能够自动分析需求、制定方案,之后开发者就可以像跟 Chatbot 沟通一样去提出优化建议,直至方案完美落地。

此外,「AI 程序员」跟「编码助手」一样,支持“研发问答”功能,该功能基于海量研发文档、产品文档、通用研发知识、阿里云的云服务文档和 SDK/OpenAPI 文档等进行问答训练,能够高效、准确地帮助开发者答疑解惑。

当然,尽管通义灵码「AI 编码助手」和「AI 程序员」都是基于千问大模型而开发的智能编码工具,但表现形式上有所不同。

首先是产品形态上,「AI 编码助手」主要是以 IDE 插件的形式存在于各类开发工具中,而「AI 程序员」除了可以是 IDE 插件,还能以网页或软件的形式单独使用;其次是交互方式上,「AI 编码助手」主要是辅助性质,帮助开发者解决单点开发问题,而「AI 程序员」则更像是一个具备独立开发能力的开发者,用户只需要以自然语言输入需求并做一定的代码校验工作,即可自动完成开发任务。

阿里云表示,得益于通义灵码「AI 编码助手」过去一年沉淀的大量的技术、模型能力,「AI 程序员」具备更智慧、更高效、更敏捷的特性。同时,基于 「AI 程序员」、「智能编码助手」、DevOps 工具云效等工具链,阿里云能够为开发者提供研发增效的联合解决方案。

对于普通开发者而言,「AI 程序员」的出现能够更进一步地助力研发提效、解放双手,让开发者能够更聚焦于更有价值、更有创造力的开发工作中去,大量简单、重复、高频的日常开发、运维等工作将由「AI 程序员」去完成,开发者此时只需要扮演“安全员”的角色做节点性管控即可。

对于初学者或者非专业人士而言,「AI 程序员」则进一步帮他们降低了开发应用的门槛。云栖大会现场,一位 13 岁的中学生在通义灵码上输入几句话,2 分钟就生成了一个 python 语言编写的倒计时网页;现场还有参会者,用通义灵码修改开源魂斗罗游戏代码,在 9 个代码文件 2000 多行代码里,几分钟就精准修改了游戏角色的生命值、跳跃高度等参数(详细 Demo 演示附在文末)。

主论坛现场,阿里云智能集团 CTO 周靖人宣布 Qwen2.5 全新升级,为用户提供全尺寸模型的选择,灵活权衡模型精度与成本。据介绍,Qwen2.5 的预训练数据量超 18 万亿 token,数学和代码能力大幅提升,支持 128k 输入 8k 输出,可以快速生成万字长文,prompt 稳定性、指令遵循能力也获得了持续增强等。这些能力的提升也将大幅增强通义灵码「编程助手」和「AI 程序员」的能力。

“通义灵码正在不断地整合「AI 程序员」的能力,希望能够帮助程序员完成日常功能的开发,更有效地提升工作效率。”周靖人表示。

其实,从今年 3 月海外初创公司 Cognition 发布的“全球首个 AI 工程师——Devin”,到阿里云通义灵码「AI 程序员」的推出,都预示着软件开发正在逐步从 Co-Pilot 走向 Auto-Pilot 的时代。在 Auto-Pilot 模式下,AI 将拥有更高的自主性,能够独立完成更复杂的编程任务,从需求分析到代码实现,甚至问题排查和修复,都可能在无需人类干预的情况下完成。这一转变不仅会带来软件开发效率的极大提升,也可能引发开发者角色和技能要求的变革。

未来,人类与 AI 的协同工作将成为软件开发的常态,开发者可能需要更多地专注于架构设计、创新算法开发和 AI 系统的管理与优化,从传统的编码工作转向更高层次的创造性或技术领导类工作。对于开发者而言,这既是机遇,也是挑战。如何快速适应这一变化,不断提升自己的技术能力和创新思维,并学会利用 AI 的力量更好地改变世界,是值得当下所有开发者思考的问题。当然,阿里云通义灵码「AI 程序员」或许是一个快速了解未来工作方式并上手实践的不错路径。

DEM‍1:13 岁中学生现场用通义灵码编写倒计时网页

DEMO 2:通义灵码“魔改”开源游戏《魂斗罗》

* 本视频仅做「AI 程序员」的交互展示,不鼓励游戏开挂。

免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其内容真实性、完整性不作任何保证或承诺。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。