tool_choice 支持 auto(自动)、any(必须调用工具)、tool(指定 name)和 none(禁止工具)。auto/any/tool 可设置布尔值 disable_parallel_tool_use,原样保留单工具约束;非法或未知选择字段返回 400。具体模型是否支持强制工具选择仍受上游能力限制;协议转换不会把 any、tool 或 none 自动降级为 auto。
当前是 Messages 兼容子集:尚不支持原生 thinking、output_config、context_management,以及历史 thinking/redacted_thinking 内容块。显式传入时,在调用和扣费前返回 400 invalid_request_error,不会丢弃配置后按普通对话执行。需要这些能力请使用支持完整原生语义的 Messages 服务;只有不需要该能力时才移除相关参数。普通文本、用户消息中已支持的图片输入和自定义函数工具多轮转换保持。top_k 原值转交支持的 Chat 通道;方舟当前 SDK 无此字段,显式传入会返回参数错误,不会静默丢弃。工具结果当前支持字符串或文本块数组(含空结果);图片、文档和搜索结果等结构化工具结果会在调用前明确拒绝,不会转成占位文字。带版本类型的原生工具(如网页搜索、代码执行、计算机操作)不能当成普通函数,当前返回 400;需要这些能力请使用完整原生通路。
curl https://YOUR_PLATFORM_DOMAIN/v1/messages \
-H "x-api-key: YOUR_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-4.6-sonnet",
"max_tokens": 1024,
"messages": [{"role": "user", "content": "你好"}]
}'