ChatGPT 大火!
ChatGPT(全名:Chat Generative Pre-trained Transformer) ,你可以把他理解成一个机器人,它是一个美国 OpenAI 研发的聊天机器人程序 ,于 2022 年 11 月 30 日发布 。它能够通过理解和学习人类的语言来进行对话,还能根据聊天的上下文进行互动,真正像人类一样来聊天交流,甚至能完成撰写邮件、视频脚本、文案、翻译、代码,写论文等任务。深受现在大众的喜爱,在最近的网络上也爆火!
如何在 Python 使用 ChatGPT
安装 OpenAI Python 包
安装 OpenAI Python 包:可以选择两种方式:
- 使用命令行
- 使用 PyCharm 的集成终端
然后运行以下命令来安装 OpenAI Python 包:
pip install openai
获取凭证
请按照 OpenAI 官方文档(https://openai.com/)中的步骤获取 OpenAI API 凭证。
创建py文件
在 PyCharm 中创建 py 文件:选择 File > New > Python File,然后点击 OK
使用 OpenAI API
在代码中使用 OpenAI API:在 Python 文件中导入 OpenAI 包,并使用 API 密钥进行身份验证。然后,使用 API 生成文本。以下是一个简单的示例
import openai
# 生成文本
response = openai.Completion.create(engine=model, prompt=prompt, max_tokens=1024)
generated_text = response.choices[0].text
prompt = "Generate some text"
model = "text-davinci-002"
openai.api_key = "YOUR_API_KEY"
print(generated_text)
将 YOUR_API_KEY 替换为你的 OpenAI API 密钥。
运行代码
单击“运行”,运行您的代码
请注意,ChatGPT 进行文本生成时,不一定总是准确的。如果您想要更好的结果,需要尝试不同模型、参数、生成长度和输入方式等。
OpenAI 功能举例
训练 AI 模型
OpenAI Python 包有一个名为 “Gym” 的工具包,可以用于训练强化学习模型。举例:
import gym
import random
import openai
# 设置OpenAI API凭证
openai.api_key = "YOUR_API_KEY"
env = gym.make('CartPole-v1')
def simple_policy(observation):
if observation[2] < 0:
return 0
else:
return 1
for i_episode in range(20):
observation = env.reset()
for t in range(100):
env.render()
action = simple_policy(observation)
observation, reward, done, info = env.step(action)
if done:
print("Episode finished after {} timesteps".format(t+1))
break
env.close()
使用 AI 模型进行文本生成
OpenAI Python 包有一个名为“GPT”的工具包,可以用于生成各种文本,如文章、新闻报道、故事等。举例:
import openai
openai.api_key = "YOUR_API_KEY"
response = openai.Completion.create(engine=model, prompt=prompt, max_tokens=1024)
generated_text = response.choices[0].text
prompt = "Generate some text"
model = "text-davinci-002"
print(generated_text)
计算机视觉
OpenAI Python 包中有一个名为“DALL-E”的工具包,可以用于生成各种图像。我举个例子,展示使用 DALL-E 生成一张猫头鹰的图像:
import openai
openai.api_key = "YOUR_API_KEY"
model = "image-alpha-001"
response = openai.Image.create(prompt=prompt, model=model)
image_url = response['output_url']
prompt = "Draw an owl sitting on a branch in the moonlight"
print(image_url)
Model
OpenAI Python 包包含许多不同的预训练模型。分别有以下模型:
GPT-3
GPT-3 是 OpenAI 的最新自然语言处理模型,具有惊人的文本生成能力,可以用于生成各种文本,例如博文、故事、新闻等。
DALL-E
DALL-E 是一种计算机视觉模型,可以生成各种图像,例如动物、食物、植物等。您可以向模型提供描述图像的文本,它将生成与描述匹配的图像。
DALL-E 2
DALL-E 2 是 DALL-E 的升级版本,具有更高的分辨率和更复杂的图像生成能力,可以使用它来生成更详细、更逼真的图像。
GPT-2
GPT-2 是 GPT-3 之前的一个自然语言处理模型,具有出色的文本生成能力。虽然 GPT-2 不如 GPT-3 强大,但它仍然是一个非常有用的工具。
ADA
ADA 是一种自然语言处理模型,具有出色的文本分类和语言理解能力,可以使用它来分类文本、回答问题或生成摘要。
CLIP
CLIP 是一种计算机视觉模型,具有出色的图像分类和语义搜索能力,可以使用它来查找与给定图像或文本描述匹配的其他图像。
Codex
Codex 是一种人工智能编程助手,可以生成高质量的代码,甚至可以自动完成整个程序。可以在许多不同的编程语言中工作,例如 Python、Java、JavaScript 等。
GPT-3 模型
GPT-3(Generative Pre-trained Transformer 3)是由 OpenAI 开发的一个基于 Transformer 架构的自然语言生成模型。GPT-3 模型包括许多不同的模型,这些模型的大小和性能各不相同。
下面是 GPT-3 的几个模型以及它们的特点:
- davinci: 这是 GPT-3 模型中最大的模型,具有 1750 亿个参数。它可以生成高质量的文本,还可以执行一些简单的数学和逻辑运算。
- curie: 这是 GPT-3 模型中第二大的模型,具有 65 亿个参数。它可以生成相当高质量的文本,但速度比 davinci 快得多。
- babbage: 这是 GPT-3 模型中第三大的模型,具有 1.5 亿个参数。它比较适合生成较短的文本。
- ada: 这是 GPT-3 模型中最小的模型之一,具有 40 亿个参数。它可以生成一些较为简单的文本,但速度很快。
这些模型的命名方式都以著名的科学家或发明家的名字命名。每个模型的名称中的数字表示该模型的大小(即参数数量)。以 davinci 为例,它是 GPT-3 中最大的模型,其中的 002 表示它是该模型的第二个版本。不同版本的模型可能会改进模型的性能或修复模型中的错误。
在 OpenAI Python 包中,您可以使用以下模型名称来调用这些模型:
text-davinci-002
text-curie-001
text-babbage-001
text-ada-001
例如,在使用 OpenAI Python 包时,您可以按以下方式使用 text-davinci-002 模型:
import openai
import os
openai.api_key = os.environ["OPENAI_API_KEY"]
prompt = "请写一篇介绍OpenAI的文章"
model = "text-davinci-002"
response = openai.Completion.create(
engine=model,
prompt=prompt,
max_tokens=1024,
n=1,
stop=None,
temperature=0.5,
)
print(response.choices[0].text)
Postman 提供 OpenAI 英文文档
之前在 Postman 上看到了 OpenAI 的文档,但是很遗憾,全都是英文的,大部分人英语水平也一般般,很难看懂,所以我一直在期待国内能有 API 工具能提供中文版的 OpenAI 文档~
Apifox 提供 OpenAI 中文文档!
直到 Apifox 宣布提供了 OpenAI 中文文档,我简直太高兴了!
进入 API Hub、搜索 OpenAI
Apifox 提供了 API Hub 功能,里面全是一些知名公司的 API 文档,数量非常多,简直是惊喜!
我们可以在搜索框里,搜索 OpenAI ,即可看到 Apifox 为我们提供的 OpenAI 中文文档~
OpenAI 中文文档
点进去到 OpenAI 的文档,我们发现都是中文的,且拥有 OpenAI 的所有接口
OpenAI 接口文档界面
我们可以看到文档界面显示的信息非常多
- 请求方法
- 请求路径
- 请求名称
- 接口说明
- Mock 地址
OpenAI 修改文档界面
在修改文档界面,我们可以对刚刚文档页里的信息进行修改
OpenAI 运行接口进行聊天
我们可以使用 Apifox 跟 chatGPT 进行聊天
配置 API_KEY
我们需要配置 API_KEY,才能进行 OpenAI 接口的请求,Apifox 具有 Auth 的继承机制,由于 接口 继承了 根目录的 Auth
所以我们需要配置根目录的 Auth 中的 YOUR_API_KEY 变量
请求发送
找到 OpenAI 的聊天接口,并跳转到运行页面,点击 发送按钮,得到响应,进行聊天~
OpenAI 在线文档
以上都是在客户端的页面,如果你想把此项目分享给身边的小伙伴,可以点击 在线文档,并把 url 分享给你的朋友们