让 Codex Desktop 的 DeepSeek-V4-Flash 真正启用 Max 推理档位,修复「配置 model_reasoning_effort = "max" 后实际仍回退 high」的问题。
# 下载脚本
irm https://raw.githubusercontent.com/yuyukosama2004/codex-deepseek-max-guide/main/scripts/fix-deepseek-max.ps1 -OutFile fix-deepseek-max.ps1
# 先预览将要修改的内容(不会写入)
powershell -ExecutionPolicy Bypass -File .\fix-deepseek-max.ps1 -WhatIf
# 执行修复(自动备份、幂等)
powershell -ExecutionPolicy Bypass -File .\fix-deepseek-max.ps1 -Verify修完之后:
- 重启 Codex 桌面端
- 新建一个对话线程
- Reasoning 下拉选择 Max ✅
脚本自动备份
config.toml、幂等、不修改你的默认模型,并会检查 models.json 是否为 DeepSeek 声明了max。
如果这个项目解决了你的问题,欢迎点一个 ⭐,方便以后找到。
- 桌面端 UI 有一个推理档位白名单
enabled-reasoning-efforts,默认不含max; - 所以即使 config.toml 写了
model_reasoning_effort = "max",UI 也会把它过滤并回退成模型的默认档位high; - 同时下拉菜单里也不显示 Max。
解决方案:把 model_reasoning_effort 设为 max,并在 [desktop] 白名单中加入 max(脚本已自动完成)。
编辑 %USERPROFILE%\.codex\config.toml(先备份):
model = "deepseek-v4-flash"
model_reasoning_effort = "max"
[desktop]
# 保留原有键,新增/修改这一行:
enabled-reasoning-efforts = ["low", "medium", "high", "xhigh", "max", "ultra"]然后重启桌面端、新建对话线程。
CLI 没有桌面端 UI 过滤层,只需设置 model_reasoning_effort = "max":
curl -O https://raw.githubusercontent.com/yuyukosama2004/codex-deepseek-max-guide/main/scripts/fix-deepseek-max.sh
WHAT_IF=1 bash fix-deepseek-max.sh
bash fix-deepseek-max.sh-
配置文件:确认
model_reasoning_effort = "max",且[desktop]白名单含max。 -
实际请求参数(最可靠):查
%USERPROFILE%\.codex\logs_2.sqlite:SELECT ts, feedback_log_body FROM logs WHERE feedback_log_body LIKE '%reasoning_effort=max%' ORDER BY id DESC;
看到
codex.turn.reasoning_effort=max/codex.request.reasoning_effort=max即生效(日志可能含 API Key,分享前务必脱敏)。 -
线程存档:
state_5.sqlite的threads表,新线程reasoning_effort为max。 -
UI:下拉菜单出现 Max。
- 只改
model_reasoning_effort不够,白名单必须包含max; - 白名单必须写在
[desktop]段(写在顶层不生效); - 重启后要新建线程(旧线程保留原档位);
- UI 显示与后端使用是两回事,必须同时放开白名单。
- 把
model_reasoning_effort改回"high"; - 删除
[desktop]里的enabled-reasoning-efforts行; - 或直接用脚本/手动修改前的备份覆盖。
