技术 · 熟练

temperature 被删了,语气还怎么控?

不是「模型变笨了」,是你那两行代码从今天起会报 400
头部厂商正在一起把采样参数(temperature / top_p / top_k)拿掉:Anthropic 从 Opus 4.7 起,把这三个值设成非默认就返回 400;OpenAI 的 GPT-5 系列推理模型只认默认值 1;Google 的 Gemini 3.6 Flash 先「忽略」它们,官方写明未来版本会返回 400。麻烦的地方在于报错不在你这边发 —— SDK 仍然保留这些字段,所以你本地跑得好好的,直到某天线上请求被服务端拒掉。这一页做的是一次参数迁移盘点:先把「你靠哪个旋钮控制风格」找出来,再把控制权搬到官方指定的两个替代位 —— 提示词里的明确规则 与 推理强度参数 —— 最后补一道「算准」的复算(推理模型的同一段文本,token 数会变)。
方法 · 一图看懂
1
先找到「谁在设它」 — 三处都要翻:调用代码里的默认值、内部封装/网关自动加上的字段(很多 OpenAI 兼容客户端默认带 temperature)、以及保存在配置或环境变量里的那份
2
逐个请求换成「不计参数」的写法 — 非默认的 temperature / top_p / top_k 一律省略;手动扩展思考(固定 budget_tokens)换成自适应思考;预填模型回复换成 system 指令或结构化输出
3
把「风格与波动」搬进提示词 — 原先靠调温度实现的效果,改成写死的规则:几条、什么语气、要不要给多个版本、要不要给格式示例;把「生成多个候选再择优」从「靠温度制造多样性」改成「显式生成 N 份再比」
4
复算 token 与限流 — 同一段文本在新模型上可能被切成多约三成的 token ⇒ 用官方的计数接口重量一次,再调 max_tokens 与限流阈值,别等 429 才发现预算不对
原理 · 为什么有效
为什么这一轮改的是采样参数、而不是「顺手优化」:新一代理性模型内部要跑多轮推理、验证与选择,强制它走一条确定性的采样路径,会把这套机制打断 —— 所以厂商宁可让你删掉这个旋钮,也不让你用「温度 0.2」把它按死。官方给出的替代件是两条正交的控制:「想多深」交给推理强度参数(reasoning_effort / effort / adaptive thinking),「要什么味」交给提示词里的明确规则。这也解释了那三条迁移纪律为什么都指向同一个方向:把控制从「模型外部的一次性参数」搬进「每次都要写清楚的指令」 —— 前者随版本蒸发,后者跟着你的代码一起走。
适用场景
适用:任何把模型调用写进代码或自动化的人 —— 脚本、内部封装、共用网关、批处理、自建 agent 全算;尤其是「参数是在公共封装里统一加上的」那种项目,一处漏改就是全线 400。
不太适用:只用对话界面、从不调 API 的人(你手上没有这些旋钮);以及仍在使用「经典档」模型(经典 Sonnet / Haiku、GPT-4o 及更早、绝大多数开源模型)的项目 —— 它们仍保留采样参数 ⇒ 不要提前删,删了反而丢掉你现有的控制手段。
自测 · 5 问
我能不能说出自己「靠哪个参数」控制输出风格?说不出来,说明还没找到那个旋钮
我的请求里有没有非默认的 temperature / top_p / top_k?(含内部封装自动加的那一份)
还在用手动扩展思考或预填模型回复吗?这两条在部分新模型上已经直接 400
原先把风格寄托在温度上的地方,我改成提示词规则了吗?还是只是删掉了参数?
我按新模型的 token 口径重新量过一遍上下文与费用了吗?
怎么上手 · 验证步骤
顺序别乱:先「找」再「删」,最后才「补」。① 在你真正发请求的那一层(不是文档、不是同事的记忆)打一条日志,把出站请求体原样打出来,看看到底带了哪些字段 —— 很多项目的问题就在「封装层悄悄加了 temperature」;② 把非默认值改成省略,一次只改一处、改完跑一遍你的日常任务,确认输出格式没变;③ 被删掉的风格控制,一条条写成提示词里的明确规则(例如「只输出三条」「用正式书面语」「给两个不同版本,其余不要」);④ 需要多样性的场景(要几份候选再择优)改成显式生成 N 份,而不是靠调温度。
做完怎么自检:拿一条你日常最依赖的请求,改前改后各跑三次,把三次输出放在一起看 —— 格式还稳、关键字段还在、风格没有变得比原来更淡,才算迁移完成。另外核两件事:① 日志里确实不再出现非默认的采样字段 ② 费用与限流按新口径重新算过一遍(同一段文本的 token 数可能涨,这不是错觉)。
[C级]Prompt Architects《Temperature, Top-P, Top-K: AI Sampling Parameters Explained (2026)》(逐字引 OpenAI 报错原文与 Anthropic 官方口径「Omit these parameters and use prompting」) [C级]Dawn Liphardt《Temperature: A Setting That Gets Lost Across Different Model Types》(并列 Anthropic / Google / OpenAI 三家弃用口径) [C级]iCreat《Claude Sonnet 5 API Errors: Why Temperature, Top P, and Manual Thinking May Return 400》(引 Claude Platform Docs 与 Sonnet 5 最佳实践指南) [C级]AI搜索实践笔记《Gemini 3.6 Flash 降价 16%,但 API 废弃了 temperature:开发者如何迁移?》(编译 · 引 Google 官方迁移检查清单) [C级]Tensorplay《AI News September 2026 for Production AI Teams》(引 OpenAI / Anthropic / Google / AWS changelog) [C级]AI News Home《AI Model Shutdown & API Deprecation Deadlines》(第三方核对版 · 页面自注 Verified September 27, 2026) 同类:「额度怎么算的,变了」——先摸清自己到底用掉多少 · 为什么越勤快地压缩,账单反而越贵? · 回答空白,未必是超时
继续往下读
同级:「额度怎么算的,变了」——先摸清自己到底用掉多少 下一级:上下文一长就变笨,到底该砍到多少? 随机一篇