Java SpringBoot实现调用OpenAI ChatGPT的相关接口(详细教程)

大纲

说明

Java调用OpenAI接口,Java调用实现ChatGPT聊天,OpenAIAPI是一个自己封装的OpenAI GPT-3聊天API的Java工具类,可用于通过Java代码调用GPT-3模型进行自然语言交互,实现智能聊天等功能。
通过调用GPT-3模型,输入一段文本,返回机器人对话回复的文本。
附项目代码:在本文最后面

OpenAI3.5模型版本使用

工具类

使用了Lombok以及hutool依赖

以下是自己封装的工具类,只需写一下自己的api就可以使用了哦


import cn.hutool.core.convert.ConvertException;
import cn.hutool.http.HttpException;
import cn.hutool.http.HttpRequest;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import lombok.experimental.UtilityClass;import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;/*** @author Astar* ClassName:OpenAIAPI.java* date:2023-03-03 16:49* Description:*/
@UtilityClass
public class OpenAIAPI {/*** 聊天端点*/String chatEndpoint = "https://api.openai.com/v1/chat/completions";/*** api密匙*/String apiKey = "Bearer 你自己的key";/*** 发送消息** @param txt 内容* @return {@link String}*/public String chat(String txt) {Map<String, Object> paramMap = new HashMap<>();paramMap.put("model", "gpt-3.5-turbo");List<Map<String, String>> dataList = new ArrayList<>();dataList.add(new HashMap<String, String>(){{put("role", "user");put("content", txt);}});paramMap.put("messages", dataList);JSONObject message = null;try {String body = HttpRequest.post(chatEndpoint).header("Authorization", apiKey).header("Content-Type", "application/json").body(JsonUtils.toJson(paramMap)).execute().body();JSONObject jsonObject = JSONUtil.parseObj(body);JSONArray choices = jsonObject.getJSONArray("choices");JSONObject result = choices.get(0, JSONObject.class, Boolean.TRUE);message = result.getJSONObject("message");} catch (HttpException e) {return "出现了异常";} catch (ConvertException e) {return "出现了异常";}return message.getStr("content");}public static void main(String[] args) {System.out.println(chat("Hello,一个小浪吴啊"));}
}

参数说明:
txt:要发送的文本内容。
返回值:机器人的回复文本。

测试

注意事项

  1. 在使用OpenAIAPI之前,需要先在OpenAI官网注册账号,并获取API密钥。
  2. 在使用chat方法之前,需要先修改OpenAIAPI中的chatEndpoint和apiKey变量,分别指定API的URL和密钥。
  3. 在使用chat方法之前,需要先确定使用的GPT-3模型和参数。
  4. 在使用chat方法时,需要注意文本内容的长度和格式,以及网络连接的稳定性和速度。

代码说明

这段代码是一个 Java 工具类,用于访问 OpenAI 的 API 接口来进行聊天。下面是一些重要的技术说明:

  1. 使用了 Java 的 Lombok 工具类,来提供 @UtilityClass 注解,使该类成为一个不可实例化的工具类。
  2. 定义了两个 String 类型的常量 chatEndpoint 和 apiKey,分别代表 OpenAI 的聊天 API 端点和 API 密钥。
  3. 定义了一个 chat 方法,用于发送聊天消息到 OpenAI 的 API 接口,输入参数为 txt,代表聊天内容。
  4. 使用了第三方 Java 工具类 Hutool 来进行 HTTP 请求和 JSON 数据解析。其中,HttpRequest.post() 方法用于发送 POST 请求,JsonUtils.toJson() 方法用于将参数 paramMap 转换为 JSON 格式的字符串,JSONUtil.parseObj() 方法用于将接口返回的 JSON 字符串解析为 JSONObject 对象。
  5. 在发送请求时,将请求参数封装为一个 Map 对象,其中 model 属性代表使用的 GPT 模型,messages 属性为一个 List 对象,其中包含一个 HashMap 对象,代表用户的聊天消息。
  6. 在发送请求后,从接口返回的 JSON 数据中获取到聊天机器人返回的消息,然后将消息的 content 属性作为方法的返回值。
  7. 在异常处理中,使用了 Hutool 提供的 HttpException 和 ConvertException 异常类来处理异常情况。

总体来说,这段代码使用了 Java 的 Hutool 工具类来发送 HTTP 请求和解析 JSON 数据,从而实现了通过 OpenAI API 进行聊天的功能。

后文

项目地址:https://gitee.com/wy521a/astar-weixin-mp

集成公众号使用:https://gitee.com/wy521a/astar-weixin-mp

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/6038.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

〖ChatGPT实践指南 - 零基础扫盲篇③〗- 学术探讨:如何获取 OpenAI 的 API keys

帮助大家学习使用OpenAI的各类API开发应用 &#xff0c;学习多个实站项目。 推荐他人订阅可获取扣除平台费用后的35%收益&#xff0c;文末有名片&#xff01;说明&#xff1a;该文属于 ChatGPT实践指南白宝书 专栏&#xff0c;购买任意白宝书体系化专栏可加入TFS-CLUB 私域社区…

OpenAI 重磅发布 ChatGPT iOS 客户端!

公众号关注 “GitHubDaily” 设为 “星标”&#xff0c;每天带你逛 GitHub&#xff01; 今天凌晨&#xff0c;OpenAI 正式发布了 iOS 客户端&#xff01; 这代表你可以直接在 iPhone 和 iPad 上直接使用 ChatGPT 进行聊天了。 该客户端基于 Whisper 开源模型&#xff0c;集成了…

ChatGPT:关于 OpenAI 的 GPT-4 工具你需要知道的一切

OpenAI 再次成为头条新闻,有消息称它正在用一个名为 GPT-4 的新版本更新其病毒式传播的 ChatGPT。但是什么时候可以使用它,它是如何工作的,你可以使用它吗? OpenAI 已迅速成为科技界最知名的公司之一。这家人工智能 (AI) 公司制作了逼真的图像生成器、3D 模型创建器,以及现…

OpenAi[ChatGPT] 使用Python对接OpenAi APi 实现智能QQ机器人-学习详解篇

文章大部分来自&#xff1a;https://lucent.blog 原文博客地址&#xff1a;https://blog.ideaopen.cn 最近火热全文的ChatGPT&#xff0c;被很多人玩出了花&#xff0c;我们在Github上可以看到几个常见的逆向SDK包&#xff0c;这一篇我将以学习的方式来写这一篇文章。 这些SDK不…

用 Python 实现ChatGPT OpenAI(直接上源码)

网上一大堆教程&#xff0c;好多讲的很墨迹&#xff0c;你需要折腾半天才能调试通&#xff0c;up 这里给大家直接上源码干货。 详细教程后面补充&#xff0c;着急使用的可以直接拿走调试 说明 到 openai 里面替换你自己的app_key https://platform.openai.com/ 登录账号登录之…

如何使用OpenAi的ChatGPT咨询AI有关于Baumer工业相机的品牌国际知名度

基于OpenAi的Merlin Chat GPT使用方式 本方法可以不用国外网点进行登录使用ChatGPT 在国内就可以正常使用OpenAI的服务 一、下载Google浏览器 Google浏览器安装地址&#xff1a;https//www.google.cn/intl/zh-CN/chrome/ 登录自己的Google账号 搜索&#xff1a;Merlin - Ope…

我们所知道的关于 OpenAI 的 ChatGPT 的一切

如果您还没有听说过ChatGPT&#xff0c;这是来自人工智能实验室 OpenAI 的不可思议的新聊天机器人&#xff0c;这里是您需要了解的有关这个有争议的新程序的所有信息的快速入门。 什么是聊天 GPT&#xff1f; ChatGPT 是一种人工智能工具&#xff0c;允许用户生成原始文本。你…

好用到爆的Python自动化办公教程pdf,Python × Excel × Word × PPT 一次搞定

在这个自动化时代&#xff0c;我们有很多重复无聊的工作要做。想想这些你不再需要一次又一次地做的无聊的事情&#xff0c;让它自动化&#xff0c;让你的生活更轻松。那么在本文中&#xff0c;我将向您介绍一个好用到爆的Python自动化办公教程pdf&#xff0c;Python Excel Wo…

如何利用Multi-Chat搞科研?

这位研究僧&#xff0c;Multi-Chat都发布了&#xff0c;你还在纯人工搞科研吗&#xff1f; 已经有人实测&#xff1a; Multi-Chat科研全流程都能用&#xff0c;尤其是对于英语非母语的科研人员&#xff0c;可以极大地提高日常科研工作效率。 连写给导师的请假信&#xff0c;都能…

全球最大的 ChatGPT 开源替代品来了!

本周赠书&#xff1a;《Elasticsearch数据搜索与分析实战》 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;、整理 | 屠敏 自去年 11 月 ChatGPT 面向公众测试以来&#xff0c;OpenAI 一直占据各大科技网站的头版头条&#xff0c;以及成为很多开发者工具的首选。C…

漫谈 ChatGPT 与问答式 BI

近日&#xff0c;观远数据G-park「Lets Date&#xff01;BI&#xff01;」系列直播第二期「2023&#xff0c;金融业如何应对“流浪数据”」顺利落幕。观远数据联合创始人兼首席数据科学家字节带来了《漫谈 ChatGPT 与问答式 BI》的探索思考。 字节一方面介绍了一系列 ChatGPT …

为什么所有公开的对 GPT-3 的复现都失败了?复现和使用GPT-3/ChatGPT,你所应该知道的...

文&#xff5c;杨靖锋译&#xff5c;杨昊桐&#xff0c;王骁 修订源&#xff5c;机器之心 英文原版作者&#xff1a;杨靖锋&#xff0c;现任亚马逊科学家&#xff0c;本科毕业于北大&#xff0c;硕士毕业于佐治亚理工学院&#xff0c;师从 Stanford 杨笛一教授。感谢靳弘业对第…

ChatGPT-易编程 V3.0.0:工程级工作支持、智能代码生成、智能代码导读以及更多功能介绍

目录 前言 &#x1f31f; 功能介绍 &#x1f6e0;️ 命令&#xff08;图示见本节末尾&#xff09; 使用 ctrlshiftp 可用的命令&#xff1a; 在文件或选中代码块上右键点击可以使用的命令&#xff1a; 使用快捷键可用的命令&#xff1a; 其他功能 部分功能图示 常见使…

chatgpt生成一个简单PPT

1.先通过chatgpt得到文案 请作为一个富有经验的自媒体从业者&#xff0c;请帮我写一份适用于PPT的文案&#xff0c;主题是AIGC用于产品演示。 注意使用markdown格式&#xff0c;并把回复内容放到代码块中 2.利用mindshow网站生成PPT 导入我们刚刚生成的内容

自动生成原创文章文案软件v.1.2.3

ChatGPT自去年11月发布后在各个领域引发轰动。尤其是在学术界&#xff0c;它引发了一场禁止使用人工智能作弊撰写论文的风波。 然而&#xff0c;时代变化得太快。据泰晤士报&#xff0c;国际文凭组织&#xff08;IB&#xff09;反其道而行之&#xff0c;表示将允许参加IB课程的…

Chatgpt4来了,测试小姐姐实测,在失业的边缘疯狂试探~

GPT-4是OpenAI于2023年3月发布的最新人工智能模型&#xff0c;它是继GPT-3.5之后的又一次重大突破。它的核心技术是基于Transformer的自回归语言模型&#xff0c;它使用了大量的无标注数据进行预训练&#xff0c;学习了自然语言和其他模态之间的通用表示和关系。我们今天来看看…

【NLP】ChatGPT试用有感

写在前面 作为一个兼具分析&生成能力的AI&#xff0c;ChatGPT最近一段时间热度都非常高&#xff0c;它的确颠覆了很多人的认知&#xff0c;它的出现一定程度上是强人工智能的出现。ChatGPT似乎已经无所不能&#xff0c;文本分类&#xff0c;信息抽取&#xff0c;文本生成&a…

chatGPT指令大全可免费使用网站列表chatGPT4试用方案

指令列表 写作助理 &#x1f449; 最常使用的 prompt&#xff0c;用于优化文本的语法、清晰度和简洁度&#xff0c;提高可读性。作为一名中文写作改进助理&#xff0c;你的任务是改进所提供文本的拼写、语法、清晰、简洁和整体可读性&#xff0c;同时分解长句&#xff0c;减少…

上手ChatGPT威力加强版后,我发现它很强,但也有点拉。。。

今天凌晨&#xff0c;OpenAI 发布了最新的 GPT-4。 根据发布会披露的内容来看&#xff0c;这个新一代比早先大家使用的 ChatGPT 的 GPT-3.5 内核强悍了一大截&#xff0c;再次刷新了编辑部对 AI 的认知。 首先&#xff0c;非常非常重要的一点是&#xff0c;GPT-4 可以接受文字以…

苹果汽车将不支持全自动驾驶;华为云发布研发需求管理工具;腾讯文档发布企业版;OpenAI上线ChatGPT | 每日大事件...

‍ ‍数据智能产业创新服务媒体 ——聚焦数智 改变商业 01.苹果汽车被曝大降级&#xff1a;不支持完全自动驾驶 12 月 7 日消息&#xff0c;苹果公司已经缩减了其苹果汽车项目&#xff0c;该公司不再计划发布完全自动驾驶的汽车。苹果公司最初想制造一辆没有方向盘和油门的自动…