很多 Codex 用户最近都看到了同一条提醒:GPT-5.4 和 GPT-5.4 mini 将在 2026 年 8 月 31 日退出 Codex。
有人于是开始换账号、删配置,甚至认为 GPT-5.4 的 API 也会同时失效。
但官方公告真正限定的是:使用 ChatGPT 账号登录 Codex 的用户。
如果你使用 OpenAI API,或者在 Codex 中通过自己的 API Key 接入兼容 Responses API 的服务,这次调整并不等于 API 模型立刻下线。
这篇文章把三件容易混淆的事情一次说清楚:
- 哪些 Codex 用户必须在 8 月 31 日前迁移;
- GPT-5.4 应该换 Terra、Luna 还是 Sol;
- 自己使用 API Key 时,怎样验证模型并完成 Codex 配置。
说明:本文包含作者使用的 API 服务配置示例。请先查询自己账号可用的模型列表,再使用实际返回的模型 ID。
TOC
一、先看结论:不是所有 GPT-5.4 都会在同一天消失
官方 Codex 更新日志给出的范围非常明确:
- 使用 ChatGPT 账号登录 Codex:GPT-5.4 和 GPT-5.4 mini 将于 2026 年 8 月 31 日停止提供;
- GPT-5.4 推荐迁移到 GPT-5.6 Terra;
- GPT-5.4 mini 推荐迁移到 GPT-5.6 Luna;
- OpenAI API 以及使用 API Key 认证的 Codex 会话不受这次调整影响。
因此,首先要判断的不是"我有没有用 GPT-5.4",而是"我的 Codex 采用哪种认证和模型来源"。
可以分成三种情况:
情况 1:使用 ChatGPT 账号登录
需要在截止日期前切换模型。日常主力任务优先换 Terra,原来使用 mini 的轻量任务换 Luna。
情况 2:使用自己的 OpenAI API Key
这次 ChatGPT 登录侧的模型退出不直接影响 API Key 工作流,但仍应检查 API 模型列表和后续模型生命周期公告。
情况 3:使用第三方兼容 API
是否还能使用某个模型,取决于服务端实际开放的模型列表、模型映射和 Responses API 兼容情况,不能只看 Codex 的模型选择器。
二、Terra、Luna、Sol 应该怎么选
GPT-5.6 使用了新的三档命名方式:
gpt-5.6-sol:面向复杂专业任务和高难度编码,能力优先;gpt-5.6-terra:在智能、速度和成本之间取平衡;gpt-5.6-luna:面向高频、轻量和成本敏感任务。
官方推荐的直接迁移关系是:
| 原模型 | 推荐替代 | 适合场景 |
|---|---|---|
gpt-5.4 |
gpt-5.6-terra |
日常开发、排错、代码审查、Agent 任务 |
gpt-5.4-mini |
gpt-5.6-luna |
搜索、分类、批量修改、简单子任务 |
Sol 并不是 GPT-5.4 的默认替代项。如果任务确实涉及大型重构、复杂架构决策或高价值代码审查,可以单独测试 Sol,但不建议因为"型号最高"就把所有任务都切过去。
官方 GPT-5.6 迁移指南还建议:从 GPT-5.4 迁移时,先保留原来的 reasoning effort 作为基线,再用同一批真实任务测试低一级的 effort。新模型有可能用更少的推理 Token 达到相同或更好的结果。
三、ChatGPT 登录用户的最快迁移方法
如果你只使用 ChatGPT 账号登录 Codex,最简单的方法是在新会话中直接指定模型:
codex --model gpt-5.6-terra
轻量任务可以使用:
codex --model gpt-5.6-luna
也可以在正在运行的会话中使用模型选择功能,确认新模型能正常创建会话。
如果配置文件里固定写了旧模型,还要检查用户级配置:
~/.codex/config.toml
把旧配置:
model = "gpt-5.4"
model_reasoning_effort = "medium"
改为:
model = "gpt-5.6-terra"
model_reasoning_effort = "medium"
原来使用 mini 的配置可以改为:
model = "gpt-5.6-luna"
model_reasoning_effort = "low"
不要只检查这一处。以下位置也可能固定保存了旧模型名:
- 命令行脚本中的
--model或-m; - CI/CD 环境变量;
- Codex 自动化任务;
- 自定义 Agent 或子 Agent 配置;
- 编辑器插件保存的模型选择;
- 团队下发的托管配置。
四、API Key 用户先别改配置,先查模型列表
第三方 API 最常见的排错误区,是看到新闻后直接把模型名改成 gpt-5.6-terra,却没有确认服务端是否已经开放这个 ID。
先设置环境变量:
export API_BASE="https://genvis.xyz/v1"
export API_KEY="YOUR_API_KEY"
查询模型列表:
curl -sS "$API_BASE/models" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json"
重点检查返回结果中是否存在:
gpt-5.6-terra
gpt-5.6-luna
gpt-5.6-sol
模型 ID 必须以接口实际返回为准。有些服务会使用别名或渠道映射,不能根据模型展示名称自行猜测。
我在 2026 年 8 月 24 日对该示例端点进行无 Token 路径检查时,GET /v1/models 返回了 JSON 格式的 401 Unauthorized,说明请求进入了 API 鉴权层。但无有效 Key 的检查不能证明某个模型对具体账号可用。
五、模型存在之后,还要验证 Responses API
Codex 自定义模型提供商当前使用 Responses API。模型出现在 /v1/models 中,并不自动证明 /v1/responses 可以正常调用。
先测试非流式请求:
export MODEL="gpt-5.6-terra"
curl -i --max-time 60 \
-X POST "$API_BASE/responses" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
--data "{\"model\":\"$MODEL\",\"input\":\"Reply with exactly OK\"}"
至少要确认:
- HTTP 状态码为 200;
- 返回的是 JSON,而不是网站首页 HTML;
- 响应具有 Responses API 的
response对象结构; - 没有
unknown model、model not found或权限错误; - Token 用量和结束状态正常。
接着测试流式请求:
curl -N -i --max-time 120 \
-X POST "$API_BASE/responses" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: text/event-stream" \
--data "{\"model\":\"$MODEL\",\"input\":\"Reply with exactly OK\",\"stream\":true}"
流式调用应返回 text/event-stream,并最终正常出现完成事件。如果只返回第一段文本就断开,Codex 中仍可能出现:
stream disconnected before completion
response.failed event received
六、通过验证后,再写 Codex 的 API 配置
用户级配置文件位置是:
~/.codex/config.toml
Windows 通常对应:
%USERPROFILE%\.codex\config.toml
可使用下面的完整配置:
model = "gpt-5.6-terra"
model_provider = "genvis"
model_reasoning_effort = "medium"
[model_providers.genvis]
name = "Genvis"
base_url = "https://genvis.xyz/v1"
env_key = "GENVIS_API_KEY"
wire_api = "responses"
macOS 或 Linux 设置 Key:
export GENVIS_API_KEY="YOUR_API_KEY"
PowerShell 设置 Key:
$env:GENVIS_API_KEY="YOUR_API_KEY"
然后从同一个终端启动 Codex:
codex
这里有两个配置细节很容易出错。
第一,base_url 填公共 API 前缀,不要写成完整的 /responses 地址,否则客户端可能重复拼接路径。
第二,model_provider 和 model_providers 属于机器本地提供商配置。官方配置参考说明,项目目录中的 .codex/config.toml 不能覆盖这些字段,所以第三方提供商应写进用户级配置。
七、迁移后常见的四种报错
1. Model not found
通常说明模型 ID 不存在、服务端尚未开放、账号分组没有权限,或者模型映射名称不同。
解决顺序:先查 /v1/models,再核对控制台权限,最后检查 config.toml 中的模型名。
2. Missing environment variable
说明 env_key 指向的环境变量没有设置,或者 Codex 不是从设置变量的终端启动。
VS Code、终端和桌面应用可能继承不同的环境变量。设置后应彻底退出旧进程,再重新打开。
3. 404 Not Found
检查最终地址是否错误拼成:
/v1/v1/responses
/v1/responses/responses
还要确认服务端真正支持 Responses API,而不只是 /v1/chat/completions。
4. 能回答,但 Agent 中途断开
普通对话成功不代表长时间 Agent 调用稳定。应单独检查 SSE 事件、代理缓冲、空闲超时和上游连接。
不要一看到流中断就继续换模型。协议不兼容时,换成任何模型都可能重复失败。
八、8 月 31 日前的最终检查清单
- 确认自己使用 ChatGPT 登录还是 API Key;
- 把 ChatGPT 登录工作流中的 GPT-5.4 切换到 Terra;
- 把 GPT-5.4 mini 轻量任务切换到 Luna;
- 搜索脚本、自动化、Agent 和 CI 中硬编码的旧模型名;
- API Key 用户先查询
/v1/models,不要猜模型 ID; - 验证非流式和流式
/v1/responses; - 把第三方 provider 写进用户级
~/.codex/config.toml; - 使用
env_key读取密钥,不要把真实 Key 明文写入配置; - 用真实项目任务比较迁移前后的质量、延迟和 Token 消耗;
- 保留可快速切回的旧配置备份,但不要公开其中的密钥。
九、总结
GPT-5.4 在 8 月 31 日的变化,准确说是 Codex 的 ChatGPT 登录侧模型调整,不是所有 API Key 工作流同时失效。
对大多数用户,迁移关系很简单:
GPT-5.4 -> GPT-5.6 Terra
GPT-5.4 mini -> GPT-5.6 Luna
但对使用第三方 API 的用户,真正可靠的迁移顺序应该是:
查询模型列表
-> 验证 Responses API
-> 验证 SSE 流式事件
-> 修改用户级 config.toml
-> 用真实任务回归测试
先分清认证方式,再验证接口能力,比盲目换模型、换 Key 或重装 Codex 更有效。
参考资料
- OpenAI 官方 ChatGPT 与 Codex 更新日志
- OpenAI 官方 GPT-5.6 模型迁移指南
- OpenAI 官方 Codex Configuration Reference
- OpenAI 官方模型目录
更新记录
- 2026-08-24:核对 GPT-5.4 与 GPT-5.4 mini 的 Codex 退出范围、官方替代模型、GPT-5.6 迁移建议和 Codex 自定义 provider 配置;完成示例端点的无 Token 鉴权路径检查。