ChatGPT(GPT3.5) OpenAI官方API正式发布

179次阅读

共计 2053 个字符,预计需要花费 6 分钟才能阅读完成。

ChatGPT(GPT3.5) OpenAI官方API正式发布插图

OpenAI 社区今天凌晨 4 点多发送的邮件,介绍了 ChatGPT 官方 API 的发布。官方介绍文档地址为“OpenAI API”和“OpenAI API”。

ChatGPT(GPT3.5) OpenAI官方API正式发布插图1

ChatGPT(GPT3.5) 官方 API 模型名称为“gpt-3.5-turbo”和“gpt-3.5-turbo-0301”。API 调用价格比 GPT text-davinci-003 模型便宜 10 倍。调用费用为 0.002 美元 /1000tokens,折合下来差不多 0.1 元 4000~5000 字。这个字数包括问题和返回结果字数。

1 API 调用方法

1.1 调用参数

ChatGPT(GPT3.5) 官方 API 调用方式如下所示,与 GPT3 模型调用基本一致,输入主要有 7 个参数。预计今天晚上,这两个模型会集成到 RdFast 智能创作机器人小程序和 RdChat 桌面程序。大家可以随时体验一下,敬请关注。

  1. model:模型名称,gpt-3.5-turbo 或 gpt-3.5-turbo-0301
  2. messages:问题或待补全内容,下面重点介绍。
  3. temperature:控制结果随机性,0.0 表示结果固定,随机性大可以设置为 0.9.
  4. max_tokens:最大返回字数 (包括问题和答案),通常汉字占两个 token。假设设置成 100. 如果 prompt 问题中有 40 个汉字,那么返回结果中最多包括 10 个汉字。ChatGPT API 允许的最大 token 数量为 4096. 即 max_tokens 最大设置为 4096 减去问题的 token 数量。
  5. top_p:设置为 1 即可。
  6. 6frequency_penalty:设置为 0 即可。
  7. presence_penalty:设置为 0 即可。
  8. stream。

需要注意,上述输入参数增加 stream,即是否采用控制流的方式输出。

如果 stream 取值为 False,那么返回结果与第 1 节 GPT3 接口一致,完全返回全部文字结果,可通过 response[“choices”][0][“text”] 进行读取。但是,字数越多,等待返回时间越长,时间可参考控制流读出时的 4 字 / 每秒。

如果 steam 取值为 True 时,那么返回结果是一个 Python generator,需要通过迭代获取结果,平均大约每秒钟 4 个字 (33 秒 134 字,39 秒 157 字),读取程序如下所示。可以看到,读取结果的结束字段为“<|im_end|>”。

1.2 messages

messages 字段组成部分包括角色 role 和 content 问题两个部分组成,如下所示:

model=”gpt-3.5-turbo”,

messages=[

{“role”: “system”, “content”: “You are a helpful assistant.”},

{“role”: “user”, “content”: “Who won the world series in 2020?”},

{“role”: “assistant”, “content”: “The Los Angeles Dodgers won the World Series in 2020.”},

{“role”: “user”, “content”: “Where was it played?”}

]

在 gpt-3.5-turbo 模型中,角色 role 包含 system 系统、assistant 助手和用户 user 三种类型。System 角色相当于告诉 ChatGPT 具体以何种角色回答问题,需要在 content 中指明具体的角色和问题内容。而 gpt-3.5-turbo-0301 主要区别在于更加关注问题内容,而不会特别关注具体的角色部分。gpt-3.5-turbo-0301 模型有效期到 6 月 1 日,而 gpt-3.5-turbo 会持续更新。

assistant 助手和用户 user 则相当于已经指明了角色,content 直接写入关注的问题即可。

2 参考程序

示例参考程序如下所示:

# -*- coding: utf-8 -*-

“””

Created on Wed Dec 21 21:58:59 2022

@author: Administrator

“””

import openai

def openai_reply(content, apikey):

openai.api_key = apikey

response = openai.ChatCompletion.create(

model=”gpt-3.5-turbo-0301″,#gpt-3.5-turbo-0301

messages=[

{“role”: “user”, “content”: content}

],

temperature=0.5.

max_tokens=1000.

top_p=1.

frequency_penalty=0.

presence_penalty=0.

)

# print(response)

return response.choices[0].message.content

if __name__ == ‘__main__’:

content = ‘ 你是谁?’

ans = openai_reply(content, ‘ 你的 APIKEY’)

print(ans)

3 API 调用效果

ChatGPT(GPT3.5) OpenAI官方API正式发布插图2

正文完
 
天天
版权声明:本站原创文章,由 天天 2023-07-24发表,共计2053字。
转载说明:

本文由 天天资讯网 整理发布,转载请注明出处.
版权声明:部分文章内容或图片来源于网络,我们尊重作者的知识产权。如有侵犯,请联系我们在第一时间删除。