文档

API 文档

兼容 OpenAI 接口协议,切换只需修改一行 base URL。

简介

Infer Mesh 是一个兼容 OpenAI 接口协议的 AI 模型聚合代理。通过统一的 API 端点,你可以访问来自 Anthropic、OpenAI、Google、DeepSeek 等多家供应商的模型,无需分别申请各家的 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。在控制台创建 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。