API 文件
相容 OpenAI 介面協議,切換只需改一行 base URL。
簡介
Infer Mesh 是相容 OpenAI 的 AI 模型聚合代理。透過統一 API 端點,可存取多家供應商模型,無需分別申請 API Key。
完全相容
相容 OpenAI SDK,零改動切換
自動故障切換
上游不穩定時自動切換備援節點
透明計費
按 Token 實際消耗計費,公開定價
快速上手
只需兩步即可開始:建立 API Key,並把請求指向我們的端點。
Python(推薦)
pip install openaifrom openai import OpenAI
client = OpenAI(
base_url="https://infermesh.io/v1",
api_key="your-api-key", # create in console
)
response = client.chat.completions.create(
model="claude-sonnet-4-6", # or any supported model ID
messages=[{"role": "user", "content": "Hello!"}],
)
print(response.choices[0].message.content)Node.js / TypeScript
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://infermesh.io/v1",
apiKey: "your-api-key",
});
const response = await client.chat.completions.create({
model: "gpt-4o",
messages: [{ role: "user", content: "Hello!" }],
});
console.log(response.choices[0].message.content);cURL
curl https://infermesh.io/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your-api-key" \
-d '{
"model": "deepseek-v3",
"messages": [
{"role": "user", "content": "Hello!"}
]
}'認證與鑑權
所有請求需在 HTTP Header 內帶上 API Key。可在控制台建立後填入請求頭:
Authorization: Bearer sk-xxxxxxxxxxxxxxxxxxxxxxxx請勿將 API Key 提交到公開代碼倉庫或暴露在前端。若有洩漏,請立即在控制台吊銷並重新生成。
Chat Completions
/v1/chat/completions建立對話補全請求,完全相容 OpenAI Chat Completions API。
請求參數
| 參數 | 類型 | 必填 | 說明 |
|---|---|---|---|
model | string | 是 | 模型 ID,例如 claude-sonnet-4-6 |
messages | array | 是 | 對話訊息陣列 |
stream | boolean | 否 | 是否啟用串流輸出,預設 false |
max_tokens | integer | 否 | 最大輸出 Token 數 |
temperature | number | 否 | 採樣溫度,0.0 - 2.0 |
tools | array | 否 | 函式呼叫工具定義 |
Embeddings
/v1/embeddings把文字轉成向量嵌入,可用於語義檢索、相似度匹配與 RAG 場景。
請求參數
| 參數 | 類型 | 必填 | 說明 |
|---|---|---|---|
model | string | 是 | 嵌入模型 ID,例如 text-embedding-3-small |
input | string | string[] | 是 | 待向量化內容,支援單筆與批量 |
encoding_format | string | 否 | 回傳格式,常用 float |
curl https://infermesh.io/v1/embeddings \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your-api-key" \
-d '{
"model": "text-embedding-3-small",
"input": "hello, vector search test"
}'Models List
/v1/models取得所有可用模型清單。
curl https://infermesh.io/v1/models \
-H "Authorization: Bearer your-api-key"Responses
/v1/responsesOpenAI Responses 相容端點,支援一次性回應與串流輸出。
請求參數
| 參數 | 類型 | 必填 | 說明 |
|---|---|---|---|
model | string | 是 | 模型 ID |
input | string | object | array | 否 | 輸入內容(常見為字串) |
stream | boolean | 否 | 是否串流回傳,預設 false |
max_output_tokens | integer | 否 | 最大輸出 Token 數 |
curl https://infermesh.io/v1/responses \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your-api-key" \
-d '{
"model": "gpt-4o",
"input": "Introduce yourself in one sentence.",
"stream": false
}'Messages(Anthropic)
/v1/messagesAnthropic Messages API 相容端點,支援 Claude Code 及其他 Anthropic 原生用戶端。鑑權使用 x-api-key 請求標頭(亦相容 Authorization: Bearer)。
優先使用 x-api-key 標頭,亦相容 Authorization: Bearer 方式。
請求參數
| 參數 | 類型 | 必填 | 說明 |
|---|---|---|---|
model | string | 是 | 模型 ID,如 claude-sonnet-4-6 |
messages | array | 是 | 對話訊息陣列(Anthropic 格式) |
system | string | 否 | 系統提示詞(可選) |
max_tokens | integer | 否 | 最大輸出 Token 數 |
stream | boolean | 否 | 是否啟用串流輸出,預設 false |
curl https://infermesh.io/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: your-api-key" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-sonnet-4-6",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Hello, Claude!"}
]
}'import anthropic
client = anthropic.Anthropic(
api_key="your-api-key",
base_url="https://infermesh.io",
)
message = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello, Claude!"}],
)
print(message.content[0].text)串流輸出
設定 stream: true 即可啟用 SSE 串流回應,適合即時顯示生成內容。
response = client.chat.completions.create(
model="claude-sonnet-4-6",
messages=[{"role": "user", "content": "Write a short poem about AI."}],
stream=True,
)
for chunk in response:
content = chunk.choices[0].delta.content
if content:
print(content, end="", flush=True)函式呼叫
支援 OpenAI 格式 Function Calling(Tool Use),可接入外部工具與資料來源。
tools = [
{
"type": "function",
"function": {
"name": "get_current_weather",
"description": "Get current weather for a specified city",
"parameters": {
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "City name, e.g. 'Seattle'",
}
},
"required": ["city"],
},
},
}
]
response = client.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": "What's the weather in Beijing today?"}],
tools=tools,
)Claude Code
Claude Code 是 Anthropic 官方 AI 程式設計助手工具。在設定檔(~/.claude/settings.json)中設定以下環境變數,即可將 Claude Code 的請求轉發至 Infer Mesh:
{
"autoUpdatesChannel": "latest",
"env": {
"ANTHROPIC_AUTH_TOKEN": "your-api-key",
"ANTHROPIC_BASE_URL": "https://infermesh.io",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4.5",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4.6",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-4.6"
}
}設定完成後,Claude Code 的所有請求將透過 Infer Mesh 轉發,享有統一存取控制、用量追蹤與多模型路由。
自動故障切換
當上游供應商錯誤或逾時時,系統會自動切換到其他可用節點重試,保障服務連續性。
# Set fallback models in request body (priority order)
{
"model": "claude-opus-4-6",
"fallback_models": ["gpt-4o", "gemini-3-1-pro"],
"messages": [...]
}負載平衡
高併發場景可啟用負載平衡,將請求分發至多個後端節點以降低延遲。
限流說明
本服務不設任何限流限制,也不區分帳號等級。只要帳戶有餘額,即可無限制地調用 API。