简单几步,快速让你的 Java 项目拥有 AI 能力

  • 2024-12-11
    北京
  • 本文字数:2692 字

    阅读完需:约 9 分钟

Java 是一种面向对象的编程语言,广泛应用于企业级应用开发、Web 开发、移动应用开发(Android 应用主要使用 Java 或 Kotlin 编写)、大数据处理等众多领域。它是一门成熟、稳定且不断发展的编程语言,拥有庞大的开发者社区和丰富的学习资源。

在当前的 AI 时代下,如何能让自己的项目快速拥有 AI 能力呢?今天要跟大家分享的是:使用豆包MarsCode AI 快速生成调用扣子 API 的能力,分分钟让自己的服务拥有更加强大的 AI 能力!

为什么是扣子

扣子提供多种大模型的接入和一定的免费额度,其成熟的 API,非常便于用户的调用。我们需要在扣子中发布一个 Bot 作为 API 的载体,同时申请一个访问令牌,用于调用 API。

生产扣子的调用凭证

发布一个 Bot

Bot 发布为 API 服务之后,才能通过调用 API 的方式使用这个 Bot,例如查看 Bot 的基本设置、发起一个 Bot 对话等。 

操作步骤如下: 

  • 进入目标空间,创建一个 Bot 或选择一个已创建的 Bot;

  • 在编排页面,单击发布;

  • 在发布页面,选择 Agent as API 选项,然后单击发布。

获得 Bot Id

从浏览区复制出 bot_id,这是调用 API 的参数之一。

获取访问令牌

调用扣子 API 时,你需要在 Header 中通过 Authorization 参数指定访问令牌(Access token),扣子服务端会根据访问令牌验证调用方的操作权限。调用 API 之前,你需要先获得访问令牌。 

个人访问令牌:通过控制台生成的访问令牌,有效期为一天以上,使用简单便捷,适用于测试场景。你可以随时调整令牌权限和有效期,到期后需要重新生成。 

  1. 登录扣子平台。

  2. 在左侧菜单栏下方,点击个人头像,并在弹出菜单中单击扣子 API。

  3. 在扣子 API 页面,进入授权 > 个人访问令牌页签。

  4. 单击添加新令牌。

  5. 在弹出的页面完成以下配置,然后单击确定。

 

6.  复制并妥善保存个人访问令牌。 

  • 生成的令牌仅在此时展示一次,请即刻复制并保存;

  • 不要与他人共享你的个人访问令牌,也不要在浏览器或其他客户端代码中暴露个人访问令牌信息。 

安装豆包 MarsCode AI 编程助手‍‍

在启动编码工作前,我们需要先下载安装 VSCode 并安装豆包MarsCode 编程助手,VSCode 是一款轻量级但功能强大的代码编辑器,插件丰富,界面友好,搭配免费的豆包MarsCode 编程助手,让智能 AI 辅助你学习编码,效率加倍!

配置 Java 环境

配置 Java 环境是学习 Java 的第一步,它确保你拥有正确的工具和依赖,以便顺利编写、运行和调试代码。让 AI 来告诉你该如何做吧!

打开豆包MarsCode插件面板,根据你的设备机型提问 AI :“Mac 或 Windows 如何安装 Java 环境?”,后文将以 Mac 举例。

根据 AI 给出的回答,我们可以清晰地了解配置 Java 环境的每个步骤,在 AI 提供的命令行代码块上方点击插入到终端,回车即可执行。

生成调用扣子 API 的代码

我们可以看到扣子官方的 API 样例(https://sourl.cn/Xnaank)并不是 Java 格式,无法直接用在我们的 Java 项目中。

我们可以让豆包 MarsCode AI 来帮我们用 Java 写出调用扣子 API 的代码。

import java.io.BufferedReader;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStreamReader;import java.net.HttpURLConnection;import java.net.URL;public class CurlToJava {    public static void main(String[] args) {        String url = "https://api.coze.cn/v3/chat";        String token = "pat_OYDacMzM3WyOWV3Dtj2bHRMymzxP****";        String data = "{"                + "\"bot_id\": \"73428668*****\","                + "\"user_id\": \"123123***\","                + "\"stream\": false,"                + "\"auto_save_history\":true,"                + "\"additional_messages\":[{"                + "\"role\":\"user\","                + "\"content\":\"早上好\","                + "\"content_type\":\"text\""                + "}]"                + "}";        sendPostRequest(url, token, data);    }    public static String sendPostRequest(String url, String token, String data) {        try {            URL obj = new URL(url);            HttpURLConnection con = (HttpURLConnection) obj.openConnection();            con.setRequestMethod("POST");            con.setRequestProperty("Authorization", "Bearer " + token);            con.setRequestProperty("Content-Type", "application/json");            con.setDoOutput(true);            DataOutputStream wr = new DataOutputStream(con.getOutputStream());            wr.writeBytes(data);            wr.flush();            wr.close();            int responseCode = con.getResponseCode();            System.out.println("Response Code: " + responseCode);            BufferedReader in = new BufferedReader(                    new InputStreamReader(con.getInputStream()));            String inputLine;            StringBuffer response = new StringBuffer();            while ((inputLine = in.readLine())!= null) {                response.append(inputLine);            }            in.close();            String responseContent = response.toString();            System.out.println("Response Content: " + responseContent);            return responseContent;        } catch (IOException e) {            e.printStackTrace();            return null;        }    }}
复制代码

在运行代码前,请将示例中的以下参数值替换成真实数据: 

  • Authorization:生成的个人访问令牌,上述步骤中已经获取。

  • bot_id:Bot ID。

    进入 Bot 开发页面,开发页面 URL 中 Bot 参数后的数字 Bot ID。例如 https://www.coze.cn/space/341****/bot/73428668*****,bot ID 为 73428668*****。

替换后运行代码,可以看到,已经成功获取了数据返回。

Response Code: 200Response Content: {    "data":    {        "id": "7403713*****",        "conversation_id": "7403713254******",        "bot_id": "740333648******",        "created_at": 1723811327,        "last_error":        {            "code": 0,            "msg": ""        },        "status": "in_progress"    },    "code": 0,    "msg": ""}
复制代码

至此,我们已经成功联通了扣子的 AI Bot,可以直接在 Java 项目里使用 AI 能力!

感兴趣的朋友们赶快使用豆包MarsCode 体验下吧!