当前位置:   article > 正文

java及python调用ChatGPT聊天接口示例_chatcpt java 调用

chatcpt java 调用

一、接口信息

  1. 接口地址:https://www.1bit.asia/openai/api/ask
  2. 类型:POST
  3. 参数:{
  4.     "prompt":"写一个修仙小说目录",
  5.     "userName":"apiuser002",
  6.     "token":"链接页面获取"
  7. }

说明:userName参数和token需要对应。多组不同账号token请查看

https://blog.csdn.net/liuhenghui5201/article/details/129721995

 二、Java调用方式

  1. package com.xiaohui.bird;
  2. import com.alibaba.fastjson2.JSONObject;
  3. import java.io.BufferedReader;
  4. import java.io.IOException;
  5. import java.io.InputStreamReader;
  6. import java.io.OutputStream;
  7. import java.net.HttpURLConnection;
  8. import java.net.URL;
  9. public class ApplicationMain {
  10. public static void main(String[] args) {
  11. String question = "李白的著名古诗有哪些";
  12. System.out.println("问: "+question);
  13. String respStr = ask(question);
  14. System.out.println("答: "+respStr);
  15. }
  16. public static String ask(String question) {
  17. try {
  18. String questionInfo = getQuestionInfo(question);
  19. JSONObject questionJson = JSONObject.parseObject(questionInfo);
  20. String questionId = questionJson.getString("data");
  21. String answer = null;
  22. do{
  23. try { Thread.sleep(3000L); } catch (InterruptedException e) { e.printStackTrace(); }
  24. URL url = new URL("https://www.1bit.asia/openai/api/answer/"+questionId);
  25. HttpURLConnection con = (HttpURLConnection) url.openConnection();
  26. con.setRequestMethod("GET");
  27. BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
  28. String inputLine;
  29. StringBuffer response = new StringBuffer();
  30. while ((inputLine = in.readLine()) != null) {
  31. response.append(inputLine);
  32. response.append(System.lineSeparator());
  33. }
  34. in.close();
  35. String answerString =response.toString();
  36. if(!"思考中...".equals(answerString)){
  37. answer = answerString;
  38. }
  39. } while (answer == null);
  40. return answer;
  41. } catch (Exception e) {
  42. e.printStackTrace();
  43. return "问答异常";
  44. }
  45. }
  46. private static String getQuestionInfo(String question) throws IOException {
  47. URL url = new URL("https://www.1bit.asia/openai/api/ask");
  48. HttpURLConnection con = (HttpURLConnection) url.openConnection();
  49. con.setRequestMethod("POST");
  50. // 设置请求头
  51. con.setRequestProperty("Content-Type", "application/json");
  52. // 设置请求体
  53. String requestBody = "{\"prompt\":\""+ question +"\",\"token\":\"6865725-27a9-4385-a7f5-97b09e434fw\",\"userName\":\"apiuser033\"}";
  54. con.setDoOutput(true);
  55. con.setDoInput(true);
  56. OutputStream os = con.getOutputStream();
  57. os.write(requestBody.getBytes());
  58. os.flush();
  59. os.close();
  60. BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
  61. String inputLine;
  62. StringBuffer content = new StringBuffer();
  63. while ((inputLine = in.readLine()) != null) {
  64. content.append(inputLine);
  65. }
  66. in.close();
  67. String questionInfo = content.toString();
  68. return questionInfo;
  69. }
  70. }

运行效果:

三、python 调用方式

  1. # coding=gbk
  2. import requests
  3. import json
  4. prompt = input('请输入问题:')
  5. url = 'https://www.1bit.asia/openai/api/ask'
  6. data = {'prompt': prompt, 'token': '链接页面获取', 'userName':'apiuser002'}
  7. headers = {'Content-Type':'application/json'}
  8. response = requests.post(url, data= json.dumps(data), headers=headers)
  9. print('答:'+response.text)

运行效果

 

网页体验地址 https://1bit.asia

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/364146?site=
推荐阅读
相关标签
  

闽ICP备14008679号