Claude Opus 5.5 已在 SeedRouter 上線
SeedRouter Docs

Kimi K3

Kimi K3 API 串接文件:透過官方 Chat Completions、Responses 或 Anthropic Messages API 呼叫 Kimi K3,支援 100 萬 token 上下文視窗,始終推理,推理強度由你決定。

View Markdown

Kimi K3 是 Moonshot AI 針對長週期程式開發、代理與知識工作推出的旗艦模型。它一律先推理再回答,推理的深淺由 reasoning_effort 決定。傳送官方 Kimi 請求到 SeedRouter:更改基礎 URL 和 API 金鑰,保留請求主體。

模型 ID

模型 ID上下文視窗最大輸出推理強度預設推理強度
kimi-k31,048,576 tokens1,048,576 tokens(預設 131,072)low、high、maxmax

輸入:文字和圖片。輸出:文字。查看模型頁面了解目前價格。

快速範例

curl https://api.seedrouter.ai/v1/chat/completions \
  -H "Authorization: Bearer $SEEDROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "kimi-k3",
    "messages": [{"role": "user", "content": "Explain context caching in one sentence."}]
  }'

端點

格式方法和路徑驗證方式
Chat CompletionsPOST https://api.seedrouter.ai/v1/chat/completionsAuthorization: Bearer <key>
ResponsesPOST https://api.seedrouter.ai/v1/responsesAuthorization: Bearer <key>
Anthropic MessagesPOST https://api.seedrouter.ai/v1/messagesx-api-key: <key> 或 Authorization: Bearer <key>,再加上 anthropic-version

三個端點都回傳 Kimi 的官方回應格式,串流與非串流皆可。請把 API 金鑰保存在伺服器端程式碼中。

參數

Chat Completions 欄位:

名稱型別必填預設值說明
modelstring是—kimi-k3。
messagesobject[]是—文字訊息;圖片以 image_url 片段傳入(見圖片輸入)。
max_completion_tokensinteger否131072最多 1048576。包括推理 token。max_tokens 是同一上限的舊名稱,已棄用。
reasoning_effortenum否maxlow、high 或 max。其他任何值都會回傳 400。
stopstring or string[]否—最多 5 個序列。
response_formatobject否{"type": "text"}text、json_object 或 json_schema(需帶 json_schema.name 與 json_schema.schema)。
toolsobject[]否—函式工具。
tool_choicestring or object否autoauto 與 none 會生效。required 和指定函式會被接受,但不會強制呼叫。
streamboolean否false以伺服器傳送事件的形式串流。
stream_options.include_usageboolean否false加上最後一個用量資料塊。
prompt_cache_optionsobject否{"mode": "implicit", "ttl": "5m"}mode:implicit。ttl:5m 或 1h。
prompt_cache_key、safety_identifier、prediction—否—接受。
logprobs、top_logprobs—否—接受(top_logprobs 為 0–20),但不會回傳對數機率。
temperature、top_p、n、presence_penalty、frequency_penalty—否1.0、0.95、1、0、0固定值。其他任何值都會回傳 400,請不要傳這些欄位。

推理與推理強度

Kimi K3 一律推理,無法關閉。reasoning_effort 決定推理量:max(預設)用於最困難的工作,high 適合大多數任務,low 適合快速、簡單的步驟。推理內容在 reasoning_content 中回傳,與 content 並列。推理 token 按輸出 token 計費,並計入 max_completion_tokens。

在多輪對話和工具呼叫中,請把每則 assistant 訊息原樣傳回,包括其中的 reasoning_content。

圖片輸入

Kimi K3 只接受 base64 data URI 形式的圖片。公開圖片 URL 不被接受,會回傳 400,與 Kimi 自家的 API 相同。

{"role": "user", "content": [
  {"type": "image_url", "image_url": {"url": "data:image/png;base64,<BASE64_DATA>"}},
  {"type": "text", "text": "Describe this image."}
]}

上下文快取

快取是自動的:重複的提示前綴會從快取讀取,按較低的快取輸入費率計費。prompt_cache_options.ttl 決定寫入的前綴在快取中保留多久,5m(預設)或 1h;若兩次請求相隔超過五分鐘,請選擇 1h。usage.prompt_tokens_details.cached_tokens 回報從快取讀取的 token,cache_write_tokens 回報該請求計費的快取寫入。

計費維度

查看模型頁面上的目前費率。請求依使用的 token 計費:

  • 輸入 token、
  • 快取輸入 token(cached_tokens)、
  • 快取寫入 token(cache_write_tokens)、
  • 輸出 token(包括推理)。

價格不隨上下文長度變動。費用依完成回應所回報的 usage 計算。失敗的請求不計費。你的帳戶使用記錄會顯示每個請求的確切費用。

輸出

非串流 Chat Completions 請求回傳:

{
  "id": "chatcmpl-...",
  "object": "chat.completion",
  "created": 1790585961,
  "model": "kimi-k3",
  "choices": [{
    "index": 0,
    "finish_reason": "stop",
    "message": {"role": "assistant", "reasoning_content": "...", "content": "..."}
  }],
  "usage": {
    "prompt_tokens": 90,
    "completion_tokens": 57,
    "total_tokens": 147,
    "cached_tokens": 90,
    "prompt_tokens_details": {"cached_tokens": 90, "cache_write_tokens": 0}
  }
}

使用 "stream": true 時,每個資料塊都帶有一個 delta,內容是 reasoning_content 或 content。啟用 stream_options.include_usage 時,在 data: [DONE] 之前會有最後一個 choices 陣列為空的資料塊帶有用量資訊。

Responses API 與 Codex

POST /v1/responses 接受 Responses 請求主體:input、instructions、max_output_tokens、reasoning.effort(low、high、max)、text.format(json_schema)、tools(function 與 apply_patch 自訂工具)、tool_choice、stream、prompt_cache_options、prompt_cache_key 與 safety_identifier。推理內容以帶有 summary_text 片段的 reasoning 項目回傳,串流則帶有從 response.created 到 response.completed 的編號事件。這個 API 是無狀態的:previous_response_id 與 conversation 會被忽略,因此請在 input 中傳送完整對話。web_search 工具會被忽略。

要在 Codex 中使用 Kimi K3,請在 ~/.codex/config.toml 中新增一個 provider,並設定 SEEDROUTER_API_KEY:

model = "kimi-k3"
model_provider = "seedrouter"
model_context_window = 1048576

[model_providers.seedrouter]
name = "SeedRouter"
base_url = "https://api.seedrouter.ai/v1"
env_key = "SEEDROUTER_API_KEY"
wire_api = "responses"

Anthropic Messages 格式

為 Anthropic Messages API 撰寫的程式碼也能呼叫 Kimi K3:把 Messages 請求主體以 "model": "kimi-k3" 傳送到 /v1/messages。system、max_tokens、tools、tool_choice(auto、none)與 output_config.effort(low、high、max)會生效,metadata.user_id 與 cache_control 會被接受。stop_sequences(最多 5 個)、tool_choice any 與 output_config.format 會被接受,但沒有效果。推理內容以 thinking 區塊回傳。圖片以 base64 來源傳入。

錯誤

錯誤使用 {"error": {"code": ..., "message": "..."}} 格式(Messages 端點使用 Anthropic 的錯誤格式)。code 是來自共用錯誤目錄的代碼。失敗的請求不計費。

實用建議

  • 從 high 推理強度開始,只有最困難的問題才改用 max;low 適合快速、簡單的步驟。
  • 把 max_completion_tokens 設得足夠高,同時容納推理與答案:它是兩者共用的預算。
  • 將長的、重複使用的上下文放在提示開頭,讓後續請求從快取讀取;請求間隔較長時使用 1h TTL。

相關