模型调用
Claude 报 HTTP 400:不支持 temperature 怎么办?
Claude 提示不支持非默认 temperature、top_p 或 top_k?了解模型和 API 版本限制,删除请求中的采样参数,并检查客户端、SDK 与健康检查脚本自动添加的默认值。
遇到什么问题?
调用 Claude 时,请求返回类似错误:
HTTP 400: claude-haiku-5-5 does not support non-default temperature也可能提示不支持 top_p 或 top_k。这类错误表示请求中的采样参数不符合当前模型或 API 版本的要求。采样参数用于调整生成内容的随机性或候选范围。
解决办法:从请求中删除 temperature、top_p 和 top_k,不要只把温度改成默认值。
为什么会报错?
- 模型限制:Claude Haiku 5.5 等较新的模型拒绝非默认采样值,无论是否开启思考。见官方采样参数说明。
- API 版本限制:Anthropic Messages API 从
2026-10-21版本起拒绝这三个字段的任何值,包括temperature: 1.0。见官方版本迁移指南。
这是模型与接口的参数规则,不是所有模型都适用的统一温度设置。通过 OpenAI-compatible 接口调用时,也要删除不支持的字段;不要为修复此错误而添加或修改 anthropic-version。
如何解决?
- 在模型或供应商设置中关闭自定义采样参数,或从请求 JSON 中删除这三个字段。填写
null、空字符串或默认数字,都不等于不发送字段。 - 检查 SDK 封装、全局默认值、模型预设和健康检查脚本。确认最终发出的请求体不含这些字段,而不只是界面上没有填写。
- 如果客户端强制填写参数,更新客户端,或使用能省略这些字段的配置方式。多模型应用只调整受影响模型的请求,不要覆盖其他模型的配置。
- 保存配置后,发送一条简短文本测试。测试按实际用量计费;同样的参数错误不需要原样反复重试。
请求体示例
以下请求体不包含采样参数。将消息内容替换为你的任务,并保留所用接口的 Base URL 和鉴权方式。
{ "model": "claude-haiku-5-5", "max_tokens": 4096, "messages": [ {"role": "user", "content": "Reply with only: OK"} ]}- Anthropic Messages:Base URL 为
https://bettertoken.ai,请求路径为/v1/messages,在x-api-key中填写 BetterToken API Key。 - OpenAI Chat Completions:Base URL 为
https://bettertoken.ai/v1,请求路径为/chat/completions,使用Authorization: Bearer <BETTERTOKEN_API_KEY>。
不要在上述请求体外的公共配置中重新加入采样参数。需要控制回答风格时,在提示词中说明格式、长度和语气。
删除后仍然报错?
查看新的完整错误信息,确认是否仍然指向同一参数。联系支持时提供 Model ID、客户端和版本、接口路径、带时区的发生时间、请求 ID(如有),以及删除敏感内容后的请求体字段。不要提供 BetterToken API Key、鉴权请求头或私人对话内容。

