Codex 常见错误排查

本页适用于 Codex CLI、Codex App、IDE 中的 Codex 插件,以及使用 OpenAI Responses API 的兼容客户端。

先按顺序检查

  1. Base URL 是否为 https://www.mlyapi.com/v1
  2. API Key 是否完整、有效并属于正确分组。
  3. 模型 ID 是否在当前分组中可用。
  4. 余额或订阅额度是否充足。
  5. 使用首页的 curl 示例单独测试接口。

Stream disconnected

Stream disconnected before completion: stream closed before response.completed

优先检查 base_url 是否包含 /v1。如果出现 error sending request for url,通常与本地网络、代理节点或 TLS 连接有关。先运行 curl,再依次尝试切换代理节点、关闭代理或更换网络。

503 Service Unavailable

常见原因包括模型 ID 错误、密钥分组中的渠道暂时不可用、平台维护或上游模型服务异常。先查看渠道状态并重新复制模型 ID,稍后重试。

401 Unauthorized

依次检查完整 API Key、前后空格、有效期、密钥状态以及 Codex 是否已重启。最简 auth.json

{
  "OPENAI_API_KEY": "your-api-key"
}

model_provider 必须位于顶层,并与 provider ID 一致:

model = "gpt-5.4"
model_provider = "mlyapi"
model_reasoning_effort = "xhigh"

[model_providers.mlyapi]
name = "MlyAPI"
base_url = "https://www.mlyapi.com/v1"
wire_api = "responses"
requires_openai_auth = true

[sandbox_workspace_write]
network_access = true

不要把 model_provider 写进 [sandbox_workspace_write] 区块,也不要让它与 [model_providers.xxx] 中的 xxx 不一致。

403 Forbidden

  • “余额和订阅额度均不足”:充值或续订,并检查密钥额度限制。
  • “API Key 熔断已开启”:先解决模型或渠道问题,再到 API 密钥页面恢复熔断。

429 Too Many Requests

Session 并发数、RPM 或其他速率限制已达到上限。减少并发,等待当前请求结束后再试,避免客户端无间隔重试。

499 Client Closed Request

表示客户端在服务端完成前关闭连接。手动中断通常无需处理;频繁超时时,可以增加超时时间、降低并发,并对照请求日志确认服务端状态。

400 Bad Request

  • “思维等级不被支持”:删除该配置或改为当前模型支持的值。
  • “请求包含不允许的内容”:修改输入,不要尝试绕过平台或上游安全规则。

502 Bad Gateway

通常是上游服务或流式传输临时异常。先重试;持续失败时,新建 Session、切换可用渠道,并查看请求日志。

反馈问题时提供

  • 客户端名称、版本和操作系统。
  • 网络环境以及是否使用代理。
  • 状态码、错误正文、发生时间和请求 ID。
  • 模型 ID、Base URL 和密钥分组。
  • 已打码的配置截图或日志。

不要提交完整密钥

无论发给客服、群聊还是 AI,都只显示 Key 的开头和结尾少量字符,中间必须打码。