首页学习其他【小工具】让ChatGPT...

【小工具】让ChatGPT教我们如何调用OpenAI API


OpenAI API是OpenAI提供的一种云端服务,允许开发人员使用OpenAI的人工智能模型,以便执行自然语言处理和代码生成等任务。OpenAI API提供了一系列模型,这些模型的能力不同,适合不同的任务,并且还可以对自定义模型进行微调。

下面,我们就让ChatGPT教我们如何调用OpenAI API,以完成文本生成和图像生成的任务

01
准备工作

首先,我们直截了当的询问ChatGPT,然后就会返回详细的操作步骤:

不过给出的示例代码较老,后面会使用官网给出的最新示例代码。

  • 访问OpenAI网站并创建一个帐户。
关于创建OpenAI帐户的问题,可以查看之前的文章【小工具】如何注册使用ChatGPT
不过根据网友反馈,最近注册似乎不那么容易了,很多人都打不开网页。
  • 在控制台中创建一个API密钥。
接着询问ChatGPT:

根据提示,生成秘钥。
需要注意的是,OpenAI在生成 API 密钥后,不会再次显示它们,因此需要将秘钥保存好。

  • 安装openai库:
打开命令行工具,通过以下命令安装openai库。
1pip install openai
02
文本生成实例

完成以上准备工作后,我们就可以使用官网给出的文本生成示例代码测试下是否调用成功:

其中,各个参数的含义如下所示:

  • model:使用的 OpenAI 模型,此处为 “text-davinci-003″。

  • prompt:输入自己的文本内容。
  • temperature:生成文本的随机性,取值范围为 0 到 1,此处设置为 0,即最小随机性。
  • max_tokens:最大生成令牌数量(令牌通常是单词),此处设置为 100。
  • top_p:生成文本的精度,取值范围为 0 到 1,此处设置为 1,即最高精度。
  • frequency_penalty:词频惩罚,取值范围为 0 到 1,此处设置为 0。
  • presence_penalty:语言模型对提示文本出现过的词语的惩罚,取值范围为 0 到 1,此处设置为 0。
  • stop:生成文本终止标志。如设置为 [“n”],即当生成文本以换行符结尾时终止生成。


 1import openai
2
3openai.api_key = "此处填入自己的秘钥"
4
5response = openai.Completion.create(
6  model="text-davinci-003",
7  prompt="介绍下ChatGPT",
8  temperature=0,
9  max_tokens=100,
10  top_p=1,
11  frequency_penalty=0.0,
12  presence_penalty=0.0,
13  stop=None
14)
15
16print(response)
17print("=======")
18message = response.choices[0].text
19print(message)

返回的结果如下所示(因为上面设置了max_tokens=100,因此返回的文本不完整,主要还是为了节省额度):

 1{
2  "choices": [
3    {
4      "finish_reason""length",
5      "index"0,
6      "logprobs"null,
7      "text""nnChatGPTu662fu4e00u79cdu57fau4e8eGPT-3u6a21u578bu7684u804au5929u673au5668u4ebauff0cu5b83u53efu4ee5u6839u636eu7528u6237u8f93u5165u7684u6587u672cuff0cu81eau52a8u751fu6210u76f8u5e94u7684u56deu590du3002ChatGPTu53efu4ee5u5e2eu52a9u7528u6237"
8    }
9  ],
10  "created"1676092659,
11  "id""cmpl-6icYVSZvBr0UDGHYiEw9R098syWBl",
12  "model""text-davinci-003",
13  "object""text_completion",
14  "usage": {
15    "completion_tokens"100,
16    "prompt_tokens"10,
17    "total_tokens"110
18  }
19}
20=======
21
22
23ChatGPT是一种基于GPT-3模型的聊天机器人,它可以根据用户输入的文本,自动生成相应的回复。ChatGPT可以帮助用户


03
图像生成实例

也可以调用DALL-E模型API,通过文本提示生成图像。

其中,各个参数的含义如下所示:

  • prompt:文本提示内容。

  • n:生成的图形数量。可以一次请求 1-10 张图像。

  • size生成的图像的大小。可以为 256×256、512×512 或 1024×1024 像素。较小的尺寸生成速度更快。
 1import openai
2
3openai.api_key = "此处填入自己的秘钥"
4
5response = openai.Image.create(
6  prompt="A sunlit outdoor lounge area with a pool containing a Robot",
7  n=1,
8  size="512x512"
9)
10
11image_url = response['data'][0]['url']
12print(image_url)

返回的是生成图像的链接,单开即可查看生成图像:

可以看出调用过程还是很简单的。

04
计费标准

需要注意的是,调用API是收费的!!!

以上面文本生成模型为例,官网给出的收费标准如下图所示,可以看出,文本生成模型是根据token计费的,另外不同的模型因其能力不同,收费也不一样

图像生成模型收费标准如下图所示,是根据单张图像尺寸计费的

具体收费标准可以前往官网查看(https://openai.com/api/pricing/)。

不过在注册账号时,OpenAI会赠送18美元的配额(有使用期限)。

可以前往控制台查看API使用情况:


如果你不差钱,那么调用OpenAI API还是可以尝试的,起码不同每天挤网页了……

要是能基于OpenAI API开发一个可以平衡收支或者盈利的应用,那就更棒了。

END

本篇文章来源于微信公众号: 码农设计师

RELATED ARTICLES

欢迎留下您的宝贵建议

Please enter your comment!
Please enter your name here

- Advertisment -

Most Popular

Recent Comments