弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

刚刚,OpenAI 又玩出了一个新高度。

只输入自然语句,AI 就自动做了个小游戏!

划重点:不! 用! 你! 编! 程!

来,感受一下这个 feel。

第一步,“小人儿”搞里头,输入一句话就能让它按照方向键左右移动:

Now make it controllable with the left and right arrow keys.

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

AI 在理解了需求之后,自动编程,然后小人儿就真的可以左右移动了。

第二步,“石头”搞里头,同样输入一句话,让它“从天而降”:

Now have it fall from the sky, and wrap around.

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

第三步,用自然语言简单再制定些规则,若小人儿被石头砸中则终止游戏。

Constantly check if the person and the boulder overlap at all, and if so, you lose.

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

最后还让 AI 生成结束提示,其中要包括一句鼓励人的话。

AI 挑中的是“Try Again!”

当然,还有规则更复杂的小游戏(例如增加计分等功能),也可以用同样的方式,分分钟生成:

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

这是魔法吧!现在开发小游戏都靠“打字”了?!

围观直播的观众们,也是发出了同样的感慨,瞧瞧这满屏止不住的弹幕:

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

有网友甚至直呼道:

编程,已经变成 AI 自己的游戏了。

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

这就是 OpenAI 重磅发布的新品 ——Codex,一个能自己编程的 AI。

AI 编程这事并不新鲜了,像 GitHub 前不久闹得风风火火的 Copilot,就是其中一个。

但它背后的技术,其实还是来自于 OpenAI。

然而这一次,OpenAI 给自己的能力升了个级,来了个新版本。

不仅如此,搞一个小游戏,仅仅是 Codex 能力的冰山一角罢了。

一起感受一下它更多惊艳的表现吧。

不用打字,直接语音命令它!

给 AI 打字“提需求”,还是略显麻烦了一些。

能不能直接说话下达命令呢?

这个还真可以有!

OpenAI 这次与微软合作出了一个 Word 插件,便带了这种语音控制的功能。

直接对着 AI 下命令“把每行开头的空格去掉”,AI 通过微软给的接口一顿操作,成功执行:

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

啪的一下,全文就左对齐了有木有。

而且 AI 还精准地理解了命令的含义,那些段与段之间的空行并没有改动。

来再复杂一点的。

给 AI 下达“每数到五行就加粗”命令,也是能轻松 hold 得住:

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

这种把任务吩咐下去,就有“人”给你完成的感觉,是不是很像老员工指挥实习生?

总之呢,是比罗永浩前几年发布的 TNT 系统语音办公要强上那么“亿”点点了。

除了官方的演示,这次内测用户 aniakubow,还让 AI 表演了通过 152 字描述生成一个网页。

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

可以看出这里 Codex 是用 Javascript 操作 Document 对象来生成网页,可能是训练集里没有直接的 HTML 代码的缘故吧。

最后,除了现场演示外,OpenAI 还在 Arxiv 上发布了 Codex 的论文预印版。

论文中,Codex 要面对的挑战甚至有刷 IOI 和 ACM 难度的竞赛题!

Codex 用对每道题生成 1000 种答案这种暴力方法,能做出 600 多道竞赛题测试集中的 3.23%,并且通过全部的测试用例。

这个编程题目测试集是 UC 伯克利研究人员在 5 月份刚刚做好的。

当时测试的 GPT-2、GPT-3 和开源的 GPT-Neo 可是在竞赛难度上全军覆没,一道都没做出来。

没想到短短两个多月,专为代码而生的 Codex 就为前辈们洗刷了耻辱。

Codex 的“魔法”,是如何实现的?

这么炫酷的能力,莫非还是像 GPT-3 一样堆数据,大力出奇迹吗?

不全是,这次 Codex 最大的一个版本是 120 亿参数,比起 GPT-3 的 1750 亿还是小了很多。

要了解具体情况,还要从它的开发历程说起。

最早,OpenAI 研究人员拿 GPT-3 做各种试验,发现 GPT-3 能从 Python 注释中生成一些简单的代码。

这可把他们高兴坏了,因为 GPT-3 根本没特意拿代码训练过,只是看过一些博客和帖子中零星的代码片段。

想想 GPT-3 在自然语言上的出色表现,要是专门训练一个代码版的 GPT-3,那肯定也能再次震惊业界。

于是,他们找到了 GitHub,这个拥有最多开源代码的“小伙伴”来合作。

一开始是拿到了 179G 的 Python 代码,但其中不乏存在一些篇幅太长的,以及明显是自动生成的那种。

在剔除掉这些“不达标”的代码后,最后留下的代码大小为 159G。

接下来当然是做预训练,把这些代码都喂给 AI (Codex)。

不过这里有一个问题:

GitHub 上的开源代码难免会有 Bug,AI 学了一堆有问题的代码可咋办?

其实这倒也好说,预训练之后不是还要微调嘛。

微调的时候,全用编程竞赛里的正确答案,以及 PyPI 里的靠谱开源代码就可以了。

最后,120 亿参数版的 Codex,能对 28.81% 的问题给出正确答案。

这个准确率超过之前的开源代码预训练模型 GPT-Neo 和 GPT-J,还有基于 GPT-2 的代码补全工具 TabNine。

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

这个成绩虽然不错,不过离能实际应用还是有点远了。

不过,这也难不住 OpenAI 的研究团队。

他们很快便想到了“突破口”:

人类编程的时候,不也经常先出一个版本,然后反复修改 bug 嘛~

那就让 AI 像人一样反复修改,改出 100 个版本来,从中总能挑出几个正确的来。

用上这种拿“量”堆出来的方法,Codex 的最终成绩是:

77.5%!

强,但不完全强

Codex 令人惊艳的表现,一度让网友们大呼:

要失业了要失业了!

有人直接在公屏上打出:再见了,计算机专业的学子们。

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

不过大家也不必如此担心,因为在演示过程中,其实就出现了翻车的情况。

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

在输入“Say Hello World with empathy”后,Codex 给出的结果居然还是“Hello World with empathy”。

这也侧面说明了 Codex 现在还不是完美的。

OpenAI 就表示:

即便是参数达到 120 亿的 Codex 12B,它的能力可能也还不如一位编程刚刚入门的学生。

虽然 Codex 学习上亿行代码,但它更大程度是“记住了”这些代码,并不是真正意义上的懂编程语言。

而且 Codex 对长字符串的理解也比较困难。

并且随着字符数量的增加,Codex 的性能表现下降得非常明显。

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

在这种情况下,Codex 就不能很好地理解用户的意图,结果可想而知,给出的代码可能就是完全错误的了。

此外,在理解变量和运算较多的注释时,Codex 也会犯错:

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

在这个例子中,120 亿参数版的 Codex,忘记了对变量 w 做减法,也没有返回所有数字的乘积。

这些对于还在学习编程的新手程序员而言,非常不友好。

而且由于生成的代码准确性和正确性都还不能保证,因此在安全问题上也存在一定风险。

不仅如此,OpenAI 还表示,Codex 会生成带有种族歧视的内容。

在社会层面上,OpenAI 还提出 Codex 的出现或许会冲击程序员的就业;如果被滥用,还有网络犯罪方面的隐患。

最后还有一点,就是环境方面的问题。

毕竟它作为大模型,参数量的规模不容小觑。

要不是合作方微软 Azure 云买了足够多的碳排放限度,Codex 可能还不能和我们见面呢(手动狗头)。

如果想要试玩的话,OpenAI 还准备了一个 Python 编程大赛,在这场比赛中 Codex 会作为你的搭档和你一同解题。

弹幕炸了:OpenAI 直播大秀语音指挥 AI 自动编程

比赛将于北京时间 8 月 13 日凌晨一点开始,就是这时间对国内不太友好。

大赛报名地址:

https://openai.com/blog/openai-codex/

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/74350.html

(0)
上一篇 2021年8月12日
下一篇 2021年8月12日

相关推荐

发表回复

登录后才能评论