# Java快速接入ChatGPT API

277 阅读3分钟

什么是ChatGPT

ChatGPT是一款人工智能聊天机器人,它可以用自然语言处理算法进行交流、回答问题和提供有用的信息。它被设计成能够与用户进行实时对话,并且以尽可能简单易用的方式提供所需的帮助和资源。ChatGPT可用于推广、客户服务等多个方面,为企业和用户之间建立起高效的沟通渠道。

ChatGPT对人们有什么积极影响

ChatGPT作为一种交流工具,对人类社会带来了许多积极影响。以下是其中的一些:

  1. 促进跨文化交流:ChatGPT连接了世界各地的人们,使得不同文化背景和语言的人们可以彼此沟通,从而加深相互理解和尊重。
  2. 方便快捷:与传统的邮件或电话相比,聊天软件更方便、更快捷。只需要一个电脑或智能手机就可以随时随地与朋友、家人或同事进行实时交流。
  3. 提高效率:使用ChatGPT可以提高个人和团队之间的协作效率。通过共享文件、编辑项目等功能,可以将整个工作过程集中在一个平台上,在最短时间内完成任务。
  4. 带来乐趣:很多人在闲暇时间也喜欢使用聊天软件分享趣事,并结识新朋友。这些经历有助于缓解压力和增进幸福感。

总之,ChatGPT已成为现代社会不可或缺的一部分,并带来了许多积极影响。


以上内容都是ChatGPT自动生成的。

图片

在一个多月之前,我已经发布了一版基于GPT-3引擎的网页版应用,刚发布没多久有许多感兴趣的小伙伴纷纷登录体验。但那时候的体验并不怎么好,由于相对于ChatGPT的GPT-3.5引擎有些落后,导致生成的内容往往跟想要的相差甚远,并且那个时候接口性能也很差,每次交互耗时比较长。

前几天OpenAI发布了ChatGPT的API,我也及时同步到了应用中,整体感受比上一个版本舒服了太多。生成的内容更加符合预期更多的是超出预期,访问速度也得到了很大的提升。

下面说一下Java版本如何快速接入最新版的ChatGPT API。

引入maven依赖

<dependency>        <groupId>com.theokanning.openai-gpt3-java</groupId>        <artifactId>client</artifactId>        <version>0.11.0</version></dependency>

构建请求体并发送

public void sendMsg() {  // 消息列表  List<ChatMessage> list = new ArrayList<>();
  // 给chatGPT定义一个身份,是一个助手  ChatMessage chatMessage = new ChatMessage();  chatMessage.setRole("system");  chatMessage.setContent("You are a helpful assistant.");  list.add(chatMessage);
  // 定义一个用户身份,content是用户写的内容  ChatMessage userMessage = new ChatMessage();  userMessage.setRole("user");  userMessage.setContent("hello");  list.add(userMessage);
  ChatCompletionRequest request = ChatCompletionRequest.builder()                    .messages(list)                    .model("gpt-3.5-turbo")                    .build();  OpenAiService service = new OpenAiService("your token");
  // chatCompletion 对象就是chatGPT响应的数据了  ChatCompletionResult chatCompletion = service.createChatCompletion(request);}

由于ChatGPT是可以基于上下文进行对话的,所以在消息列表中尽可能携带之前的对话记录,这样会有更好的体验,但是对话记录过多的话会消耗更多的 tokens,也就是需要消耗更多的金额。

其次每次的对话会有一个最大的 tokens限制,可以理解为每次对话中,对话内容和ChatGPT返回的内容总字符是有限制的,所以在携带历史对话记录的时候要做好取舍。

API无法访问解决方案

想直接体验ChatGPT功能的小伙伴可以直接访问链接