Chat Completions
Markdown模型以 OpenAI 格式回應對話。這是最常見的格式,幾乎所有用戶端都支援。
完整指南
https://api.ailoot.ai/v1/chat/completionscurl https://api.ailoot.ai/v1/chat/completions \
-H "Authorization: Bearer $AILOOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-5-5",
"messages": [
{"role": "user", "content": "用兩句話解釋 API 是什麼。"}
]
}' from openai import OpenAI
import os
client = OpenAI(max_retries=0,
base_url="https://api.ailoot.ai/v1",
api_key=os.environ["AILOOT_API_KEY"],
)
resp = client.chat.completions.create(
model="claude-sonnet-5-5",
messages=[{"role": "user", "content": "用兩句話解釋 API 是什麼。"}],
)
print(resp.choices[0].message.content)import OpenAI from "openai";
const client = new OpenAI({ maxRetries: 0,
baseURL: "https://api.ailoot.ai/v1",
apiKey: process.env.AILOOT_API_KEY,
});
const resp = await client.chat.completions.create({
model: "claude-sonnet-5-5",
messages: [{ role: "user", content: "用兩句話解釋 API 是什麼。" }],
});
console.log(resp.choices[0].message.content);{
"id": "chatcmpl-8f2c…",
"object": "chat.completion",
"created": 1790812800,
"model": "claude-sonnet-5-5",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "API 是一套約定,讓一個程式能請另一個程式執行工作…"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 21,
"completion_tokens": 48,
"total_tokens": 69
}
}身分驗證
- Authorizationheader必填
金鑰格式為
Bearer sk-…。也可使用標頭x-api-key或x-goog-api-key。
請求本文
- modelstring必填
模型 ID,取自目錄,例如
claude-sonnet-5-5。模型必須支援 OpenAI Chat 格式。 - messagesarray必填
對話紀錄:物件包含
role(system,developer,user,assistant,tool)與content—字串或內容片段陣列 (文字、image_url). - streamboolean選填
回應採用 Server-Sent Events 格式,預設為
false。付費文字回應會在費用計算完成後以單一區塊送達,不會逐字送出。 - stream_optionsobject選填
{"include_usage": true}—將最終usage作為串流的最後事件送回。 - max_tokensinteger選填
最大回應 token 數。新名稱為—
max_completion_tokens。若未指定上限,Ailoot 會填入 4096 (若模型的回應上限更低,則採用較低值;Grok 另有自己的上限)。需要較長回應時,請明確設定上限,否則回應會在 4096 個 token 時停止,並帶有finish_reason: "length"。上限會納入預留金額:上限越高,所需的可用餘額越多。 - temperaturenumber選填
回應的隨機程度,通常介於 0 到 2。推理模型可能會忽略此設定。
- top_pnumber選填
temperature 的替代設定:選取 token 時使用的機率質量比例。
- stopstring | array選填
觸發生成停止的字串。
- toolsarray選填
模型可呼叫的函式描述。格式與OpenAI 相同:
{"type": "function", "function": {...}}。 - tool_choicestring | object選填
auto,none,required或指定的函式。 - response_formatobject選填
{"type": "json_object"}或{"type": "json_schema", ...}用於結構化回應—僅限模型支援時。 - reasoning_effortstring選填
推理模型的推理深度:
low,medium,high。
其餘 OpenAI 參數會原樣傳送;特定模型是否支援,由模型開發者決定。
回應
- choices[].messageobject
模型回應:
content,呼叫工具時為—tool_calls。 - choices[].finish_reasonstring
stop—回應已結束;length—已達到max_tokens(這類回應仍為完整回應,並依實際用量計費);tool_calls—模型正在呼叫工具。 - usageobject
prompt_tokens,completion_tokens,total_tokens—依這些數值計算扣款。