第 44 篇 · LLM高级技巧

Temperature:控制AI的创造力

一个参数,决定AI是"保守派"还是"疯狂派"

你有没有发现,同样一个问题,有时候AI回答得很稳,有时候又很"放飞"?

比如你问:"天为什么是蓝色的?"

稳重版本:"天空呈现蓝色是因为瑞利散射。太阳光穿过大气层时,波长较短的蓝光被空气分子散射得更厉害,所以我们看到的天空是蓝色的。"

放飞版本:"想象一下,天空其实是宇宙的一面镜子,它吸收了大海的忧郁,折射出那抹深蓝。科学家说这叫瑞利散射,但我更愿意相信,这是大自然给我们的诗意馈赠……"

同样的模型,为什么输出差异这么大?

答案就在一个参数:Temperature(温度)

什么是Temperature?

1
Temperature 的定义

Temperature(温度)是控制AI生成文本"随机性"的参数。它的取值范围通常是 0 到 2,默认值一般是 1。

温度的直观理解
Temperature = 0最保守模式

AI几乎总是选择概率最高的词。输出非常确定、稳定、可预测。

特点:

• 同样的问题,几乎总是得到同样的回答

• 内容偏向"标准答案"

• 很少有意外或创意

适合:事实查询、代码生成、需要稳定输出的场景

Temperature = 1平衡模式(默认)

AI按照原始概率分布选词。有一定随机性,但不太离谱。

特点:

• 同样的问题,可能得到略有不同的回答

• 内容有适当变化

• 平衡了确定性和多样性

适合:日常对话、通用问答、平衡场景

Temperature = 2最疯狂模式

AI可能选择概率很低的词。输出非常随机、不可预测、可能很"放飞"。

特点:

• 同样的问题,可能得到非常不同的回答

• 内容可能很创意,也可能很离谱

• 可能出现语法错误或逻辑混乱

适合:创意写作、头脑风暴、需要意外惊喜的场景

Temperature如何工作?

2
Temperature 的工作原理

要理解温度如何工作,我们需要看看AI是怎么选词的。

从概率分布到温度调节

Step 1:AI预测每个词的概率

假设AI要预测"今天天气很___"的下一个词。它会给每个可能的词一个概率分数:

45%

不错

25%

15%

糟糕

5%

还有其他词(美丽、炎热、寒冷……)各占较小概率

Step 2:温度调整概率分布

温度会对原始概率进行"拉伸"或"压缩":

温度对概率分布的影响

Temperature = 0.1

好:90%
不错:7%
其他:3%

→ 概率被"尖峰化",几乎只选"好"

Temperature = 1

好:45%
不错:25%
差:15%

→ 保持原始分布

Temperature = 2

好:28%
不错:22%
差:18%
糟糕:12%

→ 概率被"平滑化",各词概率接近

Step 3:根据调整后的概率采样

AI根据调整后的概率随机选择一个词。温度低时,大概率词几乎必选;温度高时,任何词都有可能被选中。

🔧 技术细节

温度的数学公式是对softmax函数的调整:

softmax(x/T) = exp(x/T) / Σexp(x/T)

T(温度)越低,exp(x/T)的差异越大,概率分布越"尖锐";T越高,差异被缩小,分布越"平滑"。

温度的实战应用

3
不同场景的温度选择

场景与温度的最佳匹配
T=0~0.3

事实查询、代码生成

需要稳定、准确、可重复的输出。比如问"Python的list怎么排序"、写代码、回答数学题。

例子:"请写一个Python函数,计算斐波那契数列第n项"

T=0.5~0.8

日常对话、翻译、总结

需要一定的稳定性,但也希望有自然的变化。比如聊天、翻译文章、总结文档。

例子:"请帮我总结这篇文章的核心观点"

T=1.0~1.5

创意写作、故事生成

需要更多变化和创意。比如写小说、写诗、创作广告文案。

例子:"写一个关于未来城市的科幻短篇"

T=1.5~2.0

头脑风暴、实验性创作

需要大量意外和惊喜。比如创意头脑风暴、实验性写作、获取灵感。

例子:"给我10个颠覆性的产品创意"

温度与其他参数的关系

4
温度与Top-k、Top-p的配合

温度不是唯一影响采样方式的参数。它通常和 Top-k、Top-p 配合使用。

温度、Top-k、Top-p 三者的角色

🌡️ Temperature

作用:调整概率分布的"形状"

温度改变概率的相对差异,但不改变候选词的数量。

控制:"我有多大概率选低概率词?"

✂️ Top-k

作用:只保留概率最高的k个词

不管其他词概率多高,直接排除。是一种"硬截断"。

控制:"我最多考虑多少个候选词?"

📊 Top-p

作用:保留累计概率达到p的词

候选词数量不固定,根据概率分布动态调整。

控制:"我保留多少'可信'的候选词?"

💡 实践建议

三者通常一起使用,执行顺序是:

1. Top-k筛选2. Top-p筛选3. 温度调整4. 最终采样

常见组合:Temperature=0.7, Top_p=0.9, Top_k=50

温度的注意事项

5
使用温度的注意事项

⚠️ 注意1:温度=0不代表完全确定

温度接近0时,AI几乎总是选概率最高的词。但如果多个词概率完全相同,还是会有随机性。而且有些API可能不允许温度=0,会自动调到很小的正数。

→ 如果需要完全确定性输出,考虑用种子(seed)参数

⚠️ 注意2:高温度可能导致质量问题

温度太高(比如>1.5),AI可能选择概率很低的词,导致输出不连贯、语法错误甚至完全无意义。

→ 温度不是越高越好,要找到平衡点

⚠️ 注意3:不同API的温度范围可能不同

OpenAI的GPT系列温度范围是0~2,但其他模型可能不同。有些模型温度上限是1,有些可能更高。

→ 使用前查看具体API的文档

⚠️ 注意4:温度不是"创意开关"

高温只是增加了"随机性",不等于"更有创意"。创意还取决于Prompt质量、模型能力、上下文等多种因素。

→ 高温度+好Prompt = 可能有好创意;高温度+差Prompt = 可能是胡言乱语

总结

6
核心总结

🎓 一句话总结

  • 定义:温度控制AI生成文本的随机性,0最保守,越高越随机
  • 原理:温度调整概率分布——低温"尖峰化",高温"平滑化"
  • 场景匹配:T=0~0.3适合事实/代码;T=0.5~0.8适合对话;T=1+适合创意
  • 配合使用:温度与Top-k、Top-p配合,共同控制采样策略
  • 注意事项:温度=0仍有微小随机,高温可能降质量,不是万能创意开关

下一篇预告

👉 下一篇:Top-k采样

温度控制"怎么选",但"从哪些词里选"呢?Top-k采样就是解决这个问题的——它只保留概率最高的k个词,把其他词直接排除。为什么这样设计?k选多少合适?下一篇我们来详细讲解。

✏️ 手绘图解 · AI Catch 出品

第 44 篇 / 共 84 篇 · 第五阶段:LLM高级技巧