重要任务就该开启 Ultra?这是我使用 GPT‑5.6 Sol 最久的误区
重要任务就该开启 Ultra?这是我使用 GPT‑5.6 Sol 最久的误区

任务越重要,越应该把 GPT‑5.6 Sol 的推理能力开到最高——这个看起来非常合理的判断,曾经让我在一个规划任务上等了一个多小时。
后来我才意识到:选择推理强度时,真正应该关注的不是“任务有多重要”,而是“当前阶段还剩多少未知”,以及“任务是否适合拆成多个独立方向并行探索”。
一次迟迟无法结束的规划
前段时间,我让 Codex Desktop 里的 GPT‑5.6 Sol 帮我规划一个重要任务。
因为任务比较复杂,我几乎没有犹豫,直接开启了 Ultra。我的逻辑很简单:重要任务当然应该让最强的模型投入最多计算,先把所有问题想透,再开始执行。
结果却和预想完全不同。
Sol 分析完需求,开始检查架构;检查完架构,又继续研究边界条件、替代方案、潜在风险和验证路径。一个问题刚分析清楚,它又发现了另一个值得调查的问题。
原本只是想得到一份可执行方案,最后却逐渐变成了一场范围不断扩大的研究。一个小时过去,它还在规划。
期间我反复提醒:
- 不要过度思考;
- 尽快收敛;
- 先完成当前任务;
- 不要继续扩大范围。
这些提示能够短暂改变方向,却没有真正解决问题。过一会儿,模型又会找到一个看起来很合理的新问题,然后继续搜索、比较和验证。
这个问题困扰了我很久。现在回头看,问题不是 Sol “想太多”,而是我给它选择了一种鼓励广泛探索的工作模式,却期待它像执行者一样快速结束讨论。
先澄清:max 和 Ultra 不是同一个概念
在讨论如何选择档位之前,必须先把两个容易混淆的概念拆开。
根据 OpenAI 当前的 GPT‑5.6 文档,API 中的 reasoning.effort 支持:
| 推理强度 | 典型取向 |
|---|---|
none / low |
更关注延迟,减少额外推理 |
medium |
默认的平衡起点 |
high / xhigh |
当更多推理能够带来可测量的质量提升时使用 |
max |
面向最困难、质量优先且需要更多探索与验证的任务 |
也就是说,API 推理强度的最高档是 max,而不是 Ultra。GPT‑5.6 Sol 的模型页也明确标注,medium 是默认值。
Ultra 则是 Codex 中的一种工作模式。OpenAI 在 GPT‑5.6 指南中介绍 Multi-agent 时,将它描述为与 Codex Ultra 类似:由一个模型协调多个子 Agent,并行处理相对独立的工作流,再综合结果。这类方式适合能够被清晰拆分的复杂任务,可能缩短墙钟时间,也可能提高最终质量。
因此,更准确的理解是:
reasoning.effort主要控制单次请求投入多少推理;Ultra 还可能改变任务的执行形状,让探索从一条路径扩展成多个并行工作流。
这也是我之前判断失误的关键。我把 Ultra 当成了“比最高推理档再高一点”,却忽略了它还可能扩大横向搜索范围。
任务重要性,不等于推理强度
过去我的判断方式只有一个维度:
任务越重要,推理档位越高。
但在实际开发中,任务的重要性和任务的不确定性并不是一回事。
一个任务可以非常重要,但如果目标、修改范围、接口、实施步骤和验收条件都已经明确,接下来的核心工作就是忠实执行,而不是继续探索设计空间。
反过来,一个看似普通的 Bug,也可能涉及并发、缓存一致性、历史兼容或难以复现的状态问题。任务规模虽然不大,执行过程中却充满未知,它反而需要更强的推理。
所以,我现在会先问两个问题:
- Sol 现在是在做决策,还是在执行已经做好的决策?
- 剩余问题是一条需要深入的路径,还是多个可以独立调查的方向?
这两个问题比“任务重要吗”更能决定应该选择什么模式。
为什么 Ultra 特别容易让规划范围扩大

设计任务天然适合被拆分:
- 架构方案可以单独研究;
- 数据流和接口可以单独研究;
- 风险与边界条件可以单独研究;
- 迁移方案可以单独研究;
- 测试和验证路径也可以单独研究。
如果这些方向确实都需要深入调查,Ultra 的并行能力会非常有价值。
但如果目标只是尽快形成一份“足够可靠、可以开始执行”的方案,过宽的探索就会产生一个副作用:每个方向都可能发现新的问题,新问题又会触发更多调查,最终让规划迟迟无法收敛。
这不是 Ultra 做错了,而是任务形状和工作模式没有匹配。
| 任务形状 | 更合适的选择 | 原因 |
|---|---|---|
| 目标和路径明确,只需实现与验证 | medium 起步 |
重点是稳定执行,而非继续扩展设计空间 |
| 实现中仍有关键未知 | high 或 xhigh |
需要在落地过程中持续判断 |
| 极难、质量优先,需要更多验证 | max |
愿意用延迟和成本换取进一步探索 |
| 多个方向相对独立,而且确实都值得调查 | Ultra | 能够并行拆分并综合多个工作流 |
| 问题彼此强依赖,需要频繁共享中间结论 | 单 Agent 顺序推进 | 并行拆分可能带来重复调查和协调成本 |
这张表不是 OpenAI 规定的固定搭配,而是我结合官方原则和个人开发经历总结出的选择框架。
为什么“不要过度思考”通常没用
想明白任务形状之后,我也终于理解了为什么反复提醒“不要过度思考”效果有限。
一方面,我通过 Ultra 告诉系统:这是一个值得投入大量探索、可以并行展开的复杂任务。另一方面,我又在提示词里要求:不要展开,尽快停止。
这就像一边踩油门,一边对汽车喊“开慢一点”。
更重要的是,“不要过度思考”并没有告诉模型:
- 哪些问题值得继续调查?
- 最多比较多少个方案?
- 什么样的新发现会改变核心决策?
- 哪些问题只需记录,不应在当前阶段展开?
- 达到什么条件后,规划就算完成?
“少想一点”只是一种愿望,“达到这些条件后停止”才是一条可执行的规则。
我现在使用的“收敛协议”
对于重要的规划任务,我现在会明确告诉 Sol:目标不是穷尽所有可能性,而是在证据充分后形成可靠决策。
可以直接使用下面这段提示词:
这是一个重要且复杂的设计任务,需要充分分析,但目标是形成可靠、可执行的方案,而不是穷尽所有可能性。
- 先识别真正影响核心决策的变量。
- 最多深入比较 2~3 个存在实质差异的方案。
- 发现新问题时,先判断它是否有较大概率改变核心设计;不会改变的,记录为后续事项,不在本轮展开。
- 当现有证据足以支持一个明显更合适的方案时,立即收敛。
- 输出最终方案、关键取舍、风险、验证方式和剩余不确定性,然后结束规划。
- 当前阶段只完成设计,不执行实现,也不主动扩大到非必要重构。
这段提示词里,最关键的不是“最多比较三个方案”这样的数量限制,而是一个判断条件:
继续思考,是否有较大概率改变最终方案?
如果答案是肯定的,继续调查值得投入。如果只是可能找到一种更优雅的写法、多补充一个不会影响决策的边界情况,或者再次确认已经充分的证据,就应该把它记录下来,进入执行阶段。
我的默认工作流:让推理预算随未知变化
我以前的工作流是:重要任务直接 Ultra,然后等待模型自己结束。
现在,我更倾向于把规划、执行和异常分析拆开,为每个阶段选择合适的推理预算。

我的默认思路是:
- 规划阶段:需要做高价值取舍时,提高推理强度;
- 执行阶段:方案已经明确时,从
medium开始; - 异常阶段:出现真实未知时,切换到
high或xhigh; - 重新规划:只有关键设计假设被推翻,才回到高强度规划;
- 并行调查:只有多个独立方向都值得研究时,才考虑 Ultra。
关键不是死记某一套组合,而是让推理预算随着“剩余未知”动态变化。
如果通过 API 使用,应该怎样设置
在 Responses API 中,推理强度通过 reasoning.effort 设置。下面是一个以 medium 为起点的简化示例:
from openai import OpenAI
client = OpenAI()
response = client.responses.create(
model="gpt-5.6-sol",
reasoning={"effort": "medium"},
input="按照已经确认的设计方案完成实现,并运行测试验证。不要扩大修改范围。",
)
print(response.output_text)
如果评测表明更多推理能够显著提高成功率,可以把 effort 调整为 high、xhigh 或 max。不要仅凭“这个任务很重要”就默认选择最高值。
需要特别注意:API 中设置 reasoning.effort: "max",并不等于开启 Codex Ultra。Ultra 涉及并行子 Agent 的任务协调,是另一层执行机制。
不要只比较首次响应速度,要比较总交付时间
medium 通常更快,但不代表它在所有任务中都更高效。如果较低推理强度导致首轮频繁出错,后续需要多次返工,最终耗时可能反而高于 high。
更合理的指标是:
总交付时间 = 首次执行时间 + 修复返工时间 + 人工干预时间
可以从自己的真实项目中选择几类代表性任务,分别测试不同配置:
| 指标 | 记录内容 |
|---|---|
| 首次完成时间 | 从开始执行到首次给出完整结果 |
| 一次通过率 | 测试、构建或验收是否首次通过 |
| 人工纠正次数 | 需要多少次补充说明或改变方向 |
| 范围扩张 | 是否修改了任务之外的文件或设计 |
| 返工时间 | 修复错误和撤回多余改动的时间 |
| 总 Token 与成本 | 更高推理投入是否带来足够收益 |
OpenAI 的官方建议也是从代表性任务出发做比较,而不是假设最高推理强度永远是最佳选择。对于 GPT‑5.6,medium 是平衡起点;只有更多推理能带来可测量的质量增益时,才升级到更高档位。
什么时候我仍然会开启 Ultra
我现在不再默认使用 Ultra,但这并不意味着 Ultra 没有价值。下面这些任务仍然很适合它:
- 需要同时研究多个相对独立的技术方案;
- 大型代码库中,不同子系统可以独立审查;
- 需要并行调查性能、安全、兼容性和测试策略;
- 多个候选实现可以独立验证,最后统一比较;
- 单个方向耗时很长,而并行处理确实能够缩短墙钟时间。
我通常不会为以下任务开启 Ultra:
- 修改位置和验收标准已经明确;
- 只需要实现一个局部功能;
- 问题之间存在很强的顺序依赖;
- 当前最重要的是控制范围,而不是扩大探索;
- 没有明确的综合标准,多个分支即使完成也难以比较。
一个很实用的判断句是:
如果我不能清楚说明要并行调查哪几个独立方向,那我大概率还不需要 Ultra。
总结
我使用 GPT‑5.6 Sol 最久的误区,不是高估了模型能力,而是把“重视任务”错误地表达成了“给它最大的推理预算”。
真正重视一个任务,应该把计算资源放在最有决策价值的地方:
- 需要做决定时,提高推理强度;
- 决定完成后,转向稳定执行;
- 遇到关键未知时,再提高推理;
- 关键假设被推翻时,重新规划;
- 多个独立方向确实都值得调查时,再使用 Ultra;
- 达到验收条件后,及时停止并完成交付。
Sol 的能力已经强到,真正的问题不再只是怎样让它想得更深,而是怎样为每个阶段分配合适的推理预算,并让它在正确的时间开始交付。
参考资料
更多推荐




所有评论(0)