通过openAI的Chat Completions API实现一个支持追问的ChatGPT功能集成

前言

  本文介绍如何通过openAI的Chat Completions API实现一个支持追问的后台功能,追问打个比方,就是当你问了一句”窗前明月光的下一句是什么?“之后,想再往下问就可以直接问”再下一句呢?“,模型也能基于上下文理解你问的问题。
  不过当前open AI限制了中国的访问,甚至连香港服务器都无法访问GPT的问答API,只有非中国区域的服务器节点可以访问,这个大家注意。

准备工作

  1、注册Open AI账号;
  2、关联付款银行卡;
  3、生成API key,后续用于API调用鉴权。

代码实现

思路

  Chat Completions API核心三个参数:
  messages:这是一个消息对象的数组,每个消息对象都有一个 “role”(角色)和"content"(内容)。角色可以是 “system”、“user” 或 “assistant”,而内容包含了该角色的问答文字信息。
  temperature:这个参数控制输出的随机性。数值越高,输出结果就会越随机;数值越低ÿ

要调用OPENAI API实现chatgpt对话,需要按照以下步骤进行操作: 1. 首先,注册OPENAI API账户并获取API密钥。 2. 创建一个Android项目,并添加相应的依赖项,以便可以使用HTTP请求库。 3. 使用HTTP请求库发送POST请求到OPENAI API,以获取chatgpt对话结果。可以使用以下代码片段: ``` String url = "https://api.openai.com/v1/engines/davinci-codex/completions"; String apiKey = "YOUR_API_KEY"; JSONObject postData = new JSONObject(); postData.put("prompt", "Hello, how are you?"); postData.put("max_tokens", 50); postData.put("temperature", 0.7); HttpRequest request = HttpRequest.newBuilder() .uri(URI.create(url)) .header("Content-Type", "application/json") .header("Authorization", "Bearer " + apiKey) .POST(HttpRequest.BodyPublishers.ofString(postData.toString())) .build(); HttpResponse<String> response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString()); String responseBody = response.body(); ``` 在上面的代码中,我们首先指定了OPENAI API的URL和API密钥。然后,我们创建了一个JSON对象,其中包含要发送给API的参数,例如“prompt”(对话的开头),“max_tokens”(要生成的最大令牌数)和“temperature”(输出的随机性)。最后,我们使用HTTP请求库发送POST请求,并从响应中获取对话结果。 4. 解析OPENAI API的响应,并将结果显示在Android应用程序中。可以使用以下代码片段: ``` JSONObject responseJson = new JSONObject(responseBody); JSONArray choices = responseJson.getJSONArray("choices"); if (choices.length() > 0) { JSONObject choice = choices.getJSONObject(0); String text = choice.getString("text"); // display text in app UI } else { // handle error } ``` 在上面的代码中,我们首先将响应体解析为JSON对象。然后,我们从响应中提取对话结果,将其显示在应用程序的用户界面中。 总之,要调用OPENAI API实现chatgpt对话,需要使用HTTP请求库发送POST请求,并解析响应以获取对话结果。然后,将结果显示在Android应用程序中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

知了蝉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值