ChatGPT官方API目前还在内测当中,OpenAI官网上也没有任何接口介绍和文档。这对于开发和调用来说不怎么方便。但是,比较好的地方在于内测过程中调用是免费的,没有次数限制。此外,API接口调用不需要梯子或代理(使用代理反而可能会报错“Error communicating with OpenAI”),只需要API Key就可以了,且当前API Key使用免费

尽管ChatGPT 官方API还在内测而没有使用文档,但我们知道该模型应该也属于文本补全模型(completion),与GPT3模型保持一致。我们可以类比GPT3模型来猜测其调用方式,然后得出ChatGPT模型调用方式。

1 GPT3模型调用(ChatGPT官方API请参考第2部分)

现有大多数ChatGPT API实际上是OpenAI GPT3模型接口,模型名称为“text-davinci-003”,调用费用为0.02美元/1000tokens,折合下来差不多0.1元400~500字。这个字数包括问题和返回结果字数。

GPT3模型调用方式如下,输入主要有7个参数:

  1. model:模型名称,text-davinci-003
  2. prompt:问题或待补全内容,例如“how are you”。
  3. temperature:控制结果随机性,0.0表示结果固定,随机性大可以设置为0.9。
  4. max_tokens:最大返回字数(包括问题和答案),通常汉字占两个token。假设设置成100,如果prompt问题中有40个汉字,那么返回结果中最多包括10个汉字。
  5. top_p:设置为1即可。
  6. frequency_penalty:设置为0即可。
  7. presence_penalty:设置为0即可。
import openai
openai.api_key = "你的API Key"
response = openai.Completion.create(model="text-davinci-003",prompt="how are you",temperature=0.7,max_tokens=256,top_p=1,frequency_penalty=0,presence_penalty=0
)
print(response)

返回结果如下所示,结果在text字段中,可通过response["choices"][0]["text"]进行读取。

{"id": "cmpl-uqkvlQyYK7bGYrRHQ0eXlWi7","object": "text_completion","created": 1589478378,"model": "text-davinci-003","choices": [{"text": "\n\nThis is indeed a test","index": 0,"logprobs": null,"finish_reason": "length"}],"usage": {"prompt_tokens": 5,"completion_tokens": 7,"total_tokens": 12}
}

2 ChatGPT API调用方式

ChatGPT API接口模型估计是2023年1月26日开始内测的,从它的模型名称就可以看出来。其调用方式如下所示,与GPT3模型调用基本一致,各个参数可参考上文介绍。下面各个参数目前是类比猜测出来的,没有conversation_id之类的。后续,如果新的参数更新,将在本文中及时进行更新,敬请关注

import openai
openai.api_key = "你的APIKey"
response = openai.Completion.create(model="请关注“乐乐感知学堂”公众号,公众号内输入“名称”即可获得模型名称。",prompt="请用100字中文介绍RdChat。",temperature=0,max_tokens=50,stream=False,#请注意查看下文说明。top_p=1,frequency_penalty=0,presence_penalty=0
)

ChatGPT API允许的最大token数量为4097,即max_tokens最大设置为4097减去prompt问题的token数量。

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

  1. 如果stream取值为False,那么返回结果与第1节GPT3接口一致,完全返回全部文字结果,可通过response["choices"][0]["text"]进行读取。但是,字数越多,等待返回时间越长,时间可参考控制流读出时的4字/每秒。
  2. 如果steam取值为True时,那么返回结果是一个Python generator,需要通过迭代获取结果,平均大约每秒钟4个字(33秒134字,39秒157字),读取程序如下所示。可以看到,读取结果的结束字段为“<|im_end|>”。
res = ''
for r in response:res += r["choices"][0]["text"]
res = res.replace('<|im_end|>', '')
print(res)

3 ChatGPT API接口效果

下图为调用结果效果图。后续,如果新的参数更新,将在本文中及时进行更新,敬请关注。

ChatGPT官方API可以抢先体验了相关推荐

  1. wps2016抢先版_了解抢先体验游戏

    wps2016抢先版 If you're a PC gamer in 2020, then you've probably played or at least are aware of " ...

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

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

  3. 【建议收藏】ChatGPT 联网版抢先体验,学会这 8 大高阶实用技巧,让你秒上手!

    ChatGPT 联网版抢先体验,学会这 8 大高阶实用技巧,让你秒上手 一.前言 福利:文末有分享chat GPT 免费中文版哦 二.ChatGPT 联网!!! 1. Web browsing 功能, ...

  4. 苹果版的ChatGPT官方Siri助手来了,立马体验

    ChatGPT官方的苹果APP已经来了,下面分享13个苹果Siri的ChatGPT智能助手,打开即可使用,无需魔法.无需下载APP: 引言: ChatGPT结合Siri语音助手,已成为智慧生活的引领者 ...

  5. netbeans 9_NetBeans 9抢先体验

    netbeans 9 Java 9即将来临,NetBeans 9也即将来临.在本文中,我们将看到NetBeans 9 Early Access为开发人员提供的支持,以帮助他们构建Java 9兼容的应用 ...

  6. ChatGPT 以及相关开源项目体验

    本月初,ChatGPT 以惊人的速度问世,在技术圈中引起了广泛讨论.在 GitHub 上近期还诞生了多个 ChatGPT 相关的开源项目,数量之多令人瞠目结舌,甚至 ChatGPT 独霸了大半个 Gi ...

  7. repl java9_Java 9抢先体验:与JShell进行动手实践– Java REPL

    repl java9 从今天开始,如何开始使用Java 9的最酷功能之一? 上周末,我终于开始尝试使用Java 9的早期访问版本.第一站是JShell,它也被称为Project Kulla. 首先让我 ...

  8. Java 9抢先体验:与JShell的动手实践– Java REPL

    从今天开始如何开始使用Java 9最酷的功能之一? 上周末,我终于开始尝试使用Java 9的早期访问版本了.第一站是JShell,它也被称为Project Kulla. 首先让我鼓起勇气尝试早期访问J ...

  9. JEECG前后端分离UI框架实战抢先体验(ng2-admin+Angular4+AdminLTE+WebStorm)

    JEECG前后端分离UI框架 (ng2-admin+Angular4+AdminLTE) 关键词: ng2-admin.Angular4.AdminLTE.Nodejs.Jeecg JEECG紧跟技术 ...

最新文章

  1. OpenCV函数学习之cvLUT
  2. AI没有偏见?它们从人类的语言中学会了性别和种族歧视
  3. LeetCode贪心 数组拆分I
  4. SQL必知必会-数据库基础
  5. 【总结】 Lucas定理
  6. python实现简单的http服务器_python实现简单http服务器功能
  7. J2EE Architecture(6)
  8. 全网首发:LINUX(UOS)对GTK/X11的窗口的差异
  9. 如何正确获取安卓内置SD卡的路径
  10. 机器学习 周志华-西瓜书 全文内容分享
  11. oracle中db_create_file_dest参数
  12. 软件测试工程师面试题之(计算机网络下)
  13. 如何防止数据库的编码格式跟项目编码格式不一致产生乱码, 怎么让数据库的编码格式跟项目编码格式保持一致
  14. 手机游戏开发现状分析
  15. Python——等额本金计算
  16. 一个女人努力工作的意义
  17. 爬取广东工业大学新闻通知网最新通知并发送至 QQ 邮箱
  18. 窗口看门狗与独立看门狗区别
  19. 2018.10.31-dtoj-4015-永琳的竹林迷径(path)
  20. MAC下Apktool、dex2jar、jd-gui的安装和反编译、回编译、重新签名简单使用

热门文章

  1. Qt网络编程实战之HTTP服务器-安晓辉-专题视频课程
  2. QQ邮箱获取邮件客户端授权码
  3. JavaScript中的jQuery
  4. GUVB-T11GD-L 太阳光紫外线传感器TO-46韩国GenUV光电二极管杀菌灯监控
  5. 关于组队学习的一点想法
  6. vs2013 应用程序无法正常启动
  7. failed to accept an incoming connection: connection from 127.0.0.1
  8. 美国麦当劳“四川辣酱”将再次回归;“澳大利亚制造”巧克力要崛起;中国食品行业首个“零碳工厂”诞生 | 食品饮料新品...
  9. 论文阅读:Detecting Visual Relationships Using Box Attention(ICCV19)
  10. 明翰英语教学系列之雅思阅读篇V0.9(持续更新)