原標題:簡單幾步,快速讓你的 Java 項目擁有 AI 能力
Java 是一種面向對象的編程語言,廣泛應用于企業(yè)級應用開發(fā)、Web 開發(fā)、移動應用開發(fā)(Android 應用主要使用 Java 或 Kotlin 編寫)、大數(shù)據(jù)處理等眾多領域。它是一門成熟、穩(wěn)定且不斷發(fā)展的編程語言,擁有龐大的開發(fā)者社區(qū)和豐富的學習資源。
在當前的 AI 時代下,如何能讓自己的項目快速擁有 AI 能力呢?今天要跟大家分享的是:使用豆包MarsCode AI 快速生成調用 Coze API 的能力,分分鐘讓自己的服務擁有更加強大的 AI 能力!
為什么是 Coze
Coze 提供多種大模型的接入和一定的免費額度,其成熟的 API,非常便于用戶的調用。
我們需要在 Coze 中發(fā)布一個 Bot 作為 API 的載體,同時申請一個訪問令牌,用于調用 API。
生產 Coze 的調用憑證
發(fā)布一個 Bot
Bot 發(fā)布為 API 服務之后,才能通過調用 API 的方式使用這個 Bot,例如查看 Bot 的基本設置、發(fā)起一個 Bot 對話等。
操作步驟如下:
- 進入目標空間,創(chuàng)建一個 Bot 或選擇一個已創(chuàng)建的 Bot;
- 在編排頁面,單擊發(fā)布;
- 在發(fā)布頁面,選擇 Agent as API 選項,然后單擊發(fā)布。
獲得 Bot Id
從瀏覽區(qū)復制出 bot_id
,這是調用 API 的參數(shù)之一。
獲取訪問令牌
調用 Coze API 時,你需要在 Header 中通過 Authorization 參數(shù)指定訪問令牌(Access token),Coze 服務端會根據(jù)訪問令牌驗證調用方的操作權限。調用 API 之前,你需要先獲得訪問令牌。
個人訪問令牌:通過控制臺生成的訪問令牌,有效期為一天以上,使用簡單便捷,適用于測試場景。你可以隨時調整令牌權限和有效期,到期后需要重新生成。
- 登錄 Coze 平臺。
- 在左側菜單欄下方,點擊個人頭像,并在彈出菜單中單擊 Coze API。
- 在 Coze API 頁面,進入授權 > 個人訪問令牌頁簽。
- 單擊添加新令牌。
- 在彈出的頁面完成以下配置,然后單擊確定。
- 復制并妥善保存?zhèn)€人訪問令牌。
- 生成的令牌僅在此時展示一次,請即刻復制并保存;
- 不要與他人共享你的個人訪問令牌,也不要在瀏覽器或其他客戶端代碼中暴露個人訪問令牌信息。
安裝豆包MarsCode AI 編程助手??
在啟動編碼工作前,我們需要先下載安裝 VSCode 并安裝豆包MarsCode 編程助手,VSCode 是一款輕量級但功能強大的代碼編輯器,插件豐富,界面友好,搭配免費的豆包MarsCode 編程助手,讓智能 AI 輔助你學習編碼,效率加倍!
配置 Java 環(huán)境
配置 Java 環(huán)境是學習 Java 的第一步,它確保你擁有正確的工具和依賴,以便順利編寫、運行和調試代碼。讓 AI 來告訴你該如何做吧!
打開豆包MarsCode 插件面板,根據(jù)你的設備機型提問 AI :“Mac 或 Windows 如何安裝 Java 環(huán)境?
”,后文將以 Mac 舉例。
根據(jù) AI 給出的回答,我們可以清晰地了解配置 Java 環(huán)境的每個步驟,在 AI 提供的命令行代碼塊上方點擊插入到終端,回車即可執(zhí)行。
生成調用 Coze API 的代碼
我們可以看到 Coze 官方的 API 樣例(https://sourl.cn/Xnaank)并不是 Java 格式,無法直接用在我們的 Java 項目中。
我們可以讓豆包MarsCode AI 來幫我們用 Java 寫出調用 Coze 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;
}
}
}
在運行代碼前,請將示例中的以下參數(shù)值替換成真實數(shù)據(jù):
- Authorization:生成的個人訪問令牌,上述步驟中已經獲取。
- bot_id:Bot ID。
進入 Bot 開發(fā)頁面,開發(fā)頁面 URL 中 Bot 參數(shù)后的數(shù)字 Bot ID。例如https://www.coze.cn/space/341****/bot/73428668*****
,bot ID 為73428668*****
。
替換后運行代碼,可以看到,已經成功獲取了數(shù)據(jù)返回。
Response Code: 200 Response Content: {
"data": {
"id": "7403713*****",
"conversation_id": "7403713254******",
"bot_id": "740333648******",
"created_at": 1723811327,
"last_error": {
"code": 0,
"msg": ""
},
"status": "in_progress"
},
"code": 0,
"msg": ""
}
至此,我們已經成功聯(lián)通了 Coze 的 AI Bot,可以直接在 Java 項目里使用 AI 能力!
感興趣的朋友們趕快使用豆包MarsCode 體驗下吧!點擊「豆包MarsCode」即可體驗~