一、API接口的概念與分類

API(Application Programming Interface)是一種軟件接口,定義了不同應(yīng)用程序之間如何相互通信和交互的規(guī)則。其主要目的是提供應(yīng)用程序之間的交互標(biāo)準(zhǔn),使得不同軟件可以通過API進(jìn)行數(shù)據(jù)和功能的交換。常見的API接口包括Web API、數(shù)據(jù)庫API和操作系統(tǒng)API等。Web API是當(dāng)前應(yīng)用最廣泛的接口類型,它通過HTTP協(xié)議提供服務(wù),能夠返回JSON或XML等格式的數(shù)據(jù),支持跨平臺的交互和集成。

API接口的出現(xiàn)大大簡化了應(yīng)用程序的開發(fā)過程,開發(fā)者可以通過調(diào)用API來實(shí)現(xiàn)復(fù)雜的功能,而無需從頭開始開發(fā)。這種特性使得API成為現(xiàn)代軟件開發(fā)中的一個(gè)重要組成部分,尤其是在構(gòu)建微服務(wù)架構(gòu)和云計(jì)算環(huán)境中。

二、豆包API模型詳解

豆包API提供了一系列強(qiáng)大的模型,適用于不同的應(yīng)用場景。根據(jù)響應(yīng)速度和性價(jià)比的不同,用戶可以選擇最適合自己需求的模型。以下是豆包API模型的詳細(xì)介紹:

模型名稱 簡介
Doubao-lite-4k 該模型以極致的響應(yīng)速度為特點(diǎn),提供4k上下文窗口的推理和精調(diào),適合高效、靈活的場景應(yīng)用。
Doubao-lite-32k 提供更長的上下文窗口,適合需要處理更多數(shù)據(jù)的應(yīng)用場景。
Doubao-lite-128k 用于處理超大規(guī)模數(shù)據(jù)的應(yīng)用,提供128k上下文窗口的支持。
Doubao-pro-4k 主力模型,適合復(fù)雜任務(wù),如參考問答、創(chuàng)作和文本分類,支持4k上下文窗口。
Doubao-pro-32k 適合更復(fù)雜的任務(wù)處理,支持更長的上下文窗口。
Doubao-pro-128k 提供最強(qiáng)的處理能力,支持128k上下文窗口,適合復(fù)雜的角色扮演和創(chuàng)作場景。

這些模型的選擇應(yīng)根據(jù)用戶的具體需求和預(yù)算進(jìn)行。不同的模型在響應(yīng)速度、上下文長度以及處理能力上各有優(yōu)勢,用戶可以根據(jù)自己的應(yīng)用場景靈活選擇。

三、前置條件與準(zhǔn)備工作

創(chuàng)建推理接入點(diǎn)

要使用豆包API模型,首先需要?jiǎng)?chuàng)建一個(gè)推理接入點(diǎn)。推理接入點(diǎn)的創(chuàng)建有多個(gè)入口:

  1. 火山方舟平臺:登錄后在左側(cè)導(dǎo)航欄中選擇“模型推理”并點(diǎn)擊“創(chuàng)建推理接入點(diǎn)”。
  2. 模型廣場:在模型卡片詳情頁右上角找到“模型推理”按鈕。
  3. 模型倉庫:通過列表頁右側(cè)的操作欄點(diǎn)擊“模型推理”。

創(chuàng)建推理接入點(diǎn)

創(chuàng)建推理接入點(diǎn)時(shí),需要填寫接入點(diǎn)名稱、描述以及選擇具體的模型和版本。用戶還需選擇合適的購買方式,包括按Token付費(fèi)或按模型單元付費(fèi)兩種。

模型單元的概念

什么是模型單元

模型單元是指調(diào)用某個(gè)特定模型的TPM(Token per Minute)配額。當(dāng)選擇按模型單元付費(fèi)時(shí),用戶可以獲得比按Token付費(fèi)更大的并發(fā)量,而無需為Token消耗單獨(dú)付費(fèi)。這種模式適合需要高并發(fā)和穩(wěn)定資源的應(yīng)用場景。

建議購買模型單元的場景

支持模型單元的模型

豆包系列模型和一些開源模型支持模型單元,具體可以參考產(chǎn)品計(jì)費(fèi)的支持范圍。

使用說明

在配置推理接入點(diǎn)時(shí),可以選擇購買模型單元,并設(shè)置數(shù)量、時(shí)長以及是否自動(dòng)續(xù)費(fèi)。自動(dòng)續(xù)費(fèi)可以根據(jù)需要自定義配置,避免因未及時(shí)續(xù)費(fèi)而導(dǎo)致的業(yè)務(wù)中斷。

模型單元購買配置

四、SDK開發(fā)指南

4.1 Maven引入SDK

要開始使用豆包API進(jìn)行開發(fā),首先需要在項(xiàng)目中引入Maven依賴:

  com.volcengine
volcengine-java-sdk-ark-runtime
LATEST

4.2 代碼實(shí)現(xiàn)

以下是一個(gè)簡單的Java代碼示例,展示了如何使用豆包API進(jìn)行聊天模型的調(diào)用:

import com.volcengine.ark.runtime.model.completion.chat.ChatCompletionRequest;
import com.volcengine.ark.runtime.model.completion.chat.ChatMessage;
import com.volcengine.ark.runtime.model.completion.chat.ChatMessageRole;
import com.volcengine.ark.runtime.service.ArkService;

import java.util.ArrayList;
import java.util.List;

public class DouBaoDemo {

public static void main(String[] args) {
ArkService service = new ArkService("ARK_API_KEY");

System.out.println("n----- 標(biāo)準(zhǔn)請求 -----");
final List messages = new ArrayList();
final ChatMessage systemMessage = ChatMessage.builder().role(ChatMessageRole.SYSTEM).content("你是豆包,是由字節(jié)跳動(dòng)開發(fā)的 AI 人工智能助手").build();
final ChatMessage userMessage = ChatMessage.builder().role(ChatMessageRole.USER).content("請自我介紹?").build();
messages.add(systemMessage);
messages.add(userMessage);

ChatCompletionRequest chatCompletionRequest = ChatCompletionRequest.builder()
.model("${YOUR_ENDPOINT_ID}")
.messages(messages)
.build();

service.createChatCompletion(chatCompletionRequest).getChoices().forEach(choice -> System.out.println(choice.getMessage().getContent()));

System.out.println("n----- 流請求 -----");
final List streamMessages = new ArrayList();
final ChatMessage streamSystemMessage = ChatMessage.builder().role(ChatMessageRole.SYSTEM).content("你是豆包,是由字節(jié)跳動(dòng)開發(fā)的 AI 人工智能助手").build();
final ChatMessage streamUserMessage = ChatMessage.builder().role(ChatMessageRole.USER).content("請自我介紹?").build();
streamMessages.add(streamSystemMessage);
streamMessages.add(streamUserMessage);

ChatCompletionRequest streamChatCompletionRequest = ChatCompletionRequest.builder()
.model("${YOUR_ENDPOINT_ID}")
.messages(streamMessages)
.build();

service.streamChatCompletion(streamChatCompletionRequest)
.doOnError(Throwable::printStackTrace)
.blockingForEach(
choice -> {
if (choice.getChoices().size() > 0) {
System.out.print(choice.getChoices().get(0).getMessage().getContent());
}
}
);
service.shutdownExecutor();
}
}

通過以上代碼,開發(fā)者可以快速集成豆包API,實(shí)現(xiàn)智能聊天功能。需要注意的是,所有的API調(diào)用都需要提供正確的API Key和模型ID。

FAQ

1. 如何選擇適合的豆包API模型?

選擇適合的豆包API模型取決于您的應(yīng)用場景和預(yù)算。對于高效靈活的應(yīng)用場景,Doubao-lite系列是一個(gè)不錯(cuò)的選擇,而對于需要處理復(fù)雜任務(wù)的應(yīng)用,Doubao-pro系列則更為合適??梢愿鶕?jù)上下文窗口的需求和預(yù)算選擇相應(yīng)的模型。

2. 模型單元是什么?

模型單元是用于調(diào)用特定模型的TPM配額,通過按模型單元付費(fèi),用戶可以獲得更大的并發(fā)量和穩(wěn)定的資源保障。它適用于需要高并發(fā)和穩(wěn)定資源的場景。

3. 如何購買和管理模型單元?

模型單元可以在創(chuàng)建推理接入點(diǎn)時(shí)選擇購買。用戶可以配置購買的數(shù)量、時(shí)長以及是否自動(dòng)續(xù)費(fèi)。所有的購買和管理操作都可以在火山方舟平臺上進(jìn)行。

4. 使用豆包API需要注意什么?

使用豆包API時(shí),需要確保提供正確的API Key和模型ID。此外,在高并發(fā)場景下,建議使用模型單元以獲得穩(wěn)定的資源保障。

5. 如何進(jìn)行API Key的管理?

API Key的管理可以在API Key管理頁面進(jìn)行。用戶可以根據(jù)需要?jiǎng)?chuàng)建、更新或刪除API Key,以確保API調(diào)用的安全性和靈活性。

上一篇:

Perplexity 的 API Key:全面指南及其重要性

下一篇:

Doubao API 價(jià)格與使用指南
#你可能也喜歡這些API文章!

我們有何不同?

API服務(wù)商零注冊

多API并行試用

數(shù)據(jù)驅(qū)動(dòng)選型,提升決策效率

查看全部API→
??

熱門場景實(shí)測,選對API

#AI文本生成大模型API

對比大模型API的內(nèi)容創(chuàng)意新穎性、情感共鳴力、商業(yè)轉(zhuǎn)化潛力

25個(gè)渠道
一鍵對比試用API 限時(shí)免費(fèi)

#AI深度推理大模型API

對比大模型API的邏輯推理準(zhǔn)確性、分析深度、可視化建議合理性

10個(gè)渠道
一鍵對比試用API 限時(shí)免費(fèi)