Java和ChatGPT:在代码中创建AI助手

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

Java遇见人工智能:为什么这很重要

\n\n

Java开发世界正在经历一场真正的革命。就在几年前,将人工智能集成到Java应用程序中似乎还是拥有数据科学家团队的大型企业的专利。而今天,每一位Java开发者都可以为自己的项目添加ChatGPT等语言模型的力量。这不仅仅是一种时尚潮流——这是一个真正的工具,可以自动化日常任务、改善用户体验,并为您的应用程序开辟新的可能性。

\n\n

在本文中,我们将探讨如何在Java开发中使用ChatGPT。您将学习如何连接到OpenAI API、编写一个简单的AI助手,并将其集成到实际项目中。没有魔法——只有纯Java代码和实际示例。我们开始吧!

\n\n

对于Java开发者来说,ChatGPT是什么?

\n\n

ChatGPT是OpenAI开发的一种语言模型,能够理解和生成类似人类的文本。对于Java开发者来说,这意味着可以为您的应用程序添加以前需要复杂算法和大数据才能实现的功能:回答用户问题、生成内容、分析文本、编写代码等等。

\n\n

最大的优势是您不需要自己训练模型。OpenAI提供了一个现成的API,可以从Java应用程序中调用。您只需发送请求(提示)并接收响应。所有复杂的自然语言处理工作都由神经网络承担。

\n\n

准备工作:入门需要什么

\n\n

在编写代码之前,让我们准备好所有必要的东西。您需要:

\n\n
    \n
  • Java开发工具包(JDK)版本11或更高(推荐17/21)。
  • \n
  • 构建工具(Maven或Gradle)——用于管理依赖项。
  • \n
  • OpenAI API密钥——注册后可在个人账户中获取。
  • \n
  • HTTP客户端——我们将使用Java 11内置的HttpClient。
  • \n
\n\n

顺便说一下,处理JSON我们需要一个库。我推荐com.google.code.gson:gson。将其添加到您的pom.xml(对于Maven):

\n\n
<dependency>\n    <groupId>com.google.code.gson</groupId>\n    <artifactId>gson</artifactId>\n    <version>2.10.1</version>\n</dependency>
\n\n

对于Gradle:

\n\n
implementation 'com.google.code.gson:gson:2.10.1'
\n\n

准备好了吗?那我们继续。

\n\n

编写第一个与ChatGPT通信的Java代码

\n\n

我们的第一个示例是经典的聊天机器人。我们将向gpt-3.5-turbo模型发送请求并接收响应。这是我们将构建更复杂解决方案的基础。

\n\n

创建一个类ChatGPTClient.java:

\n\n
import java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport com.google.gson.JsonArray;\nimport com.google.gson.JsonObject;\n\npublic class ChatGPTClient {\n\n    private static final String API_URL = "https://api.openai.com/v1/chat/completions";\n    private static final String API_KEY = "您的_API_密钥"; // 别忘了替换!\n\n    public static String askChatGPT(String userMessage) throws Exception {\n        HttpClient client = HttpClient.newHttpClient();\n\n        // 构建JSON请求体\n        JsonObject requestBody = new JsonObject();\n        requestBody.addProperty("model", "gpt-3.5-turbo");\n\n        JsonArray messages = new JsonArray();\n        JsonObject systemMessage = new JsonObject();\n        systemMessage.addProperty("role", "system");\n        systemMessage.addProperty("content", "你是一个有用的Java助手。");\n        messages.add(systemMessage);\n\n        JsonObject userMsg = new JsonObj                

博客

书籍推荐