你的 Codex 默认上下文长度仅为 25.8 万 token,而 GPT-5.6 Sol API 实际上支持高达 105 万 token。这一差异曾引发广泛疑问。
OpenAI Codex 产品负责人 Tibo 曾表示,默认值是经过性能与成本权衡后的最优解。但在 8 月 16 日,他发布教程演示如何通过三行配置将 Codex 上下文窗口解锁至百万级。
然而,该操作背后的代价并未在教程中明确说明。
上下文缩减始于今年 7 月。GPT-5.6 Sol 上线初期,Codex 默认上下文为 372K,后于 7 月 18 日通过 GitHub PR 调整为 272K,并保留 5% 安全缓冲,最终呈现为 258K。
Tibo 解释称,每次工具调用(如读文件、执行命令)均需重处理完整上下文,窗口越大开销越高。258K 是在性能、响应速度与成本之间的平衡点。
三行配置解锁百万上下文
操作方法极为简便:编辑配置文件 ~/.codex/config.toml(若不存在可新建),添加或更新以下三行:
model = "gpt-5.6-sol"
model_context_window = 1000000
model_auto_compact_token_limit = 900000
第一行指定模型;第二行设置上下文窗口为 100 万 token;第三行定义自动压缩阈值,当上下文达到 90 万 token 时触发压缩。
保存并重启 Codex 即可生效。
若仅需临时使用,可通过命令行参数启动一次性会话:
codex chat -m gpt-5.6-sol \
-c model_context_window=1000000 \
-c model_auto_compact_token_limit=900000
此外,还可直接让 Codex 自行修改配置文件,无需手动操作终端:
修改 Codex 配置文件,~/.codex/config.toml,把 model 设置为 gpt-5.6-sol,model_context_window 设置为 1000000,model_auto_compact_token_limit 设置为 900000。
为何实际可用上下文为 828K 而非 100 万?系统会预留 128K 用于模型输出,并对剩余部分施加 95% 安全系数:(1,000,000 - 128,000) × 95% = 828,400。此前 258K 的计算逻辑相同:(400,000 - 128,000) × 95% = 258,400。
解锁后的潜在风险
尽管百万上下文极具吸引力,但需谨慎使用,主要存在两大风险:
额度消耗急剧增加
开启大上下文后,每次工具调用均需传递完整历史。虽然 OpenAI 提供缓存机制(已处理内容按正常价格 10% 计费),但上下文从 258K 扩至 828K,缓存用量成倍增长。频繁调用工具将导致额度快速耗尽。
已有用户反馈:“两天就用完额度”、“被迫多次重置”,质疑此举意在推动付费重置功能。
模型检索准确率下降
上下文过长会导致“中间迷失”(Lost in the Middle)现象:模型更易记住首尾信息,而忽略中间内容。斯坦福研究证实,中间段落检索准确率可能下降 30%-50%。
实测表明,GPT-5.5 在 12 万至 25 万 token 区间表现最佳,超出后准确率显著下滑。这也印证了默认 258K 设置的合理性。
上下文并非无限存储,而是类似人类工作记忆,过载易导致信息丢失。
建议掌握以下常用命令以优化体验:
/status:查看当前 token 用量/compact:手动压缩历史对话/new:开启全新会话
是否应开启百万上下文?
答案需根据任务类型具体分析:
- 日常编码:30 万左右即可,早期压缩更高效
- 大型项目:需加载多仓库及历史记录,建议 60 万,适度压缩
- 逆向工程、大规模迁移、长期调试等“考古”型任务:可启用 100 万上下文
值得注意的是,Tibo 同日透露 Codex 即将接入 OpenAI 下一代模型 Astra,届时百万上下文或将成为标配。
Tibo 再次强调:当前默认值绝非随意设定,而是经过充分调优的结果。用户应根据实际需求理性调整配置。

