FIM Gate 文档
使用指南

快速开始

从创建 API Key 到发出第一个请求的完整流程,覆盖 OpenAI、Claude、Gemini 三种调用方式。

本页带你在几分钟内完成第一次调用。

第一步:创建 API Key

  1. 登录 FIM Gate 控制台。
  2. 进入密钥管理页面,新建一个 API Key。
  3. 复制并妥善保存,密钥即请求凭证,泄露后请立即停用重建。

详细操作见密钥与令牌。下文示例中的 $FIM_API_KEY 均指这个密钥。

第二步:选择模型

实时模型列表与价格见价格页。把示例中的 model 字段换成你要用的模型 ID 即可。

第三步:发出请求

OpenAI 兼容接口

适用于全部模型,Base URL 为 https://api.gate.fim.ai/v1,认证方式为 Authorization: Bearer 请求头。

文本对话
curl https://api.gate.fim.ai/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $FIM_API_KEY" \
  -d '{
    "model": "gpt-4.1",
    "messages": [
      {"role": "user", "content": "解释一下什么是幂等性,举一个 HTTP 的例子"}
    ]
  }'
图像理解(image_url)
curl https://api.gate.fim.ai/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $FIM_API_KEY" \
  -d '{
    "model": "gpt-4.1",
    "messages": [
      {
        "role": "user",
        "content": [
          {"type": "text", "text": "这张图的主体是什么?"},
          {"type": "image_url", "image_url": {"url": "https://example.com/photo.jpg"}}
        ]
      }
    ]
  }'
内置联网搜索(web_search_options)
curl https://api.gate.fim.ai/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $FIM_API_KEY" \
  -d '{
    "model": "gpt-4o-search-preview",
    "web_search_options": {},
    "messages": [
      {"role": "user", "content": "最近一周 AI 领域有什么值得关注的进展?"}
    ]
  }'
函数调用(tools)
curl https://api.gate.fim.ai/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $FIM_API_KEY" \
  -d '{
    "model": "gpt-4.1",
    "messages": [
      {"role": "user", "content": "查一下上海明天的天气"}
    ],
    "tools": [
      {
        "type": "function",
        "function": {
          "name": "query_weather",
          "description": "按城市查询天气预报",
          "parameters": {
            "type": "object",
            "properties": {
              "city": {"type": "string", "description": "城市名,如 Shanghai"},
              "unit": {"type": "string", "enum": ["celsius", "fahrenheit"]}
            },
            "required": ["city"]
          }
        }
      }
    ],
    "tool_choice": "auto"
  }'

使用官方 SDK 时,只需把 base_url 指向 FIM Gate:

Python(openai 库)
from openai import OpenAI

client = OpenAI(
    api_key="sk-...",  # 你的 FIM Gate API Key
    base_url="https://api.gate.fim.ai/v1",
)

resp = client.chat.completions.create(
    model="gpt-4.1",
    messages=[{"role": "user", "content": "解释一下什么是幂等性"}],
)
print(resp.choices[0].message.content)
Node.js(openai 库)
import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.FIM_API_KEY,
  baseURL: "https://api.gate.fim.ai/v1",
});

const resp = await client.chat.completions.create({
  model: "gpt-4.1",
  messages: [{ role: "user", content: "解释一下什么是幂等性" }],
});
console.log(resp.choices[0].message.content);

Claude 原生接口

端点为 https://api.gate.fim.ai/v1/messages,认证使用 x-api-key 请求头。注意:该入口只接受 Claude 系列模型,其他模型请走 OpenAI 兼容接口。

文本对话
curl https://api.gate.fim.ai/v1/messages \
  -H "Content-Type: application/json" \
  -H "x-api-key: $FIM_API_KEY" \
  -d '{
    "model": "claude-sonnet-4-6",
    "max_tokens": 1024,
    "messages": [
      {"role": "user", "content": "用三句话讲清楚 TCP 三次握手"}
    ]
  }'
图像输入(base64)
curl https://api.gate.fim.ai/v1/messages \
  -H "Content-Type: application/json" \
  -H "x-api-key: $FIM_API_KEY" \
  -d '{
    "model": "claude-sonnet-4-6",
    "max_tokens": 1024,
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "image",
            "source": {"type": "base64", "media_type": "image/jpeg", "data": "<BASE64>"}
          },
          {"type": "text", "text": "图里有什么?"}
        ]
      }
    ]
  }'

Anthropic 官方 SDK 把 base_url 设为 https://api.gate.fim.ai 即可,SDK 会自动拼出 /v1/messages:

Python(anthropic 库)
import anthropic

client = anthropic.Anthropic(
    api_key="sk-...",  # 你的 FIM Gate API Key
    base_url="https://api.gate.fim.ai",
)

msg = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    messages=[{"role": "user", "content": "用三句话讲清楚 TCP 三次握手"}],
)
print(msg.content)

Gemini 原生接口

端点形如 https://api.gate.fim.ai/v1beta/models/{model}:generateContent,认证使用 x-goog-api-key 请求头;流式调用使用 :streamGenerateContent?alt=sse。该入口只接受 Gemini 系列模型。

文本对话
curl -X POST "https://api.gate.fim.ai/v1beta/models/gemini-2.5-flash:generateContent" \
  -H "Content-Type: application/json" \
  -H "x-goog-api-key: $FIM_API_KEY" \
  -d '{
    "contents": [
      {"role": "user", "parts": [{"text": "什么是布隆过滤器?"}]}
    ]
  }'
图像输入(inlineData)
curl -X POST "https://api.gate.fim.ai/v1beta/models/gemini-2.5-flash:generateContent" \
  -H "Content-Type: application/json" \
  -H "x-goog-api-key: $FIM_API_KEY" \
  -d '{
    "contents": [
      {
        "role": "user",
        "parts": [
          {"inlineData": {"mimeType": "image/png", "data": "<BASE64>"}},
          {"text": "描述这张图"}
        ]
      }
    ]
  }'

Google GenAI SDK 通过 http_options 指定 Base URL:

Python(google-genai 库)
from google import genai
from google.genai import types

client = genai.Client(
    api_key="sk-...",  # 你的 FIM Gate API Key
    http_options=types.HttpOptions(base_url="https://api.gate.fim.ai"),
)

resp = client.models.generate_content(
    model="gemini-2.5-flash",
    contents="什么是布隆过滤器?",
)
print(resp.text)

常见问题

返回 401 / 鉴权失败? 确认密钥完整复制(以 sk- 开头)、请求头格式正确:OpenAI 兼容接口用 Authorization: Bearer,Claude 用 x-api-key,Gemini 用 x-goog-api-key。

提示模型不存在? 检查模型 ID 拼写是否与价格页的模型列表一致;另外 Claude / Gemini 原生入口只接受各自家族的模型,跨家族调用请统一走 https://api.gate.fim.ai/v1。

客户端填了地址但连不上? 不同客户端拼接路径的方式不同,依次尝试 https://api.gate.fim.ai、https://api.gate.fim.ai/v1、https://api.gate.fim.ai/v1/chat/completions 三种写法。

想用流式输出? OpenAI 兼容接口在请求体加 "stream": true;Gemini 原生接口改用 :streamGenerateContent?alt=sse 端点。