首页/AI/AI 应用速查/Anthropic Messages API

Anthropic Messages API

Claude 的官方接口:POST https://api.anthropic.com/v1/messages,system 为顶层参数,max_tokens 必填,流式返回按事件类型(message_start、content_block_delta 等)。

AI 应用速查AI更新于 2026-10-13

Messages API 是什么

Messages API 是 Anthropic 的对话接口:向 /v1/messages 发 POST 请求,system 作为顶层参数单独传,messages 里只放 user 与 assistant 轮次。它和 OpenAI 的 Chat Completions 长得像但不通用:长度参数必填、内容以块数组组织、工具结果通过 user 消息里的结果块回填。迁移时按这几点逐项改,比整体重写配置更稳。

基本信息

接口地址https://api.anthropic.com/v1/messages
方法POST,JSON 请求体
鉴权头x-api-key,另需 anthropic-version 指定接口版本
必填参数model、max_tokens、messages
system顶层参数,不放进 messages 数组
返回结构content 为块数组,文本在文本块中

与 Chat Completions 的字段对照

维度Messages APIChat Completions
系统指令顶层 system 参数system 或 developer 角色消息
消息内容content 为块数组字符串或块数组
长度限制max_tokens 必填可选,或用新接口的等价参数
工具定义单独的 tools 参数,结构自有格式tools 参数,函数式结构
工具结果以 user 消息中的结果块提交以 tool 角色消息提交
流式逐事件推送,事件类型区分明确data 行推送增量片段

典型使用场景

  • 长文档问答:把整份文档放进请求做摘要、比对与问答
  • 编码任务:跨文件理解与补丁生成,配合工具调用
  • 结构化抽取:用输出格式约束把文本转成字段
  • 智能体编排:作为多轮工具链中的决策模型
  • 内容审校:按给定规则逐条检查稿件并给出修改意见

最小请求与多轮写法

最小请求与多轮写法
curl -s https://api.anthropic.com/v1/messages -H "x-api-key: $ANTHROPIC_API_KEY" -H "anthropic-version: 2023-06-01" -H "Content-Type: application/json" -d '{"model":"claude-sonnet-4-5","max_tokens":1024,"system":"你是合规审查助手","messages":[{"role":"user","content":"差旅报销上限是多少?"}]}'
# 多轮:把上一轮返回的 assistant 内容按块原样追加进 messages
# 工具调用:先返回工具调用请求,执行后把结果作为 user 消息里的结果块提交
# anthropic-version 缺失或被服务端判定过期时会直接报错
输出内容可能包含多个块(文本块、工具调用块),程序解析时应按块类型分支处理,不要默认只取第一个块。
长提示词建议用清晰的标签或分隔结构组织资料与指令:模型对结构化输入的遵循度明显更高,出问题时也更容易定位是哪一段的内容导致的。
max_tokens 是必填项:从其他协议迁移时漏掉它是最常见的 400 错误来源,建议在封装层做默认值。

易错点

  • 漏传 max_tokens:请求直接 400,链路中断
  • 把 system 塞进 messages 当角色用:协议不匹配,行为与预期不符
  • 解析返回时只取第一个内容块:工具调用场景下会丢失真正的执行指令
  • 沿用其他协议的鉴权头:缺少接口版本头会被拒,排查时容易误判成密钥失效

数据来源与参考

  • Anthropic Messages API 文档

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌