Google推出以Gemini模型为基础的AlphaCode 2编程助手

站长云网 2023-12-06 5iter.com 站长云网

与Gemini生成式人工智能模型一起,Google今天上午发布了AlphaCode2,它是GoogleDeepMind实验室大约一年前推出的代码生成AlphaCode的改进版。AlphaCode2实际上是由双子座模型(Gemini)驱动的,或者至少是它的某个变种(GeminiPro)在编程竞赛数据的基础上进行了微调。Google表示,至少在一项基准测试中,AlphaCode2的性能远远超过了它的前身。

据Google公司称,在Codeforces(一个编程竞赛平台)主办的编程竞赛子集中,AlphaCode2(使用Python、Java、C++和Go等语言编码)的平均表现优于约85%的竞争对手。相比之下,前代AlphaCode在同一子集上的平均成绩仅为50%。

"我们选取了最近举行的12场有8000多人参加的竞赛,这些竞赛要么来自第二组,要么来自难度更大的'1+2'组。这使得我们总共解决了77个问题,"AlphaCode2的技术白皮书中写道。"AlphaCode2能在10次尝试内解决43%的问题,接近原版AlphaCode(25%)的两倍。

AlphaCode2可以理解涉及"复杂"数学和计算机科学理论的编程难题。DeepMind研究科学家雷米-勒布隆德(RémiLeblond)在一段预先录制的视频中解释说,除其他相当复杂的技术外,AlphaCode2还能进行动态编程。

AlphaCode2不仅知道何时正确实施这一策略,还知道在哪里使用它。Leblond说,AlphaCode2不仅知道何时正确实施这一策略,还知道在什么情况下使用这一策略。考虑到需要动态编程的编程问题是最初的AlphaCode的一大绊脚石,这一点值得注意。

Leblond说:"[AlphaCode2]需要显示一定程度的理解、一定程度的推理和代码解决方案的设计,然后才能实际执行,解决[一个]编码问题。它能在从未见过的问题上完成所有这些工作"。

AlphaCode2解决问题的方法是,首先利用"策略模型"系列,为每个问题生成大量代码样本。不符合问题描述的代码样本会被过滤掉,而聚类算法会将"语义相似的代码样本"分组,以避免任何冗余。最后,AlphaCode2中的评分模型会从10个最大的代码样本"集群"中各选出一个最佳候选者,这就是AlphaCode2对问题的答案。

现在,所有人工智能模型都有缺陷,AlphaCode2也不例外。根据白皮书,AlphaCode2需要大量的试验和错误,规模化运作的成本太高,而且在很大程度上依赖于能够过滤掉明显不好的代码样本。白皮书推测,迁移到功能更强的Gemini版本(如GeminiUltra)可能会缓解部分问题。

DeepMind产品副总裁伊莱-柯林斯(EliCollins)在一次简报中暗示了这种可能性。

柯林斯说:"最新结果中最让我兴奋的一点是,当程序员与[由Gemini提供支持的AlphaCode2]协作时,通过定义代码所遵循的某些属性,[模型的]性能会变得更好。未来,我们将看到程序员利用高能力的人工智能模型作为协作工具,协助从推理问题到协助实施的整个软件开发过程。"

责任编辑:站长云网