What is 温度?

    一个采样参数,控制语言模型输出的随机性——较低的值产生更确定性的响应,较高的值增加创造性和多样性。

    Definition

    温度是在文本生成的 token 采样阶段应用的一个标量参数,控制模型输出的"随机"或"创造性"程度。从技术上讲,温度在 softmax 函数将 logits(原始预测分数)转换为词汇表上的概率分布之前对其进行缩放。温度为 1.0 时使用模型的原始概率。低于 1.0 的值会使分布更加尖锐,使最可能的 token 变得更加可能(更具确定性)。高于 1.0 的值会使分布更加平坦,使不太可能的 token 有更大的被选中概率(更随机和有创造性)。

    在极端情况下,温度为 0(或接近零)使模型始终选择最可能的下一个 token——这称为贪婪解码,产生完全确定性的输出。另一方面,温度为 2.0 会创建几乎均匀的分布,模型可能选择不常见或不寻常的 token,通常产生不连贯的文本。大多数实际应用使用 0.0 到 1.0 之间的温度,最佳值取决于任务。

    温度与其他采样参数(如 top-p(核采样)和 top-k)相互作用,共同塑造最终的 token 选择过程。这些参数协同工作:温度调整整体分布形状,而 top-p 和 top-k 截断分布以排除最不可能的 token。理解这些参数如何交互是在模型输出中实现一致性和多样性之间正确平衡的关键。

    Why It Matters

    温度是 LLM 部署中最面向用户的参数之一,因为它直接影响模型的感知个性。客户支持聊天机器人通常使用较低的温度(0.1-0.3)以获得一致、可靠的回答。创意写作助手使用较高的温度(0.7-1.0)以获得多样化和出人意料的文本。温度设置错误会使事实问答系统不可靠(太高)或使创意工具单调重复(太低)。对于微调模型,最佳温度还取决于模型的训练方式——在多样化输出上训练的模型可能需要较低的温度来稳定,而在统一输出上训练的模型可以容忍较高的值。

    How It Works

    在模型的前向传播产生一个 logit 向量(每个词汇 token 一个分数)后,通过将每个 logit 除以温度值来应用温度:adjusted_logit = logit / temperature。这些调整后的 logits 然后通过 softmax 函数产生概率。当温度小于 1 时,除法放大了 logits 之间的差异,将概率质量集中在顶部 token 上。当温度大于 1 时,除法压缩了差异,将概率更均匀地分散。最终的 token 从这个调整后的概率分布中采样(如果同时应用了 top-p 或 top-k,则从截断版本中采样)。

    Example Use Case

    一个内容生成平台为用户提供一个"创造力滑块",映射到模型的温度参数。对于产品描述(事实性、一致性),滑块将温度设为 0.2。对于营销标语(创造性、多样性),将温度设为 0.8。对于头脑风暴会议(最大多样性),将温度提高到 1.2。同一个微调模型服务于所有三种用例,温度是唯一变化的参数——展示了这一个参数如何能显著改变模型行为。

    Key Takeaways

    • 温度在 softmax 之前缩放 logits,控制 token 选择的随机性。
    • 较低的值(0.0-0.3)产生确定性、一致的输出;较高的值(0.7-1.2)增加创造性。
    • 温度为 0 时进行贪婪解码(始终选择最可能的 token)。
    • 它与 top-p 和 top-k 协同工作来塑造最终的采样分布。
    • 最佳温度取决于任务:事实性任务需要低值,创造性任务需要高值。

    How Ertas Helps

    当用户在 Ertas Studio 中评估微调后的模型时,可以在推理 playground 中调整温度参数,查看它如何影响输出质量和多样性。Ertas 的部署选项——无论是通过 Ertas Cloud API 还是通过 GGUF 导出进行本地推理——都支持温度作为可配置参数,让终端用户在生产应用中控制创造性与一致性之间的权衡。

    Related Resources

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.