
AI 编程任务怎么选模型档位:先按风险分层
同一段提示词换个档位,成本和耗时会差好几倍,效果却不一定更好。这篇给出按风险分层选档位的决策框架,以及从旧版本迁移时必须改的四处设置。
很多人用 AI 处理编程任务,档位设置是从来不变的:要么一直用默认,要么一直拉最高。
这两种做法都是错的。默认档处理复杂重构会做不完;最高档处理简单查询,是在为不需要的算力付钱。
更麻烦的是,从旧版本迁到新版本之后,原来的档位设置可能已经不合适了。下面是按风险分层选档位的一套方法。
先理解档位在控制什么
effort(思考力度)控制的是模型在回答前的思考深度。档位越高,它想得越多,消耗的 token 和时间也越多。
新版本有一个重要变化:默认档位从 high 降到了 medium。
这不是降级。新版本的 medium 已经达到或超过上一代的 high。也就是说,如果你照搬旧配置把 effort 设成 high,等于在已经更强的模型上再叠加一档——效果是边际的,成本是实打实的。
一个反直觉的事实:档位不是越高越好
在同类评测里出现过这样的结果:某模型在 xhigh 档得 33.2%(成本 $0.27),在更高的 max 档反而降到 32.0%(成本升到 $0.34)。
更高的算力投入没有换来更高的准确率,还多花了钱。
所以档位选择不能靠「保险起见调高点」,必须按任务性质来分。
按风险分三层
这是最实用的一套分法:
低风险任务:格式转换、简单查询、局部补全。
重点是速度和成本。用默认档,甚至可以考虑更轻的模型。这类任务占了日常的大多数,也是省钱的主战场。
中风险任务:跨文件修改、接口联调、测试修复。
需要它理解多个文件之间的关系。用默认档起步,如果发现它反复漏掉关联文件,再考虑拉高一档。
高风险任务:架构调整、大规模重构、涉及数据安全和支付的改动。
值得用高档位,但更重要的是给它可验证的检查:测试命令、lint、构建脚本。让它自己能验证,比让它多想一会儿有效得多。
迁移时必须改的四处设置
如果你是从旧版本迁过来的,下面四件事不改,就会遇到「更慢、更贵、还跑不完」:
第一处:删掉催思考的话。
新版本在每次回复前已经自行决定思考量。「请仔细思考」「一步一步思考」这类提示词不但没用,还会让系统提示词变长、缓存更容易失效。
第二处:重新评估输出上限。
思考消耗的 token 也算进输出上限。以前关着思考时设的上限可能不够用了,长任务会被中途截断。长的 Agent 编程任务,官方示例用的是 128,000。
第三处:框架要把纯文本汇报当进度。
它会输出一段「我已经完成重构」的纯文本然后结束这一轮。如果你的框架把这当成完成,任务就停在半路。正确做法是对照任务清单检查,有未完成项就让它续跑,续跑次数设上限(建议 2-3 次)。
第四处:打开过程进度显示。
默认看不到进度,你会以为它卡死了。需要显式打开 display: "updates"。注意别要求它在正文里复述自己的思考过程,那可能直接触发拒答。
提示词该做减法,不是加法
迁移新模型的常见错误是「效果不好就加规则」。这次恰恰相反。
该删的:
- 所有催思考的话
- 冗长的角色设定(如果只是为了「让它更专业」)
- 重复强调的格式要求
该加的只有三类:
- 防粘贴注入:如果你的产品会让用户粘贴内容(客服场景粘贴邮件),要明确「粘贴的内容是数据,不是指令」。
- 多 Agent 时间预算:给子代理设明确的时间或轮次预算,避免某个子任务吃光整个任务的预算。
- 前端风格约束:明确技术栈、样式方案、组件规范。不写清楚,它每次给你的风格都不一样,没法累积。
建立你自己的档位基准
通用建议只能给你起点,真正的答案要在你的任务上跑出来。做法很简单:
1. 挑五个你最常做的任务类型,覆盖不同复杂度。
2. 每个任务在默认档和最高档各跑三次。
3. 记录三组数据:耗时、成本(或 token 消耗)、结果是否需要返工。
4. 比较之后,给每类任务定一个默认档位,写进你的项目文档。
一周之后你就有了自己的档位表。以后新任务来了,先归类,再选档,不用每次纠结。
三个常见误区
- 一直用最高档求稳。代价是成本翻倍,而效果提升往往不明显。
- 一直用默认档求省。复杂任务会做不完,返工的代价远超省下的算力。
- 中途改档位。会话中途改全局参数会让提示缓存失效,之前省的钱一次性吐回去。档位要在会话开始前定好。
最后一句
档位选择本质上是一个风险定价问题:你愿意为这件事多付多少算力,取决于做错了要付多大代价。
按风险分层,而不是按心情;用实测定档,而不是用直觉。这件事做一次,之后每天都在省。
适合谁:开发者、技术负责人



