F7.3 F7

Temperature:确定性不等于准确性

Temperature 控制输出的随机性。就这样。不是速度,不是长度,不是准确性,不是置信度。只是模型在选择每个 token 时引入多少变化。

刻度

  • Temperature 0 — 接近确定性。同样的输入 → 每次(几乎)同样的输出。模型总是选概率最高的 token。
  • Temperature 0.5 — 平衡。有一些变化,但整体保持一致。
  • Temperature 1.0 — 最大多样性。最有创意,最多变化,最不可预测。

关键误解

Temperature 0 不保证准确。 它保证的是确定性。模型一致地选概率最高的 token——但概率最高的 token 可以是事实错误的。一个”认为”澳大利亚首都是悉尼的模型,在 temperature 0 下每次都会说悉尼。确定性 ≠ 正确。

Temperature 影响的是 token 选择的概率分布。它不会加一个”置信度过滤器”来屏蔽不确定的回答。它不会让模型”只说有把握的事”。

Temperature 不控制什么

  • 速度 — temperature 不影响生成速度。不管 temperature 怎么设,每个 token 的计算量一样。
  • 长度 — 输出长度由 max_tokens 和模型自然的完成行为控制,不是 temperature。
  • 能力 — 模型不会在某个 temperature 下解锁更好的推理。同一个模型,只是采样行为不同。

Temperature 匹配任务

任务类型Temperature原因
数据提取0同一张发票应该每次提取出同样的值
分类0同一个工单应该每次拿到同样的类别
创意写作1.0多样有趣的输出才是目标
头脑风暴0.7-1.0多样性产生更多点子
日常对话0.5一致性和自然度之间的平衡

对于提取和分类,哪怕 0.5 都引入了不必要的变化。当只有一个正确答案时(发票金额就是 $127.50),随机性不增加任何价值——只增加不一致性。

对于创意任务,temperature 0 产出重复、平淡的内容。高 temperature 带来的多样性是真正的好处,不是 bug。


一句话总结: Temperature 控制随机性(0 = 确定性,1.0 = 最大多样性),但不控制准确性——模型在 temperature 0 下可以一致地犯错。按任务匹配:提取用 0,创意用 1.0。