字段与用途
| 字段路径 | 位置 | 类型 | 必填 | 填写规则与说明 | 允许值 / 约束 | 示例 |
|---|---|---|---|---|---|---|
content | 响应 JSON | array | 否 | 内容块数组。按 type 识别 text / thinking / tool_use 等,不只取 content[0].text。 | - | - |
content[] | 响应 JSON | object | 否 | 数组元素。 | - | - |
content[].type | 响应 JSON | string | 否 | - | - | - |
content[].text | 响应 JSON | string | 否 | - | - | - |
stop_reason | 响应 JSON | string | 否 | 可为空。end_turn 为正常结束,tool_use 需要工具回传,max_tokens 表示截断;还可能有 stop_sequence / pause_turn / refusal。 | 可选:end_turn / max_tokens / stop_sequence / tool_use | - |
usage | 响应 JSON | object | 否 | 输入与输出 token 用量;缓存与搜索细分字段按实际响应读取。 | - | - |
usage.input_tokens | 响应 JSON | integer | 否 | - | - | - |
usage.output_tokens | 响应 JSON | integer | 否 | - | - | - |
usage.cache_creation_input_tokens | 响应 JSON | integer | 否 | - | - | - |
usage.cache_read_input_tokens | 响应 JSON | integer | 否 | - | - | - |
多轮对话保存整个 content 数组,再作为下一轮 assistant 消息回传;其中的工具 ID、思考签名和内容顺序均需保留。
结构示意
{"id":"msg_example","type":"message","role":"assistant","model":"claude-sonnet-5","content":[{"type":"text","text":"这是结构示意。"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":10,"output_tokens":8}}这是合成结构示意,不是实际用量或时间承诺。复杂响应可能含 thinking、tool_use、服务器工具与引用。
后续动作
end_turn 可展示完整答案;tool_use 执行并回传工具结果;pause_turn 时保留完整上下文并按服务工具工作流继续;max_tokens 先检查截断再决定是否继续。不要将所有非 end_turn 状态当作同一种失败。
调用与参考
Messages 调用 · 工具回传 · Claude Messages。
常见错误
Messages 不是 choices[0].message。只提取 content[0].text 会丢失工具调用、思考或分散的文字块。