AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

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

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

    阅读完需:约 9 分钟

大小:698.99K时长:03:58
简单几步,快速让你的 Java 项目拥有 AI 能力

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 体验下吧!

2024-12-11 16:009636

评论

发布
暂无评论
发现更多内容

高效程序员的45个习惯:敏捷开发修炼之道(4)

石云升

读书笔记 敏捷开发

机器学习算法之——逻辑回归(Logistic Regression)原理详解及Python实现

迈微AI研发社

学习 算法 逻辑回归 正则化 梯度下降

获奖公布丨程序员的七夕骚话该怎么讲?留下你爱的表白~

InfoQ写作社区官方

写作平台 话题讨论 七夕 热门活动

拼多多员工小便池拉屎,网易智能马桶屏蔽信号,360、搜狐厕所被监控,互联网公司厕所那些事!

程序员生活志

互联网 职场

给路灯按上“电话卡”,从此不仅只照明还给管理员“打电话”

华为云开发者联盟

人工智能 物联网 物联网化 华为云 路灯

Linux-技术专题-buffer/cache理解

码界西柚

必看的数据库使用规范

Simon

MySQL 技术规范

一个域名值百万, 现在不注册,未来价更高

华为云开发者联盟

备案 商标 DNS 域名配置 SSL证书

天地玄黄,宇宙洪荒

zhoo299

随笔杂谈

带你认识MySQL sys schema

Simon

MySQL

vivo web service:亿万级规模web服务引擎架构

vivo互联网技术

架构 Web 浏览器

机器学习算法之——卷积神经网络(CNN)原理讲解

迈微AI研发社

神经网络 学习 算法 CNN

我一个普通程序员,光靠GitHub打赏就年入70万,要不你也试试

程序员生活志

如何优雅的备份账号相关信息

Simon

MySQL

互联网公司建网站时最应该注意什么?

姜奋斗

互联网 网络安全 网站 网站搭建 互联网公司

三分钟看懂Python和Java的区别

程序员生活志

Java Python

前端科普系列(1):前端简史

vivo互联网技术

大前端 Web

从零开始的深度学习实用教程 | PyTorch官方推荐

迈微AI研发社

人工智能 学习 算法 教程 PyTorch

浅谈备受开发者好评的.NET core敏捷开发工具,讲讲LEARUN工作流引擎

Philips

牧羊少年奇幻之旅

W

读书笔记 感悟

区块链最激动人心的未来是什么

CECBC

大数据 区块链技术

MySQL常用函数介绍

Simon

MySQL mysql常用函数

大数据平台架构设计探究

vivo互联网技术

大数据 架构设计 数据平台

200 行代码就能骗人的首个聊天机器人

程序员生活志

编程 机器人

InnoDB 事务加锁分析

vivo互联网技术

MySQL 数据库 innodb

Java基础知识篇(2020最新版)准备放进收藏夹吃灰的勿进

简爱W

Java

【杭州】阿里巴巴搜索推荐事业部开发岗位招聘

iSausage

Java 阿里巴巴 推荐 搜索

机器学习算法之——隐马尔可夫模型原理详解及Python实现

迈微AI研发社

Python 学习 算法 隐马尔可夫模型 HMM

机器学习 | 卷积神经网络详解(二)——自己手写一个卷积神经网络

迈微AI研发社

Python 神经网络 学习 卷积神经网络 CNN

时间戳,这样用就对了

Simon

MySQL timestamp

2020中国RPA指数测评报告|T研究

人称T客

简单几步,快速让你的 Java 项目拥有 AI 能力_生成式 AI_Trae_InfoQ精选文章