文件

API 文件

相容 OpenAI 介面協議,切換只需改一行 base URL。

簡介

Infer Mesh 是相容 OpenAI 的 AI 模型聚合代理。透過統一 API 端點,可存取多家供應商模型,無需分別申請 API Key。

完全相容

相容 OpenAI SDK,零改動切換

自動故障切換

上游不穩定時自動切換備援節點

透明計費

按 Token 實際消耗計費,公開定價

快速上手

只需兩步即可開始:建立 API Key,並把請求指向我們的端點。

Python(推薦)

bash
pip install openai
python
from 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

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

bash
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。可在控制台建立後填入請求頭:

bash
Authorization: Bearer sk-xxxxxxxxxxxxxxxxxxxxxxxx

請勿將 API Key 提交到公開代碼倉庫或暴露在前端。若有洩漏,請立即在控制台吊銷並重新生成。

Chat Completions

POST/v1/chat/completions

建立對話補全請求,完全相容 OpenAI Chat Completions API。

請求參數

參數類型必填說明
modelstring模型 ID,例如 claude-sonnet-4-6
messagesarray對話訊息陣列
streamboolean是否啟用串流輸出,預設 false
max_tokensinteger最大輸出 Token 數
temperaturenumber採樣溫度,0.0 - 2.0
toolsarray函式呼叫工具定義

Embeddings

POST/v1/embeddings

把文字轉成向量嵌入,可用於語義檢索、相似度匹配與 RAG 場景。

請求參數

參數類型必填說明
modelstring嵌入模型 ID,例如 text-embedding-3-small
inputstring | string[]待向量化內容,支援單筆與批量
encoding_formatstring回傳格式,常用 float
bash
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

GET/v1/models

取得所有可用模型清單。

bash
curl https://infermesh.io/v1/models \
  -H "Authorization: Bearer your-api-key"

Responses

POST/v1/responses

OpenAI Responses 相容端點,支援一次性回應與串流輸出。

請求參數

參數類型必填說明
modelstring模型 ID
inputstring | object | array輸入內容(常見為字串)
streamboolean是否串流回傳,預設 false
max_output_tokensinteger最大輸出 Token 數
bash
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)

POST/v1/messages

Anthropic Messages API 相容端點,支援 Claude Code 及其他 Anthropic 原生用戶端。鑑權使用 x-api-key 請求標頭(亦相容 Authorization: Bearer)。

優先使用 x-api-key 標頭,亦相容 Authorization: Bearer 方式。

請求參數

參數類型必填說明
modelstring模型 ID,如 claude-sonnet-4-6
messagesarray對話訊息陣列(Anthropic 格式)
systemstring系統提示詞(可選)
max_tokensinteger最大輸出 Token 數
streamboolean是否啟用串流輸出,預設 false
bash
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!"}
    ]
  }'
python
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 串流回應,適合即時顯示生成內容。

python
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),可接入外部工具與資料來源。

python
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:

json
{
  "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 轉發,享有統一存取控制、用量追蹤與多模型路由。

自動故障切換

當上游供應商錯誤或逾時時,系統會自動切換到其他可用節點重試,保障服務連續性。

bash
# Set fallback models in request body (priority order)
{
  "model": "claude-opus-4-6",
  "fallback_models": ["gpt-4o", "gemini-3-1-pro"],
  "messages": [...]
}

負載平衡

高併發場景可啟用負載平衡,將請求分發至多個後端節點以降低延遲。

限流說明

本服務不設任何限流限制,也不區分帳號等級。只要帳戶有餘額,即可無限制地調用 API。