Gateway API 文档

Anthropic
POST/anthropic/v1/messages

Messages

Anthropic Messages API。Gateway 将公开 model 改写为 LiteLLM model_name,协议兼容和 Deployment 选择由 LiteLLM 决定。支持流式和非流式;鉴权接受 Authorization 或 Anthropic SDK 默认的 x-api-key。

需要认证支持流式

请求参数

参数类型必填说明
modelstring必填模型 ID,如 "claude-sonnet-4-20250514"。
messagesobject[]必填对话消息数组。
rolestring必填消息角色,"user" 或 "assistant"。
contentstring | object[]必填消息内容,纯文本或内容块数组。
max_tokensnumber必填生成的最大 token 数。Anthropic API 中此字段为必填。
streamboolean可选是否启用流式输出,默认 false。
temperaturenumber可选采样温度,范围 0~1。默认 1。
top_pnumber可选核采样参数。
top_knumber可选Top-K 采样参数。
systemstring | object[]可选系统提示词。
stop_sequencesstring[]可选停止序列。

调用示例

typescript
import Anthropic from "@anthropic-ai/sdk"

// 用 authToken(不要用 apiKey):apiKey 模式 SDK 会多发一个空的 Authorization: "Bearer"
// 头,被网关优先读到导致 401;authToken 让 SDK 直接发 Authorization: Bearer <key>。
const client = new Anthropic({
  baseURL: "https://llmapi.memene.cn/anthropic",
  authToken: "gw_memene_<keyId>_<secret>",
})

const msg = await client.messages.create({
  "model": "claude-sonnet-4-20250514",
  "max_tokens": 1024,
  "messages": [
    {
      "role": "user",
      "content": "What is the meaning of life?"
    }
  ],
  "temperature": 0.7
})
console.log(msg.content[0].text)

响应示例

json
{
  "id": "msg_abc123",
  "type": "message",
  "role": "assistant",
  "content": [
    {
      "type": "text",
      "text": "The meaning of life is a profound philosophical question..."
    }
  ],
  "model": "claude-sonnet-4-20250514",
  "stop_reason": "end_turn",
  "usage": {
    "input_tokens": 14,
    "output_tokens": 48
  }
}

注意:流式模式下响应以 SSE 格式返回。事件类型包括 message_start、content_block_start、content_block_delta、content_block_stop、message_delta、message_stop。