白交 报导自 凹非寺
量子位 | 公众号 QbitAI
李建国,蚂蚁集团CodeFuse的负责人,指出超过70%的代码问题无法单靠基础大模型来解决。他认为,在接下来的3到5年中,编程领域将发生巨变,约50%的编程工作将被人工智能取代,某些环节甚至会实现完全自动化。
目前,AI代码生成的市场正在快速增长,技术巨头纷纷入局,AI员工也不断被企业引入。最近,首位AI程序员Devin的造假事件引发了广泛关注。在这一波代码生成的浪潮中,李建国给出了他的独特见解。
李建国是谁?
他拥有清华大学的博士学位,致力于机器学习和深度学习研究已有十多年,发表的论文引用超过万次。在他的引领下,蚂蚁集团内部正在积极推广AI编程,现已超过50%的程序员每周使用CodeFuse。该工具的整体代码生成采纳率达到30%,在AI编程工具中处于领先地位,相比之下,Copilot的采纳率约为35%。
因此,无论是学术界的权威性,还是在产业中的实践代表性,李建国的观点备受重视。基于此,量子位与李建国博士进行了深入的讨论。
以下是他的核心观点:
- 代码编写在企业研发流程中的占比可能不足五分之一,甚至十分之一;
- 为了实现项目级需求,采用从原子级到端到端渐进发展的策略是可行的;
- AI程序员已成为企业运营的新常态,这一趋势不可逆转;
- 超过70%的代码问题单靠基础大模型无法解决;
- 当前自然语言编程处于L2.5阶段,未来3到4年有望达到L3或接近L4;
- 与前后端软件工程师相比,AI全栈工程师的需求更为迫切。
- 当前代码生成所面临的挑战包括:端到端生成能力、智能推理能力、复杂需求拆分、跨模态交互、安全性等。
代码编写在研发生命周期中占比极小
首先,程序员行业的历史并不悠久,约自20世纪50年代起至今,已有七八十年的发展。随着技术进步,编程工具不断演变,例如从打孔机到VI编辑器,再到集成开发环境和辅助编程工具,程序员的工作效率显著提高。
如今我们已进入大模型时代,相关模型与产品的更新迭代速度极快,竞争十分激烈。
对于个人开发者来说,AI编程工具的核心任务在于从需求到代码的闭环实现,例如Copilot等工具。他们更关注于如何高效满足需求。
但从企业的角度来看,提升整体研发流程的效率至关重要,除了考虑代码生成的安全性,测试构建、发布运维和数据分析等环节同样不可忽视。
我们期望构建一个研发智能体,甚至是一个智能总线(bus),能够与各个Agent交互并分发任务——涵盖架构设计、前端实现、后端开发、安全测试及功能测试,最终实现持续集成/持续部署(CICD)和运维自动化。
系统上线后,还应具备自动运维和用户访问量(UV)、页面浏览量(PV)等数据分析能力。
在整个研发过程中,代码编写所占的比例可能连五分之一或十分之一都不到。然而,如果能够有效连接各个环节,将大幅提升整体效率。
当前程序员面临的挑战在于,市场上许多产品往往只能解决原子级的能力——通过单一大模型只能完成30%的代码补全,无法处理更多复杂的代码问题,如跨库函数调用。
基于此,我们自去年9月份起开源了CodeFuse,并明确致力于构建全生命周期的代码大模型。
目前,我们已经发布了基础模型,并持续开发和开源相关仓库,覆盖需求设计、编程开发、测试构建、发布运维及数据洞察等多个方面,模型在modelscope和huggingface上的下载量已达到170万左右。
接下来,我们计划实现项目级需求,这将是创建全新系统的挑战。这对基础模型提出了更高的要求——
自然语言理解能力至少需达到GPT-4或GPT-4.5的水平。从现状来看,我们更倾向于采取一种渐进的发展模式。
我们的首个里程碑是解决仓库内及跨仓库的需求实现问题,包括API调用、服务调用和外部中间件版本更新问题。
如果能妥善处理这些问题,将解决上述70%问题中的大部分(例如20%),显著提升代码的采纳率,并增强用户满意度。
实现项目级需求的目标任重道远。我认为,代码基础模型与Agent技术需要同步快速发展,才能实现我们的愿景。
我们的思路相对保守,短期内国内在基础模型方面要达到GPT水平仍有困难。
大模型如何改变软件开发范式
AI程序员已成为企业运营的新常态,这一趋势无法阻挡。无论是像Devin的AI程序员,还是我们提到的全生命周期研发智能体,大模型正在大幅提升软件开发的效率。
过去当人们遇到不懂的问题时,可能会先在Google或百度上搜索,而现在,他们可以直接在代码中提问,迅速获得相对准确的答案,采纳后立刻使用。
这无疑是效率的巨大提升,象征着技术的进步。人们得以把更多精力投入到更具创造性的工作中去。
近期,CodeFuse发布了图生代码功能,用户只需在界面上简单画一个框,便能自动生成相应的代码。
曾经需要编写数百行代码的工作,如今只需一次点击和简单的绘图操作即可完成。
从产品设计的角度来看,实现无缝接入和良好的用户体验至关重要。
这意味着产品应该能够平滑地融入现有工作流程中,用户在使用时几乎察觉不到它的存在,从而极大提升用户体验,推动研发流程的创新与进步。
例如,我们内部每周有超过一万名活跃用户在使用智能代码生成,许多人甚至未意识到自己在使用CodeFuse。在日常的IDE插件与浏览器操作中,用户已经不知不觉地使用了我们的产品。
我们的目标是服务于整个研发的全生命周期。如果能够实现这一点,将是一次革命性的成功。
AI编程技术现状:L2.5阶段当前,代码生成技术似乎正处于一个与自动驾驶L2.5级别相似的阶段,许多企业都在这个水平上徘徊。例如,自动驾驶的L2.5级功能包括车道保持辅助、碰撞预警等,这些功能都是整体系统的重要组成部分。在大型模型的应用中,类似的辅助功能也逐渐出现,如代码解释、注释、简化和单元测试等。我们的未来目标是在特定的场景中达到L3级别的完全自动化,这一目标是可以实现的。以持续集成(CICD)为例,通过大型模型的支持,能够实现自动化操作,如检查触发、代码提交,甚至拉取请求(PR)的创建。然而,要实现全范围的自动化,前端技术仍需时间发展,复杂项目的需求拆解,特别是针对特定领域的解析,面临着挑战。我预计至少还需要3到5年的时间,在摩尔定律的推动下,整个社区以及我们的努力将促进这个过程。到那时,我们可以期待从现阶段迈向一个崭新的阶段——例如,从Copilot演变为co-worker,目前大约20%至30%的编程工作可以被替代,而未来这一比例有望提升至50%,甚至某些环节可能完全由自动化取代,开发者将能够投入更多精力于创造性工作。甚至有可能成为一个完全自主的智能体。尽管可能无法完全取代人类,但在未来3到5年内,达到L3或接近L4的水平是有可能的。就像自动驾驶技术一样,尽管这一概念已经提出多年,很多人声称已达L4级别,但实际上许多场景仍处于L2.5至L3之间。为了实现全面的自动化,人类仍需在其中发挥重要作用。因此,软件工程师的角色正在悄然改变。过去大家多专注于前端或后端的开发工作,而如今,对AI全栈工程师的需求日益增加。以前的全栈工程师通常指的是懂得前端、后端和数据的开发者,而现在这可能还需要具备一定的算法理解能力。随着大型模型的进步,前后端的工作将逐步受到其辅助,成为协作者(Co-worker),分担部分任务,从而使开发者能够将时间更多地用于提升新技能,比如深入理解产品、关注用户体验和算法创新等。经过深入研究,我发现在推动这一进程时仍面临不少挑战,主要集中在五个方面:端到端代码生成能力在基础模型层面,目前主要实现代码补全功能,但实际应用中,仅约30%的问题能够通过这种方式解决,其余70%则需要具备端到端代码生成能力,跨文件、跨代码库,甚至需要跨代码库与文档库的交互理解。所谓端到端,举个例子,对于一个代码库,我们需要能够直接调用库中的API,修复问题,甚至复用跨库的中间件能力。然而,单靠基础模型无法实现这些目标,我们还需探索更多的能力。Agent推理能力尽管最近Devin的演示视频被曝存在造假,引起广泛关注,但我认为它依然代表了一种趋势和技术流派——如何将定制工具调用与大型模型结合,实现整个工作流程的自动化。这个问题,尤其是在全生命周期的扩展上,实际上是相当复杂的,特别是面向云后端的研发环境,工具种类繁多。例如,针对前端应用,可能只有天气查询、火车票查询、酒店预订等十几个工具,但在云后端,可能有数百甚至上千的工具,每个工具都包含多个参数。此外,还面临需求拆解、跨模态交互、安全性和可靠性等挑战。尤其是代码的安全性和可靠性,像蚂蚁这样的企业级用户需要满足金融级别的高可用性和安全性要求,这也充满了挑战。不过,正因在金融级垂直场景的深耕及资源配置和历史经验的积累,蚂蚁也形成了自己的场景优势。首先,我们拥有覆盖整个生命周期各个环节的全方位团队,特别是在双十一等大促活动中的高可用性经验,这有助于推动全生命周期代码大模型的发展,这是我们与外部的主要区别之一。其次,我们在金融领域和前端领域都有一定的经验积累,尤其是在支付系统等对安全性要求极高的场景中。这些积累使我们在安全性、可靠性和可信度方面具有优势。虽然面临诸多挑战,前路漫长,但我相信,蚂蚁将与开源社区携手努力,借助摩尔定律的推动,在未来两三年内能够在一定程度上解决这些问题。再说一件事最后,面对当前大型模型的发展,李建国博士不禁感慨:我曾经专注于深度学习,那时竞争非常激烈,2019年之前我发现这个领域已经无法再卷动了,于是转向NLP,结果发现这个领域同样竞争激烈。但我不得不承认,大模型的发展再次点燃了NLP、视觉处理和代码生成等多个领域的热情,焕发出新的活力。在未来的发展方向上,李建国特别看好具身智能的进展,这将是未来5到10年的研究热点。具身智能将成为数字世界与物理世界之间的桥梁,能够感知并执行操作。这可能会带来类似于《黑客帝国》的场景巨大进步,甚至有可能像电影《终结者》中展示的那样,产生真正的飞跃。
Please specify source if reproduced蚂蚁李建国:AI编程即将突破,未来或可替代一半人类开发者! | AI工具导航
