Messages
Claude Messages
Messages
POST /v1/messages —— Claude 原生协议接口
POST
Messages
Claude 原生协议接口,完全兼容 Anthropic 官方,可使用
响应中会多出
详见 推理与思考。
详见 缓存计费。
或 base64:
响应中 assistant content 会包含
把执行结果通过 user 消息回传:
cache_control、thinking 等 OpenAI 协议中没有的高级特性。
请求
Header
| Header | 必填 | 说明 |
|---|---|---|
x-api-key | ✅ | OpenPAI 颁发的 sk- 密钥 |
anthropic-version | ✅ | API 版本,目前用 2023-06-01 |
anthropic-beta | 实验特性,如 prompt-caching-2024-07-31 | |
Content-Type | ✅ | application/json |
Body 字段
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
model | string | ✅ | Claude 模型 ID |
messages | array | ✅ | 对话历史,role 只能 user / assistant 交替 |
max_tokens | integer | ✅ | 最大输出 token |
system | string | array | system prompt,数组形式可带 cache_control | |
temperature | number | 0-1 | |
top_p | number | ||
top_k | integer | ||
stop_sequences | array | 停止序列 | |
stream | boolean | SSE 流 | |
tools | array | 工具定义 | |
tool_choice | object | {type:"auto"} / {type:"any"} / {type:"tool",name:"x"} | |
thinking | object | { type:"enabled", budget_tokens: 8000 } | |
metadata | object | { user_id: "..." } |
content 结构
Claude 的content 可以是字符串或 block 数组,block 类型:
text—— 普通文本image—— 图片(source.type为base64或url)tool_use—— 模型发起的工具调用(assistant 消息)tool_result—— 工具返回结果(user 消息)thinking—— 思考块(thinking 模式响应)document—— PDF 等文档
响应
stop_reason:end_turn / max_tokens / stop_sequence / tool_use。
流式响应
stream: true 时按 SSE 推送事件:
思考模式
claude-sonnet-4-6、claude-haiku-4-5 使用 扩展思考(thinking + budget_tokens);claude-opus-4-8 使用 自适应思考(effort,默认 high):
thinking block:
提示缓存
视觉
工具
tool_use block: