AI编程助手发展建议与展望分析

AI编程助手发展建议与展望分析

最佳答案 匿名用户编辑于2024/07/05 08:53

建设可进化的培训体系,缩短开发者上手到熟练使用 AI 编程助手的时间。

1.建议:不要等待,行动起来,完美是优秀的敌人

生成式 AI 是自互联网以来最具影响力的技术进步,相关技术的爆发使得大量组织进入市场并产生持续性的投入。进入 2024 年,可以看到炒作正在逐渐消退,一个更加实用的阶段已经开始。Gartner 预测,到 2028 年,在 2023 年采用 AI 编程助手的企业,其开发者团队的生产力的年度复合提升幅度将达到至少 36%44。 现在是尝试 AI 编程助手的最佳时机,如果你还没有行动,那么你已经落后了。不要追求完美主义,通过积极的探索来推动自身组织的进步。更何况,在使用AI 编程代码助手方面,开发者已经比他们的企业雇主跑得更快,当他们无法访问企业批准的版本时,就会使用未经批准的版本来完成工作,这反而会平添一些不可控的风险45。为了更快的迎合技术发展趋势,利用好 AI 编程助手带来的技术优势,加速业务发展,企业的CIO 及软件开发团队应该采取以下行动:

捕捉完整的可发展的 AI 编程助手价值体系,构建衡量收益的关键指标来评估收益。节省时间是 AI 编程助手带来的价值之一,而非全部,要合理预估AI 代码助手可节省的时间,使企业内的利益相关者的期望保持在合理水平。其次,实施全面的价值分析,量化企业可实现的回报,构建一个多元衡量指标组成的收益量化体系,并设计实际操作的试点来衡量 AI 编程助手所带来的影响。而非一味地听取和接受厂商所宣扬的收益,避免被“忽悠”。除时间节省和成本削减之外,扩大分析范围,充分衡量生产力的提升、软件质量提高、改善人员体验改善和产品上市速度加快的实际效果。最后,不要承诺减少开发者人员,这种狭隘的视角无法充分体现 AI 代码助手的价值,反而会在无形中让开发者心生厌恶,导致 AI 编程助手作为新的生产力工具得不到积极的响应,平添部署阻碍。在启动 AI 编程助手项目时,让企业内部的利益相关⽅明确地认识到此类开发不会取代 58 开发者,而是提⾼其能⼒。

 建立一个跨职能团队,从评估阶段到企业推广,识别和降低 AI 编程助手相关的风险。团队成员不仅仅是 AI 专家和业务负责人,还要包括众多职能部门的专家,如法务、安全风险、风控合规、HR 以及拥有足够话语权的高级管理人员。该团队的关键责任就是在部署 AI 编程助手之前,以及在使用过程中,总结、定位甚至穷尽潜在的风险,包括准确性、信息时效性、模型幻觉、透明度、安全和数据、道德合规等一系列风险;与此同时,该团队还应监控生成的输出,以防出现偏差、露骨材料和其他道德挑战。该团队需要打造一个可执行的框架,基于该框架将这些风险映射到相应的缓解措施之上,使风险可预防、可控制并能够可解决。当然,这个团队的设立也不仅仅是为了AI 编程助手,更宏观的则是为了应对生成式 AI 爆发的时代。

创建一支小型、高技术素养的生成式 AI 代码小队,来支撑 AI 编程助手的扩大化部署。在 AI 编程助手的部署初期,企业内部的开发者团队将会呈现不同的适应度,无论是使用的成熟度还是内心接受程度,还包括对新鲜事物的兴趣度,不同的开发者将会呈现不同的状态。在部署一定时间之后,遴选并组建一支由熟练掌握 AI 编程助手,拥有开放好学心态的开发者组成的平台团队,总结他们的使用经验,开发和发布提示工程(Prompt Engineering)模式和最佳实践,将其及时的发布和共享给整个软件开发团队,从而实现提示工程的质量一致性。通过发挥“精英小组”的积极性,形成可参考复制的最佳样本,进而带动其余开发者的兴趣,拉齐经验不足开发者的使用效果,扩大AI 编程助手在企业内部的应用范围,并保证其收益也是正向增长的。

 建设可进化的培训体系,缩短开发者上手到熟练使用 AI 编程助手的时间。随着企业普遍采用 AI 编程助手来提高开发人员的生产力、丰富其开发经验,CIO 或软件开发领导者必须帮助开发人员掌握相关技能,发挥此类技术的潜在优势。虽然企业非常欢迎和期待使用生成式 AI,但是大部分企业开发者并没有做好准备。Gartner 关于软件工程领域采用生成式 AI 的 IT 领导者投票中,60%的 IT 领导者表示其团队并不具备所需的技能46。帮助团队掌握所需的 GenAI 技能,是软件工程领导者当前的重要任务。但是,仓促无效的培训只会降低 AI 编程助手的投资回报。向开发人员提供自助学习资料,开通在线的自学平台,内容要包括教程和最佳实践,以及对 AI 编程助手价值的深度阐释资料。将已掌握使用 AI 编程助手的资深开发者认证为企业内部的导师,由他们提供周期性的分享与培训,验证所需 AI 编程助手技能对实现业务目标的益处。在开发者团队中尝试发展讨论小组或社区,促进开发人员之间的交流与学习,在企业内部开展结对编程(Pair Programming)、黑客松(Hackathon)、创新冲刺(Innovation Sprints)等活动,在企业内部推动社会化和体验式学习,帮助开发者团队掌握和提升 AI 编程助手技能。

 将 AI 编程助手厂商发展成为你的成长伙伴,而非单纯的签署合同的技术供应商。不可否认的是,生成式 AI 技术依然在高速发展进化当中,相关的生态体系也在不断波动,当前拥有优势的 AI 编程助手更多的体现在其先发优势,并未构建不可逾越的能力壁垒,技术本身将会呈现不断突破,功能不断完善甚至出现惊喜的局面。这意味着当你采购和部署了某一款 AI 编程助手,可能会很快发现市场上出现新的能力更强的替代品。积极关注 AI 编程助手的技术发展创新,让自己的眼界跟上时代发展步伐,还要积极的与AI 编程助手厂商探索更加多元化深入的合作关系,不能再是单纯的甲乙方关系,一起探索生成式 AI 应用的实践与创新,让厂商成为你在生成式 AI 时代的伙伴,通过一系列的互动形式,如技术交流、战略合作甚至是共同研发等,一起捕捉生成式AI 带来的价值。

2.展望:从 Copilot 到 Agent,迈向AGI 彼岸

AI 编程助手的发展基本是由伴大模型技术进化所驱动的,加强 AI 编程助手的“副驾驶(Copilot)”能力,并在未来逐渐演进实现“代理(Agent)”形态。整个演进过程,除了大模型本身的技术以外,也让很多系统工程能力成为了必要部分。基于预训练语言大模型,通过继续训练和数据微调,得到代码大模型,同时针对落地需要,还需要解决RAG、工具使用等能力,以及代码执行等问题。如何完善相关的技术能力,进而让整个演进顺利且符合开发者的需求是 AI 编程助手未来发展的核心。

当前,AI 编程助手更多扮演着“副驾驶(Copilot)”的角色,与以前的类似系统(如确定性聊天机器人)相比,已经体现出适应性更强,可以处理更复杂的任务。然而,它依然需要人来的监督,依赖开发者清晰明确的提示词才能更好的发挥作用。这背后的主要技术原因,是大模型依然无法实现在极少人为监督的情况下的自主行动能力,以及在复杂的实际环境中适应和成功执行任务的能力。

一项研究正在尝试探讨极致的“副驾驶”能力,到 2023 年,AI 编程助手将会进化成HyperAssistant(超级助手),能够为开发者提供全方面的支持47。HyperAssistant 通过自动的支持和优化开发者的工作环境而积极影响他们的心理健康,如及时提醒开发者需要休息,或者通过个性化视觉元素来优化 IDE 环境;提供先进的错误检测和错误修复功能,以及高质量的代码优化,即使是复杂的软件系统;重塑开发者之间的互动,完全集成到企业的软件开发全流程,辅助所有开发者,促进所有开发者之间的交流,如在企业代码库发现类似实践给出建议等等。

无论是厂商,还是作为用户的开发者,都愿意看到 AI 编程助手进化到AI Agent 的形态。AI Agent 不仅能够对话,还具备反思和规划能力,能够为了完成任务目标而自主调用相关的工具,并且智能体与智能体之间也能协同配合一起完成相关任务。这对于开发者的影响将会是彻底颠覆性的。 AI Agent 可以缩小当前生成式 AI 与 AGI 愿景之间的距离。AI Agent 是自主或半自主的人工智能系统,在数字或物理环境中感知、决策、采取行动并实现目标,具有自动执行任务、做出明智决策以及与周围环境进行智能互动的能力,因此有可能彻底改变各行各业和各种环境。AI Agent 的核心是由控制端、感知端、行动端三部分组成,基于此不断与环境交互并获得反馈48。AI Agent 可以配置在任何数字化环境中运行。虽然不能草率的去说 AI Agent 是实现 AGI 的唯一途径,毕竟技术的发展是多元和不确定的,但是从某种层面来看,AI Agent 无疑是当前生成式 AI 继续升级发展的关键方向之一。

 

以商汤日日新·代码小浣熊为例,其一直致力于发展代码智能体,不断加强任务理解和规划调度的能力,以及让自身的代码大模型学会使用工具。外围系统帮助大模型,按照预期来调用这些工作,反馈给大模型进行后续的工作。AI Agent 对于代码大模型的能力要求,提升了很多,除了代码编写能力,还需要模型在意图理解、指令遵从上十分优秀, 63 需要在训练过程中,就接入沙盒环境,对运行结果,报错信息等有深刻理解,能够顺利进行反思和自我修正。

除此之外,多智能体系统(Multi-Agent System,MAS)也得到了技术关注49。MAS是一种人工智能系统,由多个独立、互动的代理组成,每个代理都能感知环境并采取行动。多个代理可以朝着一个共同的目标努力,而这个目标超出了单个代理的能力范围。多个代理的联合应用可以解决单个代理无法完成的复杂任务,同时创造出适应性更强、可扩展性更高和更稳健的解决方案。对于 AI 编程助手而言,自身将会作为开发智能体而成为更广泛的多智能体系统的一部分,全面赋能开发者的所有日常工作,这样的愿景也会逐渐到来。

另外,完全自主代理(Autonomous Agent)的概念也逐渐兴起,并将其作为最终实现 AGI 的前景广阔的方法50。自主代理是自我管理的人工智能系统,执行领域限定的任务,并表现出三个基本特征:自主性(在没有外部协助的情况下自主执行自己的决策和任务);学习性(根据经验、不断变化的条件或目标修改自己的行为和内部操作);代理性(对自己的内部状态和目的有感知,从而指导自己如何学习、学习什么,并使自己能够独立行动),虽然自主代理的概念还处于非常新型的阶段,但是其正在成为一种重要趋势,因为它们能够实现传统人工智能技术无法达到的业务适应性、灵活性和敏捷性水平。在运行环境不可预测、实时监控不现实的情况下,自主代理的灵活性非常宝贵。

已经开始有厂商推出了自主代理(Autonomous Agent)的 AI 编程助手,宣称不仅掌握了全栈技能,还可以自主学习相关技术,自主端到端的部署应用程序、修改错误代,甚至自主训练和微调模型51。虽然后续得到了很多质疑,但是至少体现了业界所期待的AI 编程助手未来的发展方向。 “这是最好的时代,也是最坏的时代”。大模型、生成式 AI 带来的技术颠覆远未停止,任何大胆的畅想在当前都属于可以理性讨论的预测。AI 编程助手的影响也在不断地进化,无论其产品形态如何改变,其宗旨依然是服务于开发者,解放和发展生产力,其价值体现则是进一步推进各个企业的数字化转型,改变这个世界。

参考报告REPORT

2024采用AI编程助手发展新质生产力白皮书.pdf

2024采用AI编程助手发展新质生产力白皮书。遵循KRE理论架构的AI编程助手凭借强科技属性成为开发者应该掌握的新质生产力工具,企业通过AI编程助手可以实现全面的高质量发展。AI编程助手能够解放开发者,释放更高效率的生产力,不仅可以持续推动企业的数字化转型,并且可以贡献额外的经济效益。对于企业缺少开发者人才、消弭高质量软件应用开发的障碍等挑战,AI编程助手均可以有效解决。遵循KRE(知识-推理-执行)理论架构使得AI编程助手可以伴随大模型、生成式AI等技术的发展而进化,具备世界知识、理性思维和互动能力,不断满足生产力发展需求。

我来回答
分享至