開發者

模型 API

把任何 OpenAI Responses API 客戶端——包括 OpenAI Codex CLI——指向 Buda,用你現有的 sk_ API 金鑰呼叫 Buda 支援的任意模型。

把你的 OpenAI 客戶端指向 Buda。 POST /api/v1/responses 講的是 OpenAI Responses API 協議——OpenAI Codex CLI 以及其他較新的 OpenAI 生態工具預設就用這套協議。把工具的 base URL 設成 Buda,API 金鑰換成 Buda 的 sk_ 金鑰即可直接用,不用寫任何 Buda 專屬的對接程式碼。

這是原始模型 API——一次呼叫進,一次模型回覆出,按呼叫計費。如果你要的是帶自有 Drive 知識庫、會話歷史、多步驟執行環境的託管智能體,請看 API Claw(爪)

Base URL

https://buda.im/api/v1

把客戶端的 base URL 設成上面這個地址,API 金鑰換成 Buda 的 sk_ 金鑰——去身份認證建立一個。

支援的模型

Buda 用一個介面接入多個模型系列——依任務挑一個合適的,或交給 Buda 自動選。

模型系列
claude-haiku-4-5Claude
claude-sonnet-5Claude
claude-opus-5*Claude
claude-fable-5*Claude
gemini-3.1-proGemini
gemini-3.1-flashGemini
gemini-3.7-flashGemini
gpt-5.6-sol*GPT
gpt-5.6-terraGPT
gpt-5.6-lunaGPT
deepseek-v4-flash*DeepSeek
deepseek-v4-pro*DeepSeek
auto由 Buda 幫你選一個目前預設模型

* 僅限特定訂閱方案;沒有對應方案時請求這些模型會回退到預設模型。

model 欄位要填上面這些 Buda 自己的模型 ID,不是 OpenAI 自己的模型名(gpt-4o 等)——Buda 不是把請求代理給 OpenAI 的模型目錄,而是路由到它自己的模型目錄。

範例:一次簡單回覆

curl -X POST https://buda.im/api/v1/responses \
  -H "Authorization: Bearer sk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5",
    "input": "用恰好三個字打個招呼。"
  }'
{
  "id": "resp_...",
  "object": "response",
  "status": "completed",
  "model": "claude-sonnet-5",
  "output": [
    {
      "type": "message",
      "role": "assistant",
      "content": [{ "type": "output_text", "text": "你好朋友!" }]
    }
  ],
  "usage": { "input_tokens": 12, "output_tokens": 5, "total_tokens": 17 }
}

範例:串流輸出

"stream": true 就能邊生成邊拿到回覆,標準 OpenAI Responses API 的 SSE 事件(response.createdresponse.output_text.deltaresponse.completed 等):

curl -N -X POST https://buda.im/api/v1/responses \
  -H "Authorization: Bearer sk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5",
    "input": "用恰好三個字打個招呼。",
    "stream": true
  }'

範例:系統指令與多輪上下文

instructions 用來設這次呼叫的系統提示詞;input 除了單一字串,也能傳完整的訊息陣列,自己把先前幾輪對話帶過來:

curl -X POST https://buda.im/api/v1/responses \
  -H "Authorization: Bearer sk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5",
    "instructions": "用繁體中文回覆。",
    "input": [
      { "role": "user", "content": "Buda 是什麼?" },
      { "role": "assistant", "content": "Buda 是一個 AI 智能體平台。" },
      { "role": "user", "content": "用一句話概括一下。" }
    ]
  }'

每次呼叫都是無狀態的——Buda 不會在呼叫之間保留伺服端會話狀態(沒有 previous_response_id)。需要多輪歷史的話,像上面這樣自己把歷史傳回去。

搭配 OpenAI Codex CLI 使用

Codex CLI 現在要求自訂 provider 用 wire_api = "responses",正好就是這個介面講的協議。往 ~/.codex/config.toml 加一個 provider:

[model_providers.buda]
name = "buda"
base_url = "https://buda.im/api/v1"
wire_api = "responses"
env_key = "BUDA_API_KEY"
BUDA_API_KEY=sk_your_api_key codex --model claude-sonnet-5 -c model_provider=\"buda\"

暫不支援

這一版只涵蓋純文字輸入輸出。暫不支援:函式/工具呼叫、圖片或檔案輸入、GET /v1/models 模型清單介面。如果你的場景需要這些能力,先直接用上面表裡的模型 ID,並留意後續更新——這塊能力還在持續擴充。

計費

每次呼叫都從你自己帳戶的 AI 額度裡扣,跟 API Claw(爪)用的是同一個池子——不是共享配額。額度池的運作方式看什麼是額度;呼叫回傳 429 insufficient_quota 就代表該儲值了。

相關內容

On this page