Documentation Index
Fetch the complete documentation index at: https://docs.tokenlab.sh/llms.txt
Use this file to discover all available pages before exploring further.
概覽
TokenLab 揭露多種 API 格式,以便常見的開發工具、SDK 與框架透過最少的黏合程式碼完成整合。 本頁面刻意比行銷矩陣範圍更窄:- Supported 表示我們記錄了具體的設定路徑,且 TokenLab 揭露該路徑所期待的協定形態。
- 強原生路徑 表示該 repo 也有針對該協定家族的直接轉接器或請求格式證據。
- 盡力支援 表示整合可以運作,但上游客戶端不將此自訂 gateway 工作流程視為穩定契約。
不支援的欄位處理方式並不一致。在相容性路徑上,某些欄位會被忽略或正規化。在
/v1/responses 上,當該路徑無法保證請求的行為時,不支援的欄位可能會回傳明確的 400 或 503 錯誤。支援的 API 格式
| 端點 | 格式 | 使用案例 |
|---|---|---|
/v1/chat/completions | OpenAI Chat | 通用相容性 |
/v1/responses | OpenAI Responses | 有狀態對話 |
/v1/messages | Anthropic Messages | Claude 原生功能 |
/v1beta/models/:model:generateContent | Google Gemini | Gemini 原生功能 |
IDE 與 CLI 相容性
已記錄的工具路徑
| 工具 | 支援等級 | 格式 | 備註 |
|---|---|---|---|
| Cursor | 有限支援 | OpenAI 相容 | 適用於 BYOK 標準的 chat/editor 流程,但不是用來取代 Cursor 管理的功能(例如 Tab Completion) |
| Claude Code CLI | 強原生路徑 | Anthropic | 原生的 /v1/messages 路由,對 thinking 與 tool_choice 有轉接器覆蓋 |
| Codex CLI | 支援,但有模型/路徑限制 | OpenAI Responses | 將 /v1/responses 視為針對 Codex 特定工作流程的進階路徑;某些僅在 Responses 中的欄位並不保證在每個模型或路由路徑可用 |
| Gemini CLI | 盡力支援 / 實驗性 | Gemini | 自訂的 TokenLab base URL 流程並非穩定的上游契約 |
| OpenCode | Supported | OpenAI 相容 | 預設使用 OpenAI 相容的 provider;僅在您明確需要時,才改用以 Responses 為基礎的 provider |
其他 OpenAI 相容的編輯器與代理工具通常也可用相同的 base URL 模式,但此 repo 目前未維護 Windsurf、Aider、Continue.dev、Cline/Roo Code、GitHub Copilot 等客戶端的工具專屬回歸測試覆蓋。
設定範例
- Cursor
- Claude Code
- OpenCode
- Aider
- OpenAI 格式:
{ type: "function", function: { name, parameters } } - Anthropic 格式:
{ name, input_schema }(沒有type欄位)
SDK 相容性
已記錄的 SDK 與框架路徑
| SDK / 框架 | 語言 | 支援等級 | 備註 |
|---|---|---|---|
| OpenAI SDK | Python/JS/Go | 核心支援路徑 | Chat Completions 與 Embeddings 為預設記錄路徑;某些僅在 Responses 的欄位並不保證在每個模型與路由路徑可用 |
| Anthropic SDK | Python/JS | 強原生路徑 | 原生 Messages 路由,對工具、thinking 與 prompt caching 有直接證據 |
| Vercel AI SDK | TypeScript | 建議整合模式 | 優先使用 @ai-sdk/openai-compatible;僅在您明確想要 Responses 原生行為時使用 @ai-sdk/openai |
| LangChain | Python/JS | 支援標準介面 | ChatOpenAI 與 OpenAIEmbeddings 為預期範圍;供應商原生的擴充項目不在範圍內 |
| LlamaIndex | Python | 透過 OpenAILike 支援 | 對於第三方 gateway(例如 TokenLab)請使用 OpenAILike,而非內建的 OpenAI 類別 |
| Dify | - | 支援,但有範圍限制 | 適用於 OpenAI provider 與以 chat-completions 為導向的流程;不適合 Codex 專屬的 Responses 或 WebSocket 行為 |
Chat Completions 參數
核心參數
| 參數 | 類型 | 描述 |
|---|---|---|
model | string | 模型識別碼(必填) |
messages | array | 對話訊息(必填) |
max_tokens | integer | 最大輸出 tokens |
temperature | number | 抽樣溫度(0-2) |
top_p | number | Nucleus 抽樣(0-1) |
stream | boolean | 啟用串流 |
工具呼叫
Tool Choice 選項
| 格式 | 範例 | 描述 |
|---|---|---|
| String | "auto", "none", "required" | 簡單選擇 |
| OpenAI Object | { "type": "function", "function": { "name": "fn" } } | 強制指定特定函式 |
| Anthropic Object | { "type": "tool", "name": "fn", "disable_parallel_tool_use": true } | Anthropic 原生格式 |
進階參數
| 參數 | 類型 | 描述 |
|---|---|---|
stream_options | object | { include_usage: true } 用於 token 計數 |
reasoning_effort | string | "low", "medium", "high",用於具推理能力的 GPT-5 系列模型 |
service_tier | string | "auto" 或 "default" |
seed | integer | 決定性輸出 |
logprobs | boolean | 回傳對數機率 |
top_logprobs | integer | 回傳 top logprobs 的數量(0-20) |
logit_bias | object | token 偏差映射(-100 到 100) |
frequency_penalty | number | 重複懲罰(-2 到 2) |
presence_penalty | number | 主題出現懲罰(-2 到 2) |
stop | string/array | 停止序列 |
n | integer | 完成次數(1-128) |
user | string | 用戶識別以供追蹤 |
OpenAI 進階功能
| 參數 | 類型 | 描述 |
|---|---|---|
modalities | array | ["text", "audio"] 表示多模態 |
audio | object | 音訊輸出設定(voice, format) |
prediction | object | 預測輸出以加快完成速度 |
metadata | object | 用於追蹤的鍵值對 |
store | boolean | 是否儲存以便後續取回 |
提供者特定選項
Anthropic Messages 參數
核心參數
| 參數 | 類型 | 描述 |
|---|---|---|
model | string | 模型識別碼 |
messages | array | 對話訊息 |
max_tokens | integer | 最大輸出(最高可到 128000) |
system | string/array | system prompt |
stream | boolean | 啟用串流 |
工具呼叫
延伸思考
Responses API 參數
核心參數
| 參數 | 類型 | 描述 |
|---|---|---|
model | string | 模型識別碼 |
input | string/array | 輸入內容 |
instructions | string | 系統指示 |
max_output_tokens | integer | 最大輸出 tokens |
previous_response_id | string | 繼續對話用 |
進階參數
| 參數 | 類型 | 描述 |
|---|---|---|
truncation_strategy | string | "auto" 或 "disabled" |
include | array | ["reasoning.encrypted_content"] |
reasoning_effort | string | 用於推理模型 |
service_tier | string | 優先等級 |
Tool 格式
支援 OpenAI 與 Anthropic 工具格式:Gemini API 參數
核心參數
| 參數 | 類型 | 描述 |
|---|---|---|
contents | array | 對話內容 |
systemInstruction | object | system prompt |
generationConfig | object | 生成設定 |
Tools
安全設定
額外參數
| 參數 | 類型 | 描述 |
|---|---|---|
cachedContent | string | 快取內容參考 |
responseMimeType | string | "text/plain" 或 "application/json" |
responseSchema | object | 用於結構化輸出的 JSON schema |
串流
所有端點皆支援 Server-Sent Events (SSE) 串流:錯誤處理
TokenLab 回傳 OpenAI 相容的錯誤回應:最佳實務
對未知參數使用 passthrough
對未知參數使用 passthrough
所有 schema 都使用
.passthrough() — 未知參數會被轉發到上游提供者。為準確計費偏好使用 stream_options
為準確計費偏好使用 stream_options
對於串流回應,請啟用
stream_options.include_usage 以獲得準確的 token 計數。使用適當的 tool_choice 格式
使用適當的 tool_choice 格式
請對齊您所使用 SDK 的預期格式。TokenLab 同時接受 OpenAI 與 Anthropic 格式。