AI自己写代码让智能体进化!OpenAI的大模型有“人类思想”那味了

金磊梦晨发自凹非寺
量子位|公众号QbitAI
搞事情!
AI“看”了一眼GitHub上人类都是怎么提交更新(commit)的 , 然后就模仿人类程序员修改代码……
最终 , 这个AI还成功“调教”出了个智能体机器人:
AI自己写代码让智能体进化!OpenAI的大模型有“人类思想”那味了
文章图片
没开玩笑 , 这种细思极恐的事情 , 在OpenAI最新发布的一项研究中 , 就真真的发生了……
AI自己写代码让智能体进化!OpenAI的大模型有“人类思想”那味了
文章图片
原本呢 , 研究人员要解决的是一个遗传程序设计(GP)问题——让一个智能体机器人学会移动 。
(GP是演化计算中的一个特殊领域 , 它主要针对自动构建程序去独立解决问题 。 )
但OpenAI剑走偏锋 , 把自家的大规模语言模型(LLM)放了进来 , 结果就是一个大大的“万万没想到” 。
以前在智能体演进的过程中 , 人类研究员是需要参与进来做一些细节调整、确定演进方向等工作 , 让智能体往好的方向发展 。
现在好了 , 这些活儿都让大模型给包揽了 , 自己学、自己写代码、自己去“调教”:
AI自己写代码让智能体进化!OpenAI的大模型有“人类思想”那味了
文章图片
这事一经论文一作JoelLehman在网络曝光 , 瞬间引发了网友们的大量关注:
AI自己写代码让智能体进化!OpenAI的大模型有“人类思想”那味了
文章图片
一位程序员网友在看完后直呼“跟不上(技术)发展的步伐”了:
AI自己写代码让智能体进化!OpenAI的大模型有“人类思想”那味了
文章图片
甚至OpenAI自己都在研究中说:
弥合了进化算法在人类思想水平运行的鸿沟 。
那么这件“魔幻”的事情 , AI到底是怎么办到的?
看一眼GitHub , AI自己动手敲代码在虚拟环境中设计可移动的机器人 , 是遗传算法研究中很火的一个项目 。
特别是Sodarace竞赛因为需要的计算量少 , 过程方便可视化很受欢迎 。
AI自己写代码让智能体进化!OpenAI的大模型有“人类思想”那味了
文章图片
规则很简单 , 由“关节”和“肌肉”组成的机器人在各种地形上赛跑 。
OpenAI还特意把整个竞赛程序从专用的遗传编码改写成了Python版本 , 为了展示新方法对现代编程语言的通用性 。
比如这样一段Python代码 , 就可以作为初始种子机器人 。
AI自己写代码让智能体进化!OpenAI的大模型有“人类思想”那味了
文章图片
定义好一个正方形的四个顶点关节、终点关节 , 相互之间都用“肌肉”连接好后 , 结果如下 。
AI自己写代码让智能体进化!OpenAI的大模型有“人类思想”那味了
文章图片
不过这样方方正正的结构一动都不能动 , 接下来就需要靠遗传算法对代码做修改 。
研究团队认为 , 用传统遗传算法修改代码VS人类程序员自己动手 , 在效率上还有两点差距:
一个是软件越来越复杂 , 人类可以搞模块化的代码复用来应对 , 而目前最先进的遗传算法也无法在人类使用的编程语言上做到这一点 。
另一个是几乎所有遗传算法靠的都是随机突变(mutation) , 而人类程序员每一次修改代码都带有目的 , 或者是增加功能、或者是改进效率、又或者是修复bug 。
那么有没有办法让AI学习到人类是如何修改代码的呢?
还真有 , 所需的训练数据都存在GitHub上 。
优秀的程序员每次提交代码都会写好commit描述 , 说清楚这一次提交修改了什么内容 。
AI自己写代码让智能体进化!OpenAI的大模型有“人类思想”那味了