# 2026-09-18 模型接口 502 排查 ## 根因与证据 - 管理 API、模型网关 health 均正常;502 由网关 `/v1/answer` 返回。 - 当前回答和视觉模型为 `doubao-seed-2-0-lite-260428`。 - 该模型配置 `max_tokens=500000`。上游在约 118 ms 返回 HTTP 400 / InvalidParameter,明确指出参数必须小于等于 131072。 - 网关将所有候选失败统一转换为 502,而旧客户端只读取 `detail`,未读取 `candidates[].error`,因此用户仅看到“模型网关返回 502”。 ## 已恢复配置 - 原配置及修改原因保存在 `config-backup.json`。 - 先以同一模型、同一凭证、合成问题 `Only reply OK.` 和 `max_tokens=8192` 验证成功(约 2753 ms)。 - 使用条件更新,仅在模型 ID、原参数和原更新时间均匹配时,将最大输出 Token 改为 8192。其他角色、密钥和客户端配置未改动。 - 2026-09-18 06:51:04 UTC 起观察到实际 `/v1/answer` HTTP 200;随后用量账本已记录 2 次回答模型成功、2 次裁判模型成功。 - 8192 限制模型生成输出长度,不是会话输入上下文长度。 ## 错误诊断修复 - 网关 502 返回兼容旧客户端的可读 `detail`、错误代码和请求编号。 - 不直接返回供应商错误正文,避免供应商意外回显提示词或密钥。 - 失败请求进入原有模型调用记录,便于追踪;不改变数据库结构。 - 回滚脚本只回退代码,保留已验证有效的 8192 参数。 测试和部署结果见同目录的日志与 `deployed.json`。