配置 404 api proxy

Codex 报错 Error running remote compact task: unexpected status 404 Not Found

这个 404 发生在 Codex 压缩上下文时,不代表普通模型请求失败。先看报错 URL:官方 ChatGPT 地址优先排查 Codex 服务或版本回归,自定义域名则优先确认中转站的 responses/compact 路由是否可用。

错误摘要

Codex 报 Error running remote compact task: unexpected status 404 Not Found: {"detail":"Not Found"} 时,先按 URL 区分官方服务和自定义中转;404 表示压缩路由不存在或暂时不可用,连续重试通常无效。

#error running remote compact task 404 #unexpected status 404 not found responses compact #codex responses compact 404 #codex 自动压缩上下文失败 #codex context automatically compacted 报错 #codex remote compact task 报错

Codex 自动或手动压缩上下文时显示:

Error running remote compact task: unexpected status 404 Not Found: {"detail":"Not Found"}, url: https://api.example.com/responses/compact, cf-ray: <ray-id>, request id: <request-id>

上面使用的是脱敏示例。实际报错中的域名决定了排查方向;cf-rayrequest id 只是定位单次请求的追踪标识。

这个错误是什么意思

Codex 会在会话接近上下文阈值时自动压缩历史,也可以通过 /compact 手动触发。此时客户端向 responses/compact 发起请求,服务端却返回 404 Not Found{"detail":"Not Found"},说明当前入口没有匹配到可用的压缩路由。

不要把它当成普通网络抖动。网络已经连到服务端并拿到了明确的 HTTP 404;反复重试同一个地址,通常只会继续返回 404。

先看报错 URL

如果 URL 指向 chatgpt.com/backend-api/codex/responses/compact,说明失败发生在 Codex 的 ChatGPT 登录态链路。OpenAI Codex 官方仓库已有 CLI、Desktop 和 JetBrains 多端复现记录,公开案例在短会话里手动执行 /compact 也会失败。这种场景优先查看官方 issue、Codex 状态和客户端更新,不要先改自定义 Base URL。

如果 URL 指向 api.example.com/responses/compactapi.example.com/v1/responses/compact 或其他自定义域名,说明请求走的是中转站。如果普通对话此前一直正常,base_url 已经能够承载普通 Responses 请求,不应因为报错地址里没有 /v1 就把 Base URL 当成首要问题。优先检查:

  1. 中转站是否只支持普通 Responses 请求,却没有实现对应的 POST /responses/compact 路由。
  2. 该路由以前可用但突然返回 404 时,中转站是否刚刚部署、切换上游或出现路由回归。
  3. 反向代理、网关或 Worker 是否只放行了普通 Responses 路由,没有转发 compact 子路由。

截图里出现 Context automatically compacted 后连续报错,并不证明压缩已经成功。会话没有被有效压缩时,后续请求仍可能反复触发同一个失败入口。

怎么解决

URL 是官方 ChatGPT 地址

  1. 打开 openai/codex #38323,确认当前版本是否仍在复现。
  2. 更新到官方已发布的修复版本;issue 仍未确认修复时,不要靠重装或删除 ~/.codex 碰运气。
  3. 急需继续工作时,新建任务并减少一次性上下文,避免旧会话立即再次触发压缩。这只是临时绕过,不代表原任务已修复。

URL 是自定义中转域名

  1. 如果入口由你维护,为 compact 路由补充转发,并确认请求方法、鉴权头和响应格式都没有被网关改写。
  2. 修好路由后若错误变成 503 No available channel for model ...-openai-compact,再添加或映射对应 compact 模型。不要用模型映射去修路由 404。

如果确认使用的是中转站,完成以上检查后仍然返回 404,请带上完整报错、出错时间、模型名和 request id 联系中转站售后处理。

部分社区方案会修改 provider 名称、关闭远程压缩功能或提高 model_auto_compact_token_limit。这些配置受 Codex 版本影响,而且可能只是让客户端暂时不调用该路由。根治仍是恢复或补齐中转站的 compact 路由。

一句话结论

responses/compact 返回 404 时先看 URL 分流:官方地址查 Codex 服务回归,自定义域名查 compact 路由和网关转发,连续重试或单纯调高压缩阈值都不能修复缺失的接口。

相关错误

Codex 找不到 MCP 工具:tool does not exist in this session's available toolset Codex 提示 MCP tool does not exist in this session's available toolset 时,先核对服务和工具发现状态,再用全新会话、codex doctor、官方 provider 与版本 A/B 判断是缓存、客户端回归还是自定义 provider 没有暴露工具。 Codex MCP 报错 Unexpected response type Codex MCP 报 Unexpected response type 时,先确认错误发生在 tools/call 返回之后,再用 MCP Inspector、直接客户端或旧版 Codex 做对照;服务端可临时简化返回内容,普通用户则应保留版本和工具名等待兼容修复。 Codex 报错 Error creating task: Timeout / Unable to start task Codex 报 Error creating task: Timeout、Task creation timeout 或 Unable to start task 时,先测试已有任务,再临时禁用无法连接或路径失效的 MCP 服务并完全重启桌面端。 Claude Code / Codex 503 No available accounts:中转站账号池不可用排查 先不要盲目换 Key。这个错误通常说明账号池、供应商、分组或模型路由暂时不可用。先测最小请求、确认模型和分组,再判断是等待恢复、降低上下文,还是换 provider。 Codex: Selected model is at capacity. 模型容量已满排查 报错:Selected model is at capacity. Please try a different model. 先把它当作模型级容量、Admission 或流式中断问题处理。它可能出现在官方 ChatGPT 登录态 Codex CLI,也可能来自中转站账号池或 Sub2API 上游 overloaded 透传。 Codex 提示:你的对话中有多个可能的网络安全风险的标记 提示:你的对话中有多个可能的网络安全风险的标记。先把它当作 OpenAI/Codex 安全路由触发,而不是直接判断账号或中转站故障;再检查是否使用了中转 API、敏感关键词、超长代码上下文或不透明模型路由。

相关教程

相关主题

常见问题

常见问题

为什么普通对话正常,只有上下文压缩时报 404?

普通回答通常请求 responses,远程压缩请求 responses/compact。中转站支持前者不等于实现了后者,所以会在上下文变长或手动执行 compact 时才暴露问题。

把 model_auto_compact_token_limit 调高能修复吗?

不能。调高阈值只能延后自动压缩;会话继续增长后仍会请求同一个 compact 路由。它适合临时争取时间,不是接口 404 的根治方案。

添加 gpt-openai-compact 模型能解决这个 404 吗?

通常不能。404 表示请求没有进入可用的 compact 路由;添加或映射 compact 模型主要解决接口已经存在、但返回 No available channel 等 503 调度错误。

AI 中转站精选

从充值换算、官方价格折扣和访问量三个维度,查看当前有代表性的服务商。

查看全部服务商