模型从不直接挑一个词,它是从一份列表里选
读完你的提示词后,语言模型会给词表里的每一个token打分,当前模型的词表大小在10万到20万之间,然后把这些分数转换成概率:"树叶"45%,"天气"25%,"颜色"15%,以此类推,形成一条长长的尾巴。什么是LLM讲了它为什么是这样工作的。接着它从这份列表里抽出一个token,接在后面,然后重新来一遍。
Temperature作用在打分和抽取之间。每个分数在计算概率之前都会先除以温度值。除以一个小于1的数,分数之间的差距会被拉大,于是最靠前的候选词优势更明显。除以一个大于1的数,差距会缩小,长尾词因此获得真正的机会。当温度恰好为0时,数学计算就退化成"永远取最高分",这也是0被宣传为确定性设置的原因。
这个名字借自物理学,气体越热,粒子的随机运动就越多。模型越"热",选出的词就越随机。模型的知识本身不会改变,改变的只是抽取这一步。
这个数字对概率做了什么,用一个例子讲清楚
假设某个提示词的下一个词,模型给出五个候选,概率分别是45%、25%、15%、10%和5%。这就是温度为1时的分布。把公式套用到0.5和2上,同样这五个候选词会变成下面这样。这些百分比是按公式算出来的,不是实测的,但形状和每一个真实分布是一致的。
看一下第五名候选词在三个面板里的变化:不到1%,然后是5%,再到11%。在一段500个token的答案里,每个token有11%的概率选到第五好的词,累积起来就会变成那种跑题、编造、最终不知所云的文本,这正是有人把playground的滑块拉到2时看到的效果。再看排名第一的候选词:即便在0.5时,它也有三分之一的机会落选,所以低温度只是更稳定,而不是固定不变。
这一点关系到"确定性"这个说法。Anthropic的API文档写道,即便温度为0,结果也"不会完全确定性",这个保留是真实存在的:并行硬件上的浮点运算以及厂商端的批处理,都意味着同一个提示词在温度为0时仍可能给出两个不同的答案。如果你需要完全一致的输出,把答案存下来,不要指望这个设置。
各家厂商允许的范围,以及默认值是多少
| 厂商 | 范围 | 默认值 | 说明 |
|---|---|---|---|
| OpenAI | 0到2 | 1 | 推理模型(o系列、开启推理的GPT-5)不接受这个参数 |
| Anthropic | 0到1 | 1 | Opus 4.1及之后的版本会拒绝同时设置两个参数的请求 |
| Google Gemini | 0到2 | 1 | 在AI Studio里以滑块的形式展示 |
| OpenRouter | 直接透传 | 厂商默认值 | Whizi用来接入每一个模型的通道 |
有三点值得注意。所有厂商都默认用1,也就是按模型自身的概率分布采样,所以你在普通聊天里得到的答案,本身就已经是众多可能抽取结果中的一次。Anthropic的范围止步于1,所以Claude的温度1是上限,而OpenAI的1只是中点;这些数字在不同厂商之间不能直接比较。而且推理模型会拒绝这个设置:OpenAI把temperature列为o系列和GPT-5不支持的参数,发送了就会报错,Anthropic则要求只要开启了扩展思考就必须是1。
不同任务该用哪个设置
规则就一句话:有唯一正确答案的任务用低值,有很多种好答案的任务用高值。
| 任务 | Temperature | 原因 |
|---|---|---|
| 提取到表格或JSON、分类、代码 | 0到0.3 | 只有一种正确形状,变化就是缺陷 |
| 摘要、翻译、事实性问题 | 0.3到0.7 | 允许一点措辞自由,但不想要编造 |
| 起草、改写、头脑风暴 | 0.7到1 | 厂商的默认值,多样但连贯 |
| 小说、命名、口号、刻意求怪的想法 | 1到1.3 | 长尾词正是重点所在 |
| 高于1.5 | 很少用 | 连贯性下降得比新颖性上升得快 |
两点提醒。Temperature并不控制真实性。温度为0的模型选的是它认为最可能的答案,如果那个最可能的答案是错的,它会每次都以十足的自信错下去,什么是AI幻觉从训练的角度解释了这一点。而且temperature不是控制语气或长度的旋钮,那些应该写进指令里,面向新手的提示词工程讲了这部分;这个数字只决定模型在一个词上赌一把的频率。
为什么你在聊天应用里从没见过这个滑块
ChatGPT、Claude应用、Gemini和Whizi都不暴露temperature控制。这个设置存在于开发者的playground和API里,而三家厂商没有一家公开自己应用所用的数值。Whizi不发送这个参数,所以这里的每个模型都跑在各自厂商的默认值1上。原因和前面一样:默认值本身就已经是大多数任务想要的设置,把滑块放在错的地方,会把一个好的助手变成一个坏助手,而且完全没有信号告诉你是哪个旋钮出的问题。
一个多模型工作区给你的替代方案是一根更大的杠杆。两个不同的模型就是两份不同的概率列表,在它们之间切换,对答案的改变远大于任何一个temperature值。取代滑块的习惯是:对于有唯一正确答案的任务,问第二个模型,只在它们意见一致时才采用;对于有很多种好答案的任务,问两个模型,然后自己挑。在Whizi里,这就是对话中途换模型,对话中途切换模型讲了哪些内容会被保留下来。
如果你确实需要这个旋钮,它就在厂商自己的API或playground里,按每次请求设置,上面表格里的范围都适用。
- 任何只有一种正确形状的任务用0到0.3:提取、分类、代码
- 起草和改写保留默认值1,这是每家厂商调优的目标
- 永远不要把0当成输出完全一致的保证,想保留的答案要自己存下来
- 不要指望temperature修正语气、长度或准确性,那些是指令问题
- 聊天应用没有滑块时,换模型来解决,这比任何temperature值都更能改变答案
常见问题
AI里temperature为0是什么意思?
温度为0时,模型总是直接取唯一最可能的下一个token,而不是采样,所以同一个提示词几乎每次都给出相同的答案。Anthropic的API文档写道,即便温度为0,结果也"不会完全确定性",因为硬件和批处理仍可能引入微小差异。它适合提取、分类和代码这类任务,但完全不会让那个最可能的答案变得更正确。
ChatGPT用什么temperature最好?
ChatGPT应用不让你设置这个值,OpenAI也不公开应用所用的数值。通过API的话,结构化输出和事实性提取用0到0.3,写作用0.7到1,只有刻意追求多样化的创意文本才用高于1的值。OpenAI的推理模型只要收到这个参数就会直接报错。
temperature和top-p有什么区别?
Temperature重塑整份概率列表,把它变尖或变平。Top-p则是截断列表,只保留概率加起来达到p的最靠前那些token,再从中抽取。两者都能降低或提高随机性。OpenAI建议只改其中一个,Anthropic在Opus 4.1及之后的版本上会拒绝同时设置两者的请求。
更高的temperature会让AI更有创意吗?
它会让模型更频繁地选出不太可能的词,大约到1.3之前读起来像有创意,过了1.5左右就变得语无伦次。在一个实测例子里,把温度从1提到2,会让排名第五的候选词的概率从5%涨到11%,而这会在每一个token上累积。真正意义上更好的创意来自提示词和模型本身,而不是这个旋钮。
在Whizi里能修改temperature吗?
不能。Whizi不发送temperature,所以每个模型都跑在各自厂商的默认值上;ChatGPT、Claude应用和Gemini同样不暴露这个控制,也不公开数值。在多模型工作区里,等价的杠杆是模型选择器:两个模型就是两种不同的概率分布,对话中途切换对答案的改变比任何temperature设置都更大。