全新开源AI代码工具诞生!超越谷歌DeepMind旗下AlphaCode

news2024/9/24 7:16:08

听说,谷歌DeepMind开发出的AlphaCode,和上个月刚刚由Gemini推出的AlphaCode 2两位“老大哥”被超越了

没错,全新开源人工智能代码生成工具AlphaCodium,诞生了!

其开发不得不说受到了两位老大哥的启发,但令人惊喜的是,AlphaCodium现在已经“青出于蓝胜于蓝”,甚至在本周致使X(Twitter)处于混乱和激动的情绪当中。

AlphaCodium是前所未有的最好的代码生成方法,正如上文所说,它已经凌驾于AlphaCode和新AlphaCode2之上,且需要调整的地方少之又少。说不定它的诞生离让AI比人类能够生成更好的代码这一愿望又近了一步。

OpenAI的Andrej Karpathy曾在特斯拉担任人工智能总监,他强调了AlphaCodium在改善代码生成方面用到的 “流程引擎(一种迭代式代码编码法)”的方法。

听起来有点复杂,意思就是“从朴素提示转变而来”,即:答案范式转向流程范式,在这种范式中,答案是迭代构建的

为了提高LLM在特定代码问题上的性能,AlphaCode的“流程引擎”重新引入了GAN架构(由Ian Goodfellow于2014年开发)的元素,包括一个生成代码的模型以及一个通过测试、反射和规格匹配提供代码完整性的对抗模型。这一操作挣脱了只使用思维链提示工程的局限性。

下面我们来大概看看流程图是如何执行的。

从输入开始,接下来再是一系列预处理步骤。AlphaCodium在这些步骤中思考问题并最终得出第一个代码解决方案。下一步,它会生成一些额外的测试来帮助完善解决方案,并最终得出实际可行的最终版本。

CodiumAI开发AlphaCodium的故事

总部位于特拉维夫的初创公司CodiumAI开发了AlphaCodium,并在CodeContests数据集上进行了测试,该数据集包含约10000个竞争性编程问题。

据该公司网站介绍,CodiumAI的使命是“让开发人员能够更快地构建零错误程序”。它在CodeContests基准测试中的表现也证明,其性能将GPT-4的准确率从19%提高到44%。根据CodiumAI的说法,这一结果不仅仅是数字上的提高,更多是LLMs在代码生成方面能力的飞跃,为该领域树立了新的标杆。

CodiumAI成立于2022年,于2023年3月筹集了1060万美元。CodiumAI分享了AlphaCodium GitHub知识库和一篇附带论文《Code Generation with AlphaCodium: From Prompt Engineering to Flow Engineering》。

CodiumAI联合创始人兼首席执行官Itamar Friedman在接受VentureBeat采访时表示,AlphaCodium迄今为止引起的关注是出乎他意料的,但他补充说,这同样是一个突破,可以帮助整个开发者社区——他强调AlphaCodium不仅仅是一个模型,而是一个系统和算法,可以实现代码生成模型和“CRITIC”模型之间的交流。

这才是最核心的创新——重要的是要把它看作一种流动和迭代,这就是为什么我们称之为“‘flow engineering”。这种流程使人工智能不仅可以生成样板代码,还可以生成有效且准确的代码。

OpenAI VS 谷歌DeepMind,最大的人工智能编码竞争

Friedman指出,他认为开发了Codex的OpenAI和开发了AlphaCode、AlphaCode 2的谷歌DeepMind是CodiumAI在编码竞争中的强大对手,但话又说回来,最大的竞争对手还是代码完整性技术本身。

Friedman认为DeepMind带给他们很大的启发,在他与OpenAI首席执行官Sam Altman的谈话中,也提了代码完整性的重要性。

Friedman和Sam有非常高的一致性,他们都认为代码完整性不仅对下一代代码构建超级重要,而且对人工智能一致性也超级重要。AlphaCodium实际上是为了提供“下一代”代码的完整性。这或许会体现在,达到预想规范、获取文化活动类文献、达成个人信仰和其他准则。

Friedman表示,谷歌DeepMind在其AlphaGo解决方案中包括了流程引擎的一些方面,但在AlphaCode中没有。他认为可能是因为这种想法不属于“只是单纯地需要一个更好的LLM”这一所谓主流叙事的一部分。

Friedman认为,人工智能不生成工作代码的原因不是因为需要更好的LLM,而是因为我们需要流量。

最后,还是希望能够看到在不断的更新换代中,AlphaCodium能带给我们更多的惊喜。

参考资料

 [1]https://venturebeat.com/ai/new-open-source-ai-coding-tool-surpasses-its-inspiration-google-deepminds-alphacode

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1420845.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL行格式原理深度解析

MySQL中的行格式(Row Format)是指存储在数据库表中的数据的物理格式。它决定了数据是如何在磁盘上存储的,以及如何在查询时被读取和解析的。MySQL支持多种行格式,每种格式都有其特定的优点和适用场景。 提升编程效率的利器: 解析…

vector(顺序表)

vector容器就相当于一个顺序表&#xff0c;只不过他把一些功能分装到了容器里 常用接口及语法 构造&#xff1a;vectro<数据类型> 对象名 输出&#xff1a;和顺序表一样我们需要遍历打印&#xff0c;而不能直接用cout打印 对象.push_back () 尾插 对象.pop_back() 尾删…

3款最好用的tron钱包解读:TronLink,Ledger,Bitget钱包

电子钱包是用户连接到区块链网络的重要媒介。除了接收和发送功能外&#xff0c;它还可用于传输虚拟货币。它也是使用分散应用程序&#xff08;DApp&#xff09;的必要工具&#xff01;无论您是想在ON上使用以太坊&#xff0c;EOS还是任何DApp&#xff0c;您都必须先拥有钱包。因…

springboot2.7继承swagger knif4j

maven pom依赖 <dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-openapi2-spring-boot-starter</artifactId><version>4.4.0</version></dependency> yml配置 knife4j:enable: trueopenapi:title: …

C++ 入门(二)— 基础知识

文章目录 语句和程序的结构对象和变量变量赋值和初始化cout、cin 和 endl 语句和程序的结构 语句 语句是迄今为止 C 程序中最常见的指令类型。这是因为它们是 C 语言中最小的独立计算单元。在这方面&#xff0c;它们的行为很像自然语言中的句子。 C 中的大多数&#xff08;但…

在Windows11的WSL上运行Llama2-7b-chat 上

最近在玩大模型&#xff0c;玩了ChatGLM3感觉不过瘾&#xff0c;又去玩了Llama2&#xff08;在Windows上简直难的离谱&#xff09;&#xff0c;下边我讲为大家讲一下我的心路历程。 心路历程 第一天&#xff1a;GLM那么简单&#xff0c;有手就行啊&#xff0c;最近Llama2开源…

Android中下载 HAXM 报错 Intel® HAXM installation failed,如何解决?

最近在搭建 Flutter 环境&#xff0c;但是在 Android Studio 中安装 Virtual Device 时&#xff0c;出现了一个 问题 Intel HAXM installation failed. To install Intel HAXM follow the instructions found at: https://github.com/intel/haxm/wiki/Installation-Instructio…

ES6.8.6 Java客户端发起 增删改查 query (bool)、update、delete

文章目录 环境测试数据增单个新增批量新增 删通过delete by api删除通过delete by query api删除删除索引中指定字段&#xff08;script&#xff09; 改单个修改update by api通过_bulk批量修改批量修改update by query api使用script脚本修改 查完全匹配&#xff08;term&…

Linux:进程信号

文章目录 信号的概念实践信号关于前台和后台进程的操作 操作系统与外设信号的产生 前面的篇章结束了信号量的话题&#xff0c;那么接下来引入的是信号的话题&#xff0c;信号和信号量之间没有任何关系&#xff0c;只是名字比较像 信号的概念 在生活中存在各种各样的信号&…

【游戏服务器部署】幻兽帕鲁服务器一键部署保姆级教程,游戏私服还是自己搭建的香

在帕鲁的世界&#xff0c;你可以选择与神奇的生物「帕鲁」一同享受悠闲的生活&#xff0c;也可以投身于与偷猎者进行生死搏斗的冒险。帕鲁可以进行战斗、繁殖、协助你做农活&#xff0c;也可以为你在工厂工作。你也可以将它们进行售卖&#xff0c;或肢解后食用。—幻兽帕鲁 想要…

【Linux】压缩脚本、报警脚本

一、压缩搅拌 要求&#xff1a; 写一个脚本&#xff0c;完成如下功能 传递一个参数给脚本&#xff0c;此参数为gzip、bzip2或者xz三者之一&#xff1b; (1) 如果参数1的值为gzip&#xff0c;则使用tar和gzip归档压缩/etc目录至/backups目录中&#xff0c;并命名为/backups/etc…

【新书推荐】4.1节 数值编码规则

本节内容&#xff1a;不同进制数据的编码规则。 ■数值数据的编码规则&#xff1a;二进制数、十六进制数和十进制数&#xff0c;以及无符号整数和有符合整数的编码规则。 ■基本数据类型&#xff1a;编译器指定的数据类型为基本数据类型。汇编器MASM5.0指定的基本数据类型有BYT…

HubSpot社交媒体影响力怎么样?

HubSpot是一家在数字营销和销售领域非常知名的公司&#xff0c;以其全面的营销、销售和客户服务软件而闻名。然而&#xff0c;关于HubSpot在社交媒体上的具体影响力&#xff0c;这是一个动态的情况&#xff0c;因为社交媒体的影响力可能受到多种因素的影响&#xff0c;包括社交…

yarn 现代的包管理工具 介绍

一、前言 yarn 是一个现代的包管理工具&#xff0c;它是 npm&#xff08;Node Package Manager&#xff09;的一个替代品。yarn 由 Facebook 开发&#xff0c;并在 2016 年发布。它解决了当时 npm 的一些问题&#xff0c;尤其是在性能和安全性方面。 yarn 主要用于以下几个方面…

利用操作符解题的精彩瞬间(上)

下面是链接为了解释练习2的并且还有与操作符相关的知识。 C语言与操作符相关的经典例题-CSDN博客 操作符详解&#xff08;上&#xff09;-CSDN博客 操作符详解&#xff08;下&#xff09;-CSDN博客 目录 练习1&#xff1a;在一个整型数组中&#xff0c;只有一个数字出现一…

SpringCloud微服务常见问题

1 微服务 返回面试宝典 问题1 SpringCloud常见组件有哪些&#xff1f; SpringCloud包含的组件很多&#xff0c;有很多功能是重复的&#xff0c;其中最常见的组件包括&#xff1a; 注册中心组件&#xff1a;Eureka、Nacos等&#xff1b;负载均衡组件&#xff1a;Ribbon&…

面试题 02.07. 链表相交(力扣LeetCode)

文章目录 面试题 02.07. 链表相交题目描述解题思路c代码优化后c代码 面试题 02.07. 链表相交 题目描述 给你两个单链表的头节点 headA 和 headB &#xff0c;请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点&#xff0c;返回 null 。 图示两个链表在节点 c1 …

【Linux】—— 信号的产生

本期&#xff0c;我们今天要将的是信号的第二个知识&#xff0c;即信号的产生。 目录 &#xff08;一&#xff09;通过终端按键产生信号 &#xff08;二&#xff09;调用系统函数向进程发信号 &#xff08;三&#xff09;由软件条件产生信号 &#xff08;四&#xff09;硬件…

【学习笔记】Vue3源码解析:第一部分-实现vue3环境搭建

课程地址&#xff1a;【已完结】全网最详细Vue3源码解析&#xff01;&#xff08;一行行带你手写Vue3源码&#xff09; 第一部分&#xff1a;实现vue3环境搭建&#xff08;对应课程的第1-3节&#xff09; VUE2与VUE3的对比&#xff1a; 也即vue2的痛点&#xff1a; 对TypeSc…

vue3前端开发框架的安全特性,非常适合现在的市场需求

vue3前端开发框架的安全特性,非常适合现在的市场需求&#xff01;现在几乎所有的前端开发&#xff0c;都是使用的vue3做了开发。下面给大家展示一下。为什么说vue3框架自带安全特性呢。 如图&#xff0c;这个是我们在浏览器内看见的&#xff0c;渲染后的数据页面信息。很齐全。…