从原理到实战
09 · 如何控制模型、速度、成本和质量
假设你一天用 Codex 做了 5 件事,看不同模型选择策略下的成本对比:
⏱️ 预计阅读 11 分钟 | 🎯 目标:把"哪个模型都用最强的"换成"按任务复杂度调档"
Codex 不是"哪个模型最强用哪个"。任务复杂度、响应速度、token 成本、推理深度 —— 四件事互相拉扯。这一篇讲怎么调档。
🎬 一个真实账单:全用最强模型的代价
假设你一天用 Codex 做了 5 件事,看不同模型选择策略下的成本对比:
| 任务 | 所需推理深度 | 全用最强模型 | 按需调档 |
|---|---|---|---|
| 改一个错别字 | 极低 | 用 GPT-5.4 推理满档 | 用 fast 模式 |
| 解释一段代码 | 低 | 用 GPT-5.4 推理满档 | 用 fast 模式 |
| 修一个普通 bug | 中 | 用 GPT-5.4 推理满档 | 用 GPT-5.4 default |
| 重构一个模块 | 高 | 用 GPT-5.4 推理满档 | 用 GPT-5.4 high |
| 复杂架构决策 | 极高 | 用 GPT-5.4 推理满档 | 用 GPT-5.5 + 1M context |
| 当日总成本 | — | 💸 100% | 💰 约 30-40% |
| 平均响应时间 | — | 🐢 慢 | ⚡ 大部分秒回 |
💡 核心洞察:Codex 给了你"调档"的旋钮,默认开最猛档是新手最贵的浪费。
⚙️ 4 个可以调的旋钮
flowchart TB
Task[任务] --> M[🎚️ 模型选择]
Task --> R[🧠 推理强度]
Task --> S[⚡ 速度档位]
Task --> C[📚 上下文长度]
M --> Result[结果]
R --> Result
S --> Result
C --> Result
style M fill:#dbeafe,stroke:#3b82f6
style R fill:#fef3c7,stroke:#f59e0b
style S fill:#dcfce7,stroke:#22c55e
style C fill:#f3e8ff,stroke:#a855f7
| 旋钮 | 配置 | 干什么 |
|---|---|---|
| 🎚️ 模型 | model = "gpt-5.4" | 选用哪个底模 |
| 🧠 推理强度 | model_reasoning_effort = "low/medium/high" | 让模型多想还是快答 |
| ⚡ 速度档位 | service_tier = "fast" | 标准档 vs 加速档 |
| 📚 上下文 | 默认 / 1M context | 一次能塞多少材料 |
🎚️ 模型选择:Codex 系列 2026 现状
| 模型 | 上线 | 特点 | 何时用 |
|---|---|---|---|
| 🚀 GPT-5.4 / 5.5 | 全平台主推 | 最强 agent 编程 + 1M 上下文(实验)+ 计算机使用能力 | 默认推荐 |
| ⚡ GPT-5.3-Codex | 2026-02-05 | 比上代快 25%,agent 编程优化 | 需要快又稳 |
| 🪶 fast 模式 | 全平台 | 最快响应,单步动作 | 错别字、解释代码、简单查询 |
📖 来源:Codex Changelog
🧠 推理强度:low / medium / high
# config.toml
model = "gpt-5.4"
model_reasoning_effort = "medium" # low / medium / highflowchart LR
subgraph Low["🟢 low —— 快答"]
L1[改错别字]
L2[解释代码]
L3[简单 lint 修复]
end
subgraph Medium["🟡 medium —— 默认"]
M1[修普通 bug]
M2[补测试]
M3[局部重构]
end
subgraph High["🔴 high —— 深思"]
H1[架构决策]
H2[复杂调试]
H3[多模块联动改]
end
style Low fill:#dcfce7,stroke:#22c55e
style Medium fill:#fef3c7,stroke:#f59e0b
style High fill:#fee2e2,stroke:#ef4444
| 档位 | 速度 | Token 成本 | 适合 |
|---|---|---|---|
| 🟢 low | 最快 | 最低 | 简单 / 重复 / 解释类 |
| 🟡 medium | 默认 | 中等 | 大部分日常任务 |
| 🔴 high | 慢 | 高 | 复杂决策 / 大重构 |
⚠️ 不要无脑开 high:很多任务在 medium 已经能做对,开 high 只是更慢更贵。
⚡ 速度档位:fast preset 是免费午餐
service_tier = "fast" 是默认开的稳定特性 —— 在不影响主要 agent 任务的前提下,对简单查询走加速通道。
# config.toml
service_tier = "fast" # 默认开,可关何时它会自动用上:
- 解释一小段代码
- 简单的 fix 建议
- 命令补全 / 路径建议
- 回答术语问题
何时仍然走标准档:
- 真正改文件
- 跑测试 / 构建
- 多步推理
💡 新手别动这个配置:默认开就好,让它自动判断。
📚 上下文长度:1M token 不是免费的
GPT-5.4 实验性支持 1M(一百万)token 上下文窗口。但能装下不等于该装下:
flowchart LR
A[小项目 / 单文件] --> B[默认 200K 够用]
C[中项目 / 多模块] --> D[200K 也够,按需 grep]
E[超大型仓库] --> F[1M context 派上用场]
style B fill:#dcfce7,stroke:#22c55e
style D fill:#dcfce7,stroke:#22c55e
style F fill:#fef3c7,stroke:#f59e0b
| 项目规模 | 推荐上下文 | 原因 |
|---|---|---|
| 单文件 / 学习 | 默认 | 装满浪费钱 |
| 中项目 / 局部任务 | 默认 + grep 选材料 | 精准比海量重要 |
| 超大型代码库 / 全库重构 | 1M context | 真有这种规模才用 |
🎯 回顾第 3 篇:上下文质量 > 上下文数量。右上角才是好上下文。
🎯 任务复杂度 → 配置档位映射
按你的任务对号入座:
| 任务类型 | 模型 | 推理 | 备注 |
|---|---|---|---|
| 📝 改错别字 / 文档 | fast | low | 秒回,便宜 |
| 🔍 解释代码 / 找文件 | fast | low | 不需要深思 |
| 🐛 修普通 bug | GPT-5.4 | medium | 日常默认 |
| 🧪 补测试 / 改组件 | GPT-5.4 | medium | 同上 |
| 🏗️ 跨模块重构 | GPT-5.4 | high | 多花点 token 值 |
| 🧩 架构决策 / 复杂调试 | GPT-5.5 | high | 关键决策不省 |
| 📚 全库重构 / 跨文件依赖分析 | GPT-5.4 + 1M context | high | 真用得上 1M 才开 |
🚫 常见误解 → ✅ 正确理解
| ❌ 误解 | ✅ 正解 |
|---|---|
| 用最强模型 = 结果最好 | 简单任务上下文不到位,再强模型也乱猜 |
| 推理强度越高越准 | 大部分任务 medium 就够;high 慢且贵 |
| 1M context 是新人福音 | 是少数超大型任务的工具,默认不用 |
| fast 模式是阉割版 | 是加速通道,简单查询用它最爽 |
| 选错模型会出大错 | 不会出错只会偏慢偏贵;调档是优化不是必须 |
🔍 想再深一层(点击展开)
📋 完整 config.toml 模型配置示例
# ~/.codex/config.toml
# 默认模型(全局)
model = "gpt-5.4"
model_reasoning_effort = "medium"
service_tier = "fast" # 加速通道
# 项目级覆盖
# .codex/config.toml
[project]
model = "gpt-5.5" # 这个项目用更强模型
model_reasoning_effort = "high" # 复杂业务📊 怎么查 token 用量
ChatGPT 账号后台有「Codex 用量」页面:
- 按天 / 按周聚合
- 区分模型 / 推理档
- 看哪个项目最烧 token
发现某个项目突增 → 检查是不是 AGENTS.md 太长 / 上下文塞太多 / 推理强度开过高。
📖 术语速查表
| 英文 / 缩写 | 中文 | 一句话解释 |
|---|---|---|
model_reasoning_effort | 推理强度 | low / medium / high 三档 |
service_tier | 服务档位 | "fast" 走加速通道 |
| context window | 上下文窗口 | 一次能塞多少 token 的材料 |
| token | 词元 | LLM 的计费 / 长度单位 |
| GPT-5.3-Codex | — | 2026-02-05 上线,agent 优化版 |
| GPT-5.4 / 5.5 | — | 2026 主推,全平台可用,1M context 实验 |
📝 本章自检
| # | 问题 | 自检 |
|---|---|---|
| 1 | 4 个可调旋钮分别是什么? | ☐ |
| 2 | 修普通 bug 该开什么档?为什么不开 high? | ☐ |
| 3 | 1M context 什么时候真该用? | ☐ |
✅ 过关标准:能用一句话说清 —— "按任务复杂度调档,不要无脑全开最强档。"
📚 下一篇
- ➡️ 10 · 团队协作和生产环境怎么落地 —— Codex 进 PR、CI、review、治理
- 📖 选择 Codex 模型
- 💰 理解价格和用量
- ⚡ 提升 Codex 响应速度
- 🎯 判断功能成熟度
🧭 一句话记住
Codex 不是越猛越好。按任务复杂度调档:fast 应付简单查询,medium 处理日常,high 留给真正复杂的决策。