相容 OpenAI Chat Completions 協議, 一套介面呼叫 Claude / Gemini 等主流大模型
POST /v1/chat/completions
鉴权: {'type': 'bearer', 'prefix': 'sk-', 'description': 'API Key, 使用 `Authorization: Bearer sk-xxx` 鉴权'}
統一的對話補全介面, 請求 / 響應結構與 OpenAI 完全一致。已有使用 OpenAI SDK 的專案只需替換 `baseURL` 即可切換。 - 支援 `stream: true` SSE 流式推送 - `messages[].content` 支援字串或多模態陣列 (文本 + 圖片 URL) - 工具呼叫 (tools / function calling) 同 OpenAI 規範
model | string | required | 模型 ID, 如 `claude-opus-4-7` / `claude-sonnet-4-6` / `gemini-2.5-pro` / `gemini-2.5-flash` |
messages | array | required | 對話訊息陣列, 按時間順序傳入 system / user / assistant |
role | string | required | |
content | string | required | 訊息內容 (字串, 或多模態陣列 `[{"type":"text","text":"..."},{"type":"image_url","image_url":{"url":"..."}}]`) |
name | string | (可選) 訊息作者標識 | |
tool_call_id | string | (僅 role=tool) 對應的 tool_call id | |
temperature | number | 取樣溫度, 值越高輸出越隨機, 建議 0.7 左右。與 `top_p` 二選一 | |
top_p | number | 核取樣 | |
max_tokens | integer | 生成 token 上限 | |
stream | boolean | 是否以 SSE 流式返回 | |
stop | array | 停止序列, 最多 4 個 | |
presence_penalty | number | ||
frequency_penalty | number | ||
tools | array | 工具定義陣列 (function calling) | |
response_format | object | (可選) 響應格式約束, 如 `{"type":"json_object"}` 強制 JSON 輸出 | |
user | string | (可選) 終端使用者標識 |
200 — 返回 assistant 訊息curl https://api.router.ai/v1/chat/completions \
-H "Authorization: Bearer sk-xxx" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-4-6",
"messages": [
{"role": "system", "content": "你是一位资深的技术写作助手"},
{"role": "user", "content": "用三句话介绍 Redis"}
],
"temperature": 0.7,
"max_tokens": 512
}'