Anthropic 兼容接口

适用于 Claude 模型、Claude Code CLI,以及直接使用 Anthropic SDK 的应用。先用最小 Messages 请求验证,再接入业务代码。

ENDPOINT/v1/messages
AUTHENTICATIONx-api-key: YOUR_API_KEY

准备密钥与模型

  1. 1
    创建 API 密钥

    在控制台“API 密钥”中创建并保存密钥。示例使用环境变量,避免把完整密钥写入代码。

  2. 2
    读取可调用模型

    使用刚创建的 API 密钥请求 GET /v1/models,从返回结果的 data[].id 中复制一个 Claude 模型 ID,替换后续示例中的 your-model-name。

  3. 3
    先运行 cURL

    cURL 成功后再使用 Anthropic SDK,可以先确认认证头与 Messages 请求格式正确。

读取可调用模型
curl https://nusi.si/v1/models \
  -H "x-api-key: $SHARK_RELAY_API_KEY"

发送 cURL 请求

cURL
curl https://nusi.si/v1/messages \
  -H "x-api-key: $SHARK_RELAY_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "your-model-name",
    "max_tokens": 1024,
    "messages": [{ "role": "user", "content": "Reply with connection successful" }]
  }'

使用 Python SDK

Python
from anthropic import Anthropic

client = Anthropic(
    api_key="YOUR_API_KEY",
    base_url="https://nusi.si",
)

response = client.messages.create(
    model="your-model-name",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Reply with connection successful"}],
)
print(response.content[0].text)
协议需要与模型匹配

Claude Code CLI 和 Claude 模型优先使用 Anthropic 兼容格式,避免因协议转换导致部分能力不可用。需要完整路径时使用 /v1/messages;host-only Base URL 使用 /messages。

完成第一次验证

cURL 响应中出现 content,并能在第一个文本内容中看到模型回复,即表示认证、模型和 Messages 请求链路已打通。Python 示例应在终端打印同一段回复。

下一步再接入业务

保留这段最小请求作为连通性检查;业务代码中应从服务端环境变量读取密钥,并记录失败请求的状态码和响应体。

常见失败排查

现象处理方式
401 或 403

确认使用 x-api-key,密钥没有多余空格、未过期且未被删除。

版本头缺失

补上 anthropic-version: 2023-06-01,并保持 Content-Type 为 JSON。

模型不可用或找不到

重新请求 GET /v1/models,并复制返回结果中的 Claude 模型 ID,不要使用示例占位值。

SDK 无法调用

核对 base_url 是否为 https://nusi.si,并先回到 cURL 示例复测。

还需要 OpenAI 兼容接口?查看 OpenAI 接入示例

NUSI 上手指南 · 持续更新中 ·