本文来源于阿里云社区电子书《AIGC+软件开发新范式》
微调工程师岗位可能并不存在,但使用 AI 编码工具已经成为刚需
智能编码工具的快速普及是否会带来全新的编程模式?“大力出奇迹”的规律还将继续适用吗?本文节选自 QCon 北京特别策划圆桌节目,内容摘自阿里云通义灵码产品技术负责人陈鑫在圆桌对话里的精彩回答。全文见:Sora 很难跟进?微调就不是一个岗位?大力出奇迹将继续适用?大模型将对软件生态带来哪些变化?
观点 1:
智能编码工具将被更加广泛的应用,甚至出现全新的编程模式。不擅长利用大模型来辅助代码开发的程序员未来一段时间将被淘汰。
陈鑫(神秀):去年,ChatGPT 火了以后,我们立即开始着手利用大模型技术进行代码智能生成方向的工作。在此之前,我们已经有些探索,我们团队大约在 2021 年开始尝试代码工具的研发。起初,我有些悲观,因为我觉得以现在的投入,无论是在数据、算法还是人才方面,都无法超过当时 GitHub 的投入。随着大语言模型的火热,我们意识到这个方向的商业化价值以及给开发者带来的价值都是巨大的。因此,去年年初,通义灵码就成为通义系列大模型产品家族的一员。
通义灵码是一款基于通义大模型的智能编码助手,提供自然语言生成代码、单元测试生成、代码优化、注释生成、智能问答等能力,
通义灵码上线 4 个月,目前下载量已经超过 130 万,在国内 AI 编码工具领域使用率第一。但是,从最开始的产品发布、到现在灵码的产品能力获得用户的一致好评,这中间我们经历了非常多的困难。
最开始,我们尝试了基于开源模型,然后基于通义的基础模型进行训练,这其中挑战与机遇并存。一方面,我们感觉与 GithubCopilot 的差距在逐步缩小,但我们也非常担心出现 Sora 这种情况,即突然有一个全新的架构或算法来颠覆我们之前的努力。另一方面,从国内接受度来看,最近一些媒体包括我们自己也进行了广泛调研,发现开发者对 AI 编码工具的接受度非常高,甚至有报道称 80% 到 90% 的开发者都在采用相关工具,这就意味着这种生产力工具对开发者的价值是实实在在的。
代码智能生成工具可能是业内最成功的大模型相关应用之一。我们现在跟很多客户接触,客户也觉得在基础模型的落地上需要探索很多场景,解决方案的复杂度很高,而代码模型的门槛非常低。我们发现大模型代码生成在 IDE 编码场景下非常适合当前的技术现状,因为不仅用户的接受度高,而且特别适合当前的技术现状。我认为它在这个领域的成功可能是必然。
我们最近访谈了很多企业,发现一些先驱型企业已经在思考如何使他们的代码框架和研发模式适应 AI。这可能是许多人未曾思考过的问题,如今 AI 对代码的理解方式还存在一定局限性,但我们可以通过一些调整让 AI 生成的准确率更高。
我们最近访谈的一个客户,他们的做法是让高级工程师用自然语言编写伪代码,然后将其定义好的数据和接口与自然语言注释一起交给大模型生成代码。然后初级工程师对其进行修正,这样提高了研发效率,也提升了高级工程师的价值。初级工程师的效率也得到了提升,整体上提升了专业性,不再是一个人从头到尾完成。这种方式避免了重复工作和精力浪费,企业未来可能会考虑采用所谓的
AI 原生(AI Native)研发模式。
国外一些项目已经尝试使用自然语言框架,按照 AI 理解的方式生成代码,大模型帮助生成整个工程的代码,生成的代码既有注释又有代码,这样如果出现变更,大模型可以很容易理解它自己生成的代码,形成良性循环。我认为这可能会在一年内实现,随着基础模型能力和理解力的提升以及 AI 原生编程框架的发展,可能会出现全新的代码编写模式。
观点 2:
开放模型拥有广阔的前景,大模型未来的竞争很可能是流量入口之争、是生态之争。而谷歌是否会将 Gemma 开放模型融入 Android 和 Chrome 生态是值得期待的。
陈鑫(神秀):在模型开源方面,阿里云做了很多工作,包括开源了 7B、14B 等模型,前几个月还开源了 72B 和 72B 模型的 1.5 版本。我们内部也是通过外面媒体得知有新版本的消息,之后才进行模型的升级。我觉得阿里云在开源领域非常用心,特别是在通义团队这边。
开源模型对企业,尤其是中大型企业的整体业务能力构建起到了关键作用。有了开源版本,企业可以以较低的成本进行实验,而不必花费大量资金购买商业化模型。企业可以先利用开源模型做一些实验,并结合一些 Prompt 的调优,就可以得到比较好的结果。
从我对企业的观察来看,开源对大模型产业的推进非常关键。我担忧现在模型参数量的增加会带来更大的算力需求。虽然开源模型的参数量越来越大,但企业面临的最大难题仍然是缺乏足够的算力。即使是 2B 模型的训练成本也很高,而现在很多企业甚至连推理资源都买不到,更别说进行训练了。企业需要考虑在公共云上构建训练,而不是自建。很多企业过去可能不考虑上公共云,但是现在这个问题可能会长期存在。企业需要权衡自建和使用公共云的成本,并考虑自建是否会导致错过竞争优势。
虽然现在各个厂商都在推动开源,但是将开源的价值真正落到企业的生产效益中仍然面临许多挑战。但我相信各个厂家已经意识到了这一点,并且可能会在未来几个月推出更多的芯片,希望能够解决企业面临的算力问题,包括云上算力的问题,希望我们能够尽快度过这个难关。
观点 3:
简单的标注被 AI 取代,复杂标注对“人”的要求越来越高。
陈鑫(神秀):这个话题我们非常感同身受,因为代码大模型的质量与高质量数据息息相关。提升模型本身的能力主要依赖于高质量数据,而代码领域又是一个专业的领域。过去几个月,我们花费了大量时间和资深专家去处理数据,只有将数据处理到足够好,才能获得更好的调优结果。
代码优化是一项艰巨的任务。我们需要确定有问题的代码,解决 bug 后优化的代码,优化的原因可能是风格问题、内存泄漏或安全性问题等。数据收集、处理和分析是关键,对下游任务的影响很大。我们在调整大模型以准确预测开发者行为和生成期望结果的过程中,需要处理大量数据,包括各种语言的语法分析、切分和数据构造等。预训练过程中可能会发现数据处理中的 bug,导致生成代码中出现语法错误或不合适的情况,需要返回修正。这一工作量较大且需要资深专家。
刚开始的阶段,人们可能认为数据标注不需要大量人工,会考虑使用 AI 代替,但随着深入了解,发现这些看似容易的事情实际上还是需要专家去做。未来,有经验的程序员可能会投入更多时间到企业内部的数据标注和处理,并训练企业专属的代码模型,以生成符合企业规范要求的代码。
GitHub Copilot 过去一直未推出企业个性化套件,直到最近才推出了类似于私有化模型的训练方法,通义灵码的个性化套件也将在 4 月份上线。我们预测接下来的趋势是,各个企业的员工可能都在尝试使用 AI 工具进行编码,随后各公司可能需要专人投入到数据处理和标注,以训练企业私有模型。
对于专家和工程师来说,尤其是那些曾经从事代码框架、中间件、规范、基础 SDK 和 API 开发的人,他们首先会将这些内容编写出来,然后将这些内容融入到大模型中,以便所有人都能从代码生成中受益,这是未来各企业需要考虑的重要问题。
《AIGC+软件开发新范式》--03.微调工程师岗位可能并不存在, 但使用 AI 编码工具已经成为刚需(2):https://developer.aliyun.com/article/1537626