宁德生活圈

网站首页 信息互动 > 正文

OpenAI可以使用其新的机器学习软件Codex将英语翻译成代码

2021-08-11 11:27:42 信息互动 来源:
导读 人工智能研究公司 OpenAI 正在发布一种新的机器学习工具,可以将英语翻译成代码。该软件名为 Codex,旨在加快专业程序员的工作,并帮助

人工智能研究公司 OpenAI 正在发布一种新的机器学习工具,可以将英语翻译成代码。该软件名为 Codex,旨在加快专业程序员的工作,并帮助业余爱好者开始编码。

在 Codex 的演示中,OpenAI 展示了该软件如何使用自然语言构建简单的网站和基本游戏,以及如何在不同的编程语言之间进行翻译并处理数据科学查询。用户在软件中输入英文命令,比如“创建一个侧面有菜单、顶部有标题的网页”,Codex 将其翻译成代码。该软件远非万无一失,需要一定的耐心才能操作,但在使编码更快、更易于访问方面可以证明是无价的。

“它需要那些已经是程序员的人并消除了繁重的工作。”

“我们将其视为增加程序员的工具,”OpenAI 的 CTO 兼联合创始人 Greg Brockman 告诉The Verge。“编程有两个部分:你必须'认真思考一个问题并尝试理解它',以及'将这些小片段映射到现有代码,无论是库、函数还是 API。'”第二部分他说,这很乏味,但这是 Codex 最擅长的。“它需要那些已经是程序员的人并消除了繁重的工作。”

OpenAI 使用早期版本的 Codex为 GitHub构建了一个名为Copilot的工具,这是一个由微软拥有的代码存储库,它本身就是OpenAI的亲密合作伙伴。Copilot 类似于 Gmail 中的自动完成工具,提供有关如何在用户键入时完成代码行的建议。不过,OpenAI 的新版 Codex 更加先进和灵活,不仅可以完成代码,还可以创建代码。

Codex 建立在 OpenAI 的语言生成模型GPT-3 之上,该模型在大量互联网上进行了训练,因此可以以令人印象深刻的方式生成和解析书面文字。用户发现 GPT-3 的一个应用程序是生成代码,但 Codex 改进了其前辈的能力,并专门针对从网络上抓取的开源代码存储库进行了培训。

后一点导致许多程序员抱怨 OpenAI从他们的工作中不公平地获利。例如,OpenAI 的 Copilot 工具通常会建议其他人编写的代码片段,并且该程序的整个知识库最终源自开源工作,共享以造福个人而非公司。同样的批评可能会针对 Codex,尽管 OpenAI 表示其对这些数据的使用在合理使用下受到法律保护。

“真正的净效应是生态系统的很多价值”

当被问及这些抱怨时,布罗克曼回答说:“新技术即将到来,我们确实需要这场辩论,而且我们会做一些社区有重要观点的事情,我们将接受反馈并以不同的方式做事。” 不过,他认为,更广泛的编码社区最终将从 OpenAI 的工作中受益。“真正的净效应是生态系统的很多价值,”布罗克曼说。“归根结底,我认为这些类型的技术可以重塑我们的经济,并为我们所有人创造一个更美好的世界。”

Codex 也肯定会为 OpenAI 及其投资者创造价值。尽管该公司于 2015 年以非营利实验室的身份起步,但为了吸引外部资金,它在 2019 年转为“利润上限”模式,尽管 Codex 最初是作为免费 API 发布的,但 OpenAI 将在未来的某个时候开始对访问收费未来。

OpenAI 表示它不想使用 Codex 构建自己的工具,因为它更适合改进核心模型。“我们意识到,如果我们追求其中任何一条,我们就会切断我们的任何其他路线,”布罗克曼说。“作为一家初创公司,你可以选择最擅长一件事。对我们来说,毫无疑问,这正在为所有这些模型制作更好的版本。”

CODEX 实际上喜欢使用什么?

当然,虽然 Codex 听起来非常令人兴奋,但在真正的程序员掌握它之前很难判断它的全部功能。我自己不是编码员,但我确实看到了 Codex 的运行情况,并且对该软件有一些想法。

OpenAI 的 Brockman 和 Codex 负责人 Wojciech Zaremba 在线向我演示了该程序,使用 Codex 首先创建了一个简单的网站,然后是一个基本的游戏。在游戏演示中,布罗克曼在谷歌图片上找到了一个人的剪影,然后告诉 Codex 在粘贴 URL 之前“从页面添加这个人的图像”。剪影出现在屏幕上,然后布罗克曼修改了它的大小(“让这个人变大了一点”),然后让它可以控制(“现在可以用左右箭头键控制它”)。

这一切都非常顺利。人影开始在屏幕上晃来晃去,但我们很快就遇到了一个问题:它一直在屏幕外消失。为了阻止这种情况,布罗克曼给了计算机一个额外的指令:“不断检查这个人是否离开了页面,如果是,就把它放回页面上。” 这阻止了它移出视线,但我很好奇这些指令需要多么精确。我建议我们尝试不同的方法:“确保此人无法退出页面。” 这也有效,但由于 Brockman 和 Zaremba 都无法解释的原因,它还改变了图形的宽度,将其压扁在屏幕上。

“有时它并不完全知道你在问什么,”布罗克曼笑道。他又尝试了几次,然后想出了一个无需这种不必要的更改即可工作的命令。“所以你必须考虑一下正在发生的事情,但不要太深入,”他说。

这在我们的小演示中很好,但它说明了这种程序的局限性。它不是一个可以读懂你的大脑、将每个命令变成完美代码的魔法精灵——OpenAI 也没有声称它是。相反,它需要深思熟虑和一些反复试验才能使用。Codex 不会在一夜之间将非编码人员变成专家程序员,但它肯定比任何其他编程语言更容易访问。

OpenAI 看好 Codex 更广泛地改变编程和计算的潜力。Brockman 说它可以帮助解决美国的程序员短缺问题,而 Zaremba 将其视为编码历史演变的下一步。

“CODEX 让计算机更接近人类,让他们说英语而不是机器代码”

“Codex 发生的事情之前已经发生过几次,”他说。在计算的早期,编程是通过创建必须输入机器的物理穿孔卡来完成的,然后人们发明了第一个编程语言并开始改进这些语言。“这些编程语言开始类似于英语,使用诸如‘打印’或‘退出’之类的词汇,因此越来越多的人能够编程。” 这条轨迹的下一部分是完全取消专门的编码语言,并用英语命令取而代之。

“这些阶段中的每一个都代表着编程语言变得越来越高级,”Zaremba 说。“而且我们认为 Codex 正在让计算机更接近人类,让他们说英语而不是机器代码。” Codex 本身可以使用十多种编码语言,包括 JavaScript、Go、Perl、PHP、Ruby、Swift 和 TypeScript。不过,它最精通 Python。


免责声明: 本文由用户上传,如有侵权请联系删除!


标签: