Skip to content

Anthropic 兼容接口

Anthropic 兼容接口使用 Claude Messages 格式,适合已经接入 Anthropic SDK、Claude Code、Cline 或其他 Claude 原生协议工具的项目。

接口信息

项目
请求方法POST
完整地址https://api.gemai.cc/v1/messages
内容类型application/json
常用鉴权头x-api-key: sk-你的令牌
协议版本头anthropic-version: 2023-06-01

基础对话

Messages 调用

INFO

Claude Messages 格式中,系统提示词通常放在顶层 system 字段,用户和助手历史放在 messages 数组中。

bash
curl --location 'https://api.gemai.cc/v1/messages' \
  --header 'x-api-key: sk-你的令牌' \
  --header 'anthropic-version: 2023-06-01' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "claude-sonnet-4-6",
    "max_tokens": 1024,
    "system": "你是一个有帮助的助手。",
    "messages": [
      {
        "role": "user",
        "content": "请用一句话介绍 Claude Messages 格式。"
      }
    ]
  }'

多轮对话

INFO

多轮对话时,把历史中的 userassistant 消息按时间顺序传入。上下文越长,消耗的 tokens 越多。

json
{
  "model": "claude-sonnet-4-6",
  "max_tokens": 1024,
  "messages": [
    {
      "role": "user",
      "content": "你好"
    },
    {
      "role": "assistant",
      "content": "你好,有什么可以帮你?"
    },
    {
      "role": "user",
      "content": "请继续用中文回答。"
    }
  ]
}

图片输入

INFO

支持视觉能力的 Claude 模型可以在 content 数组中传入图片。图片通常使用 Base64,并声明对应的媒体类型。

bash
curl --location 'https://api.gemai.cc/v1/messages' \
  --header 'x-api-key: sk-你的令牌' \
  --header 'anthropic-version: 2023-06-01' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "claude-sonnet-4-6",
    "max_tokens": 1024,
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "text",
            "text": "请描述这张图片。"
          },
          {
            "type": "image",
            "source": {
              "type": "base64",
              "media_type": "image/png",
              "data": "这里替换为图片Base64内容"
            }
          }
        ]
      }
    ]
  }'

流式响应

开启 stream

INFO

设置 stream: true 后,接口会返回事件流。适合 Claude 原生客户端或需要逐段显示内容的自定义应用。

bash
curl --location 'https://api.gemai.cc/v1/messages' \
  --header 'x-api-key: sk-你的令牌' \
  --header 'anthropic-version: 2023-06-01' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "claude-sonnet-4-6",
    "max_tokens": 1024,
    "stream": true,
    "messages": [
      {
        "role": "user",
        "content": "请写一段简短的欢迎语。"
      }
    ]
  }'

返回格式

非流式响应通常包含顶层 content 数组:

json
{
  "id": "msg_xxx",
  "type": "message",
  "role": "assistant",
  "model": "claude-sonnet-4-6",
  "content": [
    {
      "type": "text",
      "text": "这是模型返回的内容。"
    }
  ],
  "stop_reason": "end_turn",
  "usage": {
    "input_tokens": 20,
    "output_tokens": 12
  }
}

注意事项

  • Anthropic 原生协议通常使用 x-api-key,部分 OpenAI 兼容客户端则会使用 Authorization: Bearer,请以客户端要求为准。
  • /v1/messages 的 tokens 统计规则和 OpenAI 格式不同,缓存 tokens 说明请参考 常见问题
  • Claude 长上下文请求耗时可能更久,请给客户端设置足够长的超时时间。