本文来源于阿里云社区电子书《AIGC+软件开发新范式》
《AIGC+软件开发新范式》--02.谈谈我对 AIGC 趋势下软件工程重塑的理解(2):https://developer.aliyun.com/article/1537676
比如在代码评审场景,可以实现智能化的推荐评审人、描述和标题生成、摘要生成、大评审拆
分、代码检测、修复方案的生成以及冲突的自动修复。相当于有一个 AI 评审员,帮助完成了很多复杂的授信工作,而人类进行最终的确认就可以了。
也可以进行智能的分层测试,基于需求自动生成手工用例,自动的生成接口测试,生成单元测试,做代码评审,这些都可以做。然后像图上蓝色部分,我们也有一些技术方案可以在现阶段大模型的技术基础上落地。
我们也可以做智能化的平台工程。比如说我们有一些场景:K8s yaml 的辅助编写,CICD 的编排辅助,构建错误排查,部署过程排错,异常代码定位和运维知识问答。最终去实现配置编排→CICD→部署过程观测→异常排查,整个 CICD 主链路的智能化改造,我们把它叫做智能的平台工程,这些点我们都可以在现阶段进行落地了。
最后一个是智能的研发问答,我们可以实现统一的问答入口,将企业的知识跟大模型结合在一起,以后所有的工程师首先会想到在这个入口去问各种各样的知识,然后获得实时的答案。以及可以做代码的文档搜索,不管是文档还是代码都可以问,甚至可以让它在这里帮我生成业务代码,包括自然语言的操作、个人的智能助理,这些都是马上可以落地的一些场景。
最终,我们就在企业内部形成了这三重结构。最上层就是应用层,也就是研发工具应用和服务,它其实是一个以大模型为核心的工具和服务。中间层是模型层,我们要构建一个核心的企业个性化的大脑。最后还要有技术和算力,现在阿里云在公共云上提供了非常强大的 GPU 算力,未来我们可以直接上云来享受这一部分的 AI 给大家带来的技术红利。
最后我们认为在大模型时代,要坚守以下这四个原则。
第一是要以数据为先,高质量的数据输入会让大模型越来越聪明。所以对企业而言,未来非常大的工作量就是梳理研发资产。比如代码资产、文档资产等,首先要对它们进行梳理,识别出哪些是优质的,哪些是不优质的。然后将最优质的部分过滤出来,输入给大模型进行相关的知识沉淀,这些知识它就不会消失了,也不会形成负载,而是顺利地去赋能新员工或者其他的角色,实现相关的效能提升。
第二要坚持以人为本,AI 并不是来替代人的,而是让人更加专注于自身擅长的业务和技术创新。所以企业应用了 AI 工具以后,企业的创造力会越来越强,跑得越来越快,这是我们认为最重要的。而且现阶段 AI 是没办法替代人类的,它只能解决人类目前的一些事务性工作。
第三是安全合规,这个是我们非常重视的。尤其是通义灵码构建的时候,特别注重代码的隐私安全。对企业来讲,应用大模型的时候也要充分考虑这一点。
第四我们希望是持续收益。大家不要希望今天引入大模型的智能化软件开发工具链后,就可以实现质的提升,现在的产品还没有发展到这个程度,而且技术还有相应的瓶颈。所以我们可以采用 Landing、Growth、Expanding 三步走的方式,持续的对接大模型相关的效能红利。
四 . 软件研发智能化工具的落地
前面给大家介绍了企业落地 AI 智能研发的相关路径。现在我们再进一步来看,当下有哪些事情可以做。在这里推荐每个企业都应该去应用智能编码工具,通义灵码就是其中非常优秀的代表。
现在给大家介绍一下通义灵码。通义灵码是我们去年在云栖大会上重磅发布的一款基于代码大模型的新一代智能编码助手,这个工具主要有以下两大部分的能力。
我们可以在左侧的这个框里进行随意的问答。比如让大模型帮我生成一个算法,解答各种各样的智能的问题,研发的一些问题它可以瞬间找出相关的答案,再通过多轮会话的方式去纠正它。右侧就是编辑框,可以在里面输入中文的一些注释,或者输入代码,这时候由大模型去预测我即将写什么代码,并且给我相关的答案,如果我觉得 OK 就可以采纳。通过这样的方式我们可以和大模型进行配合,相当于它是一个助手,不断地猜我想要什么,从而提升写代码的效率。
通义灵码主要包含三大核心功能:
第一个是代码智能生成。可以进行行级、函数级的自动续写、单元测试生成、自然语言生成代码、代码注释生成等。
第二个功能是研发智能问答。研发领域的自由问答、异常报错智能排查、代码的优化建议等等,这些都是可以做的。
第三个功能是企业个性化能力。刚刚讲了 Growth 阶段其实就是需要构建一个企业私有的研发大模型,我们可以在这里面实现代码和文档的检索增强以及专属模型的微调训练,通过这样的方式去构建企业的个性化能力。