OpenAI Codex 是一个新的 GPT-3 AI 版本,可以将简单的英语转换为可运行的编程代码。例如,
假设当我在 OpenAI GPT-3 Playground 中向 OpenAI Codex 输入此提示时,它会给出提示下方代码的输出。
迅速的:
# 创建一个包含 6 个国家及其首都的 Python 字典 Country =
GPT-3 法典输出 country = {'加拿大':'渥太华','美国':'华盛顿特区','墨西哥':'墨西哥城','英国':'伦敦','法国':'巴黎','德国': 'Berlin'} # 打印字典 print(countries) # 打印字典的键 print(countries.keys()) # 打印字典的值 print(countries.values())
正如您所看到的,这是一个完美且可运行的 python 代码。
它还可以执行与代码相关的其他任务,例如将代码从一种语言翻译成另一种语言以及用简单的英语解释已经编写的代码等等。
Codex 是由 OpenAI 基于大量公开可用的代码而开发的。
访问 OpenAI GPT-3 Codex
Codex 首次发布时处于私人测试版,GPT-3 用户可以根据具体情况进行访问。即使您已经拥有GPT-3 API的访问权限,您仍然需要单独申请访问权限。
为了使用 OpenAI Codex,您需要首先创建一个帐户并访问他们的 GPT-3 Playground。 Codex 可作为其中一种模型使用,或者称为在 Playground 中或通过其 API 使用的引擎。
使用 OpenAI GPT-3 Codex AI 模型
您可以通过两种方式使用 OpenAI Codex AI:
让我们一一回顾一下。
使用 GPT-3 Playground 中的 Codex
为了使用 GPT-3 Playground 中的法典,
- 在浏览器中打开 GPT-3 Playground
- 从页面右侧的型号下拉列表中,选择型号“code-davinci-002”。 code-davinci-002 是 Codex 的当前版本
- 在文本框中写下您的提示,然后单击“提交”
为 Codex 用例填充的 GPT-3 Playground(生成之前)
为 Codex 用例填充的 GPT-3 Playground(生成之前)
通过 OpenAI API 使用 Codex
您还可以在代码中通过 OpenAI API 使用 OpenAI codex。这使您能够构建使用 Codex 功能的产品,例如代码生成或代码解释等。
这是在 Python 中调用 codex API 的 API 示例:
import os import openai openai.api_key = os.getenv("OPENAI_API_KEY") response = openai.Completion.create( model="code-davinci-002", Prompt="# 创建 6 个国家及其首都的 Python 字典\n国家=”、温度=0、max_tokens=256、top_p=1、Frequency_penalty=0、presence_penalty=0)
现在是在 Node 或 JavaScript 中对 OpenAI Codex 或 code-davinci-002 进行 API 调用的示例
const { 配置,OpenAIApi } = require("openai"); const 配置 = 新配置({ apiKey: process.env.OPENAI_API_KEY, }); const openai = new OpenAIApi(配置); const response = wait openai.createCompletion({ model: "code-davinci-002", prompt: "# 创建 6 个国家及其首都的 Python 字典\ncountries =", 温度: 0, max_tokens: 256, top_p: 1,频率惩罚: 0, 存在惩罚: 0, });
Codex 支持哪些编程语言?
Codex 支持以下编程语言。
- Python
- JavaScript
- 重击
- C#
- 爪哇
- 红宝石
- 锈
- SQL
- 打字稿
以及其他一些。
Codex 最精通 Python,但在其他编程语言方面也做得足够好。
OpenAI Codex 的有趣用例和提示
以下是 Codex 的一些有趣提示:
使用 OpenAI Codex 解释代码
# Python 3 def remove_common_prefix(x, prefix, ws_prefix): x["completion"] = x["completion"].str[len(prefix) :] if ws_prefix: # 保留单个空格作为前缀 x["completion" ] = " " + x["completion"] return x # 代码作用的解释 #
使用 OpenAI Codex 将代码从一种语言转换为另一种语言
#JavaScript 转 Python: JavaScript: dogs = ["bill", "joe", "carl"] car = [] dogs.forEach((dog) { car.push(dog); }); Python:
使用 OpenAI Codex 编写代码
""" 我想要一个程序,可以将所有 Twitter 关注者列表下载到 csv 文件中。""" import tweepy
Github Copilot 与 OpenAI Codex 有什么区别?
Codex 也是 Github 的 AI 代码编写工具 Copilot 的驱动力。
Github 是第一家访问 Codex API 的公司,他们构建了一个名为 Copilot 的 VS Code 扩展,该扩展提供了在 VSCode IDE 中使用简单英语编写代码的功能。
Github 宣布他们正在致力于为其他 IDE(如 Intellisense 等)构建 Copilot 插件或扩展。
我在哪里可以了解有关 Codex 的更多信息?
Codex 可以做什么?
我看到 Codex 的两个主要用途
- 人们直接从名为 Playground 的 OpenAI 工具中使用它来帮助自己编写代码。
- 或者有权访问 API 的人构建应用程序并将 Codex 集成到其中并让其他人使用这些应用程序。
以下是一些已经使用 Codex 构建或正在构建的很酷的东西
我可以访问 OpenAI Codex。我应该构建什么?
这里有一些想法……
- 为 V Code 以外的编码工具和 IDE 构建插件和扩展,并执行 Github Copilot 为 VS Code 所做的事情
- 构建模板生成器,让用户只需输入简单的英语即可生成新的网站模板
- 编写高效的代码翻译器。
- 样板生成器。
- 构建无代码工具,其用户界面是简单的英语,而不是单击按钮。
可能性是无限的。