首页 > 其他分享 >简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!

时间:2023-09-01 15:03:59浏览次数:83  
标签:畅聊 可以 生成 API 文档 Apifox ChatGPT

ChatGPT API是什么

ChatGPT 已经成为了很多人日常工作的一部分,帮你写周报,做翻译,查资料。但是,有很多事情是网页版的 ChatGPT 做不到的。

比如,我想要做一个关于 Apifox 的知识的问答机器人,能在企业微信里访问。这个时候,我就需要用到 ChatGPT API 了。

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_openai

ChatGPT API 是一种由 OpenAI 提供的 API,它可以用最简单的方式把 ChatGPT 的聊天能力接入到各种应用程序或服务中。

这个 API 具体提供了哪些能力呢?

就是下面这些:

  1. 自然语言语音识别(Natural Language Speech Recognition): 基于不同音频的大型数据集训练结果,支持多种国家语言的识别、方言及语调,为用户提供专业的海外内容语音转文字和翻译服务。
  2. 多模态图像生成(Multimodal Image Generation):通过自然语言描述生成高分辨率、逼真的图像,支持对场景、样式、组成等多种属性进行控制,可生成照片、插图、动漫等各类图像。
  3. 智能代码生成(Intelligent Code Generation):快速生成与需求描述匹配的代码段落,覆盖各类编程语言及多个级别,辅助开发者提升效率。支持代码风格迁移及完善不全代码。
  4. 内容过滤与审查(Content Filtering & Moderation): 基于海量样本训练的模型可以对文本、图像及视频内容进行审查,识别并过滤不当内容,支持多语言及定制化敏感词库。
  5. 大模型微调(Model Fine-tuning): 通过继续训练、增量学习等方式,对已存在的大模型进行微调,使其更好地适配业务场景及个性化需求。
  6. 文本嵌入(Text Embedding): 将输入文本映射为固定长度的词向量,便于后续文本相似度计算、聚类等分析,为 NLP 任务提供基础输入表示。

具体的中文版 API 文档,你可以在这个网址读到:https://openai.apifox.cn/

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_openai_02

如何调用ChatGPT API

很多人觉得调用 API 是个很麻烦的事情,需要写代码,需要研究数据结构。

但有了上面这个用 Apifox 生成的 API 文档,你会发现,原来根本不用写代码就能调用 ChatGPT API。

总共需要三步

1

获取 ChatGPT API Key

所有的 API 调用方法都离不开一个专门的 API Key,因此我们需要向 ChatGPT 申请专属的 API Key。

访问 ChatGPT 开发者平台并点击 Sign up 按钮进行注册。(链接:https://platform.openai.com/)

按照页面提示依次输入邮箱和密码,然后在页面中填写在上文中所获取到的海外手机号码,接收验证码后即可完成注册。进入控制台后,点击左侧菜单栏的 API keys 选项,然后轻点 Create new secret key 按钮。

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_chatgpt_03

填写名称后即可获取到一串加密字符~ 这就是我们接下来需要用来调试的 API Keys。

如果你觉得上述流程太麻烦了,那么不妨直接在搜索引擎中搜索“chatgpt api keys 购买”等关键词,在第三方平台中获取由其它开发者提供的 API Keys (注意信息甄别) 。

2

填写 API Key

搞定 API key 之后,我们就可以直接在 API 在线文档中进行调试了。

ChatGPT 提供了很多种 API,无论你要使用哪一种,首先都需要输入你的 API key。

在上面那个 API 文档(https://openai.apifox.cn/) 中,点击 “调试” 按钮。

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_openai_04

点击 “去设置变量值”,把你的 API Key 填进去。

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_API_05

这里填写的 API Key 只会保存在本地,不用担心泄露,可以放心使用。

接下来,我们就可以愉快地调用 ChatGPT API 了!

3

调用 API

我们以图像生成 API 来作为一个例子。

找到 “创建图像” 的 API,点击 “调试” 就可以看到右侧 Body 区域有 prompt 和 size 这两个字段。你可以用英文描述一个你希望生成的场景,写在 prompt 里面。size 就是生成图片的分辨率。

我们直接以示例数据的 “A colorful sunset over the mountains” 来做个实验,分辨率 1024x1024。

点击 “发送”。

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_自然语言_06

在右侧下半边的 “返回响应” 区域,就可以看到 ChatGPT 生成的图像 URL 啦!你可以在返回 Body 中的 content 中看到这个图片 URL。

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_API_07

点击图片 URL 你就可以欣赏到这两幅图,还不错吧?

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_openai_08

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_自然语言_09

调试 SSE API

当你跟 ChatGPT 聊天的时候,你会注意到对话是一个字一个字输出的。这是因为 ChatGPT API 聊天对话接口采用了 SSE(Server-Sent Events,服务器推送事件) 方式返回响应。采用这种方式的好处在于可以实时显示问题的答案,当用户看到 GPT 正在说话也就更有耐心去等待。

这种 API 不像普通的 API 一样是单次的请求和返回,而是一个连续的时间线。这时候就需要使用 Apifox 客户端来调试了。

下载之后,你可以在左侧的 API Hub 中将这个 OpenAI 的 API 文档(https://app.apifox.com/project/2100343/) 克隆到自己的空间,就可以开始 SSE 调试了。

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_自然语言_10

在 Apifox 客户端中打开 “生成聊天消息的自动完成” 接口,然后在请求 Body 中的 content 字段内填入你的需求,比如 “请为我写一个能够接入 ChatGPT 对话功能的 Python 代码”。

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_程序员_11

点击 “发送” 按钮后即可建立连接,你可以在 “时间线” 内看到通过多条事件所依次返回的响应内容,并且可以清晰地看到事件间的时间间隔。若你正在开发一个兼容 SSE 的 API,那么便可以通过 “时间线” 功能抓取时间切片信息,优化 API 的服务性能。

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_openai_12

如果你想要查看 ChatGPT 具体都回答了些什么内容,那么可以在后置操作中添加以下自定义脚本来拼接响应:

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_程序员_13

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_chatgpt_14

请求 ChatGPT API 后就可以在控制台中查看响应的拼接结果。

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_程序员_15

你还可以在调用 “聊天” API 时撰写需求来实现以下这些场景:

  • 起草一份邮件或者其他文字内容
  • 写 Python 代码
  • 回答关于一组文档的问题
  • 给你的软件提供一个自然语言的接口
  • 辅导各种学科
  • 语言翻译
  • 假扮成游戏中或其他内容的角色  

把 ChatGPT 嵌入自己的应用

由 Apifox 生成的 API 文档内还预置了数十种主流开发语言的示例代码,开发者可以非常方便地将 API 代码集成至自己熟悉的开发环境中。

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_程序员_16

以 Python Flask 应用为例,你可以很轻松地将 API 调试命令融入至项目代码中:

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_程序员_17

用 Apifox 生成 API 文档

以上这个强大的 API 文档,不需要写任何代码就可以调用 ChatGPT API,还可以自动生成代码

这个 API 文档是使用 Apifox 的 “在线分享” 功能生成的。只要有 Swagger Json,任何 API 都可以被一键包装成这样的方便调用的 API 文档。

Apifox 是更先进的 API 设计/开发/测试工具。

Apifox = Postman + Swagger + Mock + JMeter

一个工具解决 API 开发、调试、管理的一切问题。

简单三步搞定 ChatGPT API 调用,轻松畅聊机器人!_chatgpt_18

知识扩展:

标签:畅聊,可以,生成,API,文档,Apifox,ChatGPT
From: https://blog.51cto.com/u_15964010/7322888

相关文章

  • 用 ChatGPT 做一个 Chrome 扩展 | 京东云技术团队
    用ChatGPT做了个ChromeExtension最近科技圈儿最火的话题莫过于ChatGPT了。最近又发布了GPT-4,发布会上的Demo着实吸睛。笔记本上手画个网页原型,直接生成网页。网友直呼:前端失业了!但我觉着啊,真就外行看热闹,内行看笑话。虽然ChatGPT很强大,但没有经过针对某个领域自定义化过的模......
  • 文心一言 VS 讯飞星火 VS chatgpt (84)-- 算法导论8.2 1题
    一、用go语言,参照图8-2的方法,说明COUNTING-SORT在数组A=(6,0,2,0,1,3,4,6,1,3,2)上的操作过程。文心一言:CountingSort是一种非比较型整数排序算法,适用于一定范围内的整数排序。它的基本思想是,对每一个输入元素x,确定小于x的元素个数,从而确定x在输出数组中的位置。下面是使用Go......
  • CBV、APIView源码分析
    一、CBV源码分析1、功能需求基于类的视图--->使用类编写--->在类中写跟请求方式(methon)同名的方法--->路由配置类名.as_view()前端的请求过来,什么请求,就会执行跟请求方式同名的方法2、执行流程路由匹配成功--->配置在路由上的第二个参:执行函数内存地址自动加(request......
  • springboot 使用RestTemplate调用get api,传入参数
    getapi:@ResponseBody@ResponseStatus(HttpStatus.OK)@GetMapping(value="/checkGetApi")@ApiOperation(value="checkgetapimethod")publicJSONObjectcheckGetApi(IntegeruserName){JSONObjectresult=......
  • tidevice中常用api 浅谈
     -设备管理类API: -`pair(device:Device)->bool`:配对一个iOS设备,返回是否成功。-`unpair(device:Device)->bool`:解除配对一个iOS设备,返回是否成功。-`list_devices()->List[Device]`:列出所有已连接的iOS设备,返回一个设备对象的列表。-`get_device_info(devic......
  • App开放接口API安全性—Token签名sign的设计与实现
    在app开放接口API的设计中,避免不了的就是安全性问题。 一、https协议对于一些敏感的API接口,需要使用https协议。https是在http超文本传输协议加入SSL层,它在网络间通信是加密的,所以需要加密证书。 二、签名设计原理:用户登录后向服务器提供用户认证信息(如账户和密码),服务器认证完后......
  • 16、Flink 的table api与sql之连接外部系统_ 读写外部系统的连接器和格式以及Apache H
    (文章目录)本文介绍了ApacheHive连接器的使用,以具体的示例演示了通过java和flinksqlcli创建catalog。本文依赖环境是hadoop、zookeeper、hive、flink环境好用,本文内容以flink1.17版本进行介绍的,具体示例是在1.13版本中运行的(因为hadoop集群环境是基于jdk8的,flink1.17版本需......
  • Flink的3中API
    DataStream/DataSet/TableAPI是ApacheFlink提供的三种不同的API,用于处理不同类型的数据和实现不同的计算模型。1.DataStreamAPI:DataStreamAPI是基于流式数据的API,用于处理连续不断到达的数据流。它适用于实时数据处理和流式计算场景。DataStreamAPI提供了丰富的操作符和函......
  • 要调用API接口获取商品数据,首先需要了解该API的文档和规范
    要调用API接口获取商品数据,首先需要了解该API的文档和规范。大多数API都需要使用API密钥进行身份验证,因此您需要先注册API提供商,并从他们那里获取API密钥。以下是一些通用的步骤:注册API提供商并获取API密钥在开始使用任何API之前,您需要先注册API提供商,并从他们那里获取API密钥。请......
  • RESTful API规范,序列化,Django Rest_Framework
    一.RESTfulAPI规范REST全称是RepresentationalStateTransfer,中文意思是表述(编者注:通常译为表征性状态转移)。它首次出现在2000年RoyFielding的博士论文中。RESTful是一种定义WebAPI接口的设计风格,尤其适用于前后端分离的应用模式中。这种风格的理念认为后端开发任......