来源:OpenAI
编辑:小匀Priscilla
刚刚,OpenAI发布Codex的改进版本,将把API以私有测试版的形式发布。Codex是可以将自然语言转换为代码的AI系统,也就是那个为GitHubCopilot提供「马达」的模型。口头命令令AI生成代码的时代到来了。
OpenAI再次惊艳这个圈儿!
只要你对这个AI发号施令,它就会将英语翻译成代码。
比如:
addthisimageofarocketship
随后,你的双手离开键盘,AI会自动编程,这张火箭照片就被添加进来了:
给它点难度:当火箭被点击时,它的速度会x4
这就是OpenAI发布的一种新机器学习工具——Codex,可以将英语翻译成代码。
哦对了,Codex也正是为GitHubCopilot提供动力的模型。
刚刚,OpenAI发布了Codex的改进版本,API以私有测试版的形式发布出来,可以将自然语言转换为代码的AI系统。
从GPT-3到DALL·E,不久前大热的Copilot(背后也依赖OpenAI的技术),OpenAI这是要彻底「砸了」程序员的饭碗吗?
然而,OpenAI的CTO和联合创始人GregBrockman则表示:「它消除了程序员繁琐的工作。」
看看它还有哪些惊人功能?
开发小游戏,准确率高达72%!
Codex不仅能够收到指令后自行编程,还能够开发个小游戏。
除了打字输入指令,Codex还能接受语音指令。
复制的文字有很多空格,手动删除太费时间怎么办?
问题不大,OpenAI和微软合作出了一个Word插件。
一声令下,AI就能完成任务。
「啪,每行开头的空格消失了!」
执行力不错,那准确率呢?
研究人员用APPS数据集来测量不同语言模型的编码挑战能力。
APPS含有次训练和次代码问题的测试。
测试结果显示,亿参数版的Codex能够对28.81%的问题给出正确答案。
准确率远远超过「前浪」GPT-Neo和GPT-J。
经过不断修正,最终Codex-12B的准确率提升到了72.31%!
GregBrockman表示,编程有两个部分:
一、认真思考一个问题并试图理解它
二、将这些小片段映射到现有的代码中,不管它是一个库、一个函数还是一个API。
Codex的目的是让编码员在第一部分上花费更多时间,而不是第二部分。
毕竟,大量的代码都是在重复或直接抄袭别人之前所做的事情。
当然,它可以是创造性的,但没有人会在做基本的事情时发挥他们的想象力,比如部署一个网络服务器来测试一点代码。
比如部署Web服务器来测试一些代码。布罗克曼用一条简单的线做到了这一点——「创建一个说明这一点的网页」。
利用Codex,一秒钟后,就有十几行JavaScript以完全标准的方式做了这件事。
优点很多,局限性也不少
上面说了Codex不少优点,可以帮助用户使用新的代码库,减少上下文切换。
还可以让非程序员编写规范的代码。
但OpenAI也承认,Codex还有许多不足之处。
首先,Codex的训练样本效率不高。
它的训练集上有数十亿行代码,包括来自GitHub的Python代码。
数十亿行代码。
多有经验的开发人员也不会遇到这么多代码啊!
但就算有这么多行代码的训练,计算机科学的学生可能比Codex-12B更能解决问题。
比如Codex演示人员下了一个指令:SayHelloWorldwithempathy
「读书。」「书。」
出来的结果把演示人员都给整笑了。
除此之外,OpenAI很实诚地在论文的预印本中指出Codex的其它缺点:
过度依赖生成的输出。
生成一些乍一看正确但其实是错误的代码。
因为互联网上的训练集或多或少带有种族歧视,经过训练后的Codex也会带有偏见。
Codex的出现会对程序员的就业市场产生冲击。
大规模参数量还会产生大量碳足迹。
目前OpenAICodex还处于私测阶段,后续会继续扩大规模。
希望Codex的到来能够让编程变得更加高效。
参考资料: