快速结论:该报错通常出现在 LiteLLM 代理调用 OpenAI 新一代推理模型(如 gpt-6-astra)时,由于 LiteLLM 的模型识别函数只匹配 "gpt-5" 子串,导致 max_tokens 未自动转换为 max_completion_tokens。优先排查 LiteLLM 版本是否低于修复版本,并升级到包含修复的版本。
适用环境:Issue 已确认为 LiteLLM v1.98.0(修复版本为 v1.101.0-rc.1),调用 OpenAI gpt-6-astra 模型时触发;操作系统、Python、CUDA、显卡等环境未在 Issue 中提及。
最快修复方案:升级 LiteLLM 到 v1.101.0-rc.1 或更高版本。该版本通过 PR #39631 将 gpt-6 名称纳入 GPT-5 请求族处理,issue 评论确认 max_tokens 与 function tools 配合 reasoning 均已通过验证。
注意事项:若无法立即升级,可先改用 max_completion_tokens 参数绕过报错,但 function tools 与 reasoning_effort 同时使用的问题可能仍然存在,建议仍以升级版本为最终解决方案。
问题场景
用户在 LiteLLM 代理环境中,通过 /v1/chat/completions 接口调用 OpenAI 的 gpt-6-astra 模型,并传入旧版 max_tokens 参数时触发报错。同时,在 gpt-6-astra 上启用 function tools 与 reasoning 时也出现类似参数不兼容的报错。
报错原文
litellm.BadRequestError: OpenAIException - Unsupported parameter: 'max_tokens' is not supported
with this model. Use 'max_completion_tokens' instead.
litellm.BadRequestError: OpenAIException - Function tools with reasoning_effort are not supported
for gpt-6-astra in /v1/chat/completions. To use function tools, use /v1/responses or set
reasoning_effort to 'none'.
原因分析
根本原因在 LiteLLM 的模型识别逻辑。在 litellm/llms/openai/chat/gpt_5_transformation.py 中,OpenAIGPT5Config.is_model_gpt_5_model() 和 is_model_gpt_5_4_plus_model() 均通过判断模型名字符串中是否包含 "gpt-5" 来决定是否走 GPT-5 家族的参数处理逻辑。由于 gpt-6-astra 包含的是 "gpt-6" 而不是 "gpt-5",导致这两个函数都返回 False,从而跳过了 GPT-5 家族相关的所有代码路径,包括 max_tokens → max_completion_tokens 的自动映射、reasoning_effort 校验、tool_choice 支持判断,以及 /v1/responses 自动桥接检查。Issue 作者指出这是与历史 Issue #13381、#30084、#24863 相同的重复故障模式——每次 OpenAI 发布新的推理模型家族或命名方案时,基于模型名字符串的识别逻辑就需要打补丁。
环境排查
- 确认 LiteLLM 版本:需升级至 v1.101.0-rc.1 或更高版本(Issue 确认 v1.98.0 存在此问题)。
- 确认调用模型名称是否为
gpt-6-astra(或任何gpt-6开头、不含"gpt-5"子串的模型)。 - 如果使用代理模式,确认代理日志中是否存在
map_openai_params()相关的参数转换记录。 - 可以对比使用
gpt-5.2模型验证是否同样报错——Issue 中通过 30 天生产日志的阴性对照确认了问题仅影响"gpt-5"子串匹配不到的模型。
解决步骤
- 升级 LiteLLM:将 LiteLLM 升级到 v1.101.0-rc.1 或更高版本。该版本通过 PR #39631 修复了
gpt-6模型名称识别问题,将其作为 GPT-5 请求家族处理。Issue 评论确认升级后max_tokens参数与 function tools + reasoning 均可正常工作。 - 验证参数转换:升级后,再次使用
gpt-6-astra模型并传入max_tokens参数,确认 LiteLLM 会自动将其映射为max_completion_tokens而不报错。 - 测试 function tools + reasoning:在同一个模型上启用 function tools 并设置
reasoning_effort,确认不再触发 /v1/responses 桥接相关报错。 - 如果暂时无法升级(可优先尝试):在请求中直接使用
max_completion_tokens替代max_tokens,可以绕过第一个报错。但这只是临时规避,function tools 与 reasoning 联用的问题仍可能存在,需等待升级。
验证方法
升级 LiteLLM 后,使用 gpt-6-astra 模型重复发起包含 max_tokens 参数的请求,若能正常返回响应、不再抛出 Unsupported parameter: 'max_tokens' 错误,即确认问题已解决。同时建议测试 function tools 与 reasoning 组合场景,确认第二个报错也不再出现。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。


