在 ChatGPT 中,temperature(温度值)是一个重要的参数, 通过 API 调用方式设置。我们可以将它比喻为调节 AI 创造性的 “温度控制器”。
「温度值」是一个大于0的数值,在 0 到 2 之间,它影响模型生成文本时采样预测词汇的概率分布。
当模型的「温度值」较高时(如 1.8、1.9 或更高),模型就像一个愿意冒险的人。
他会更倾向于从较多样且不同的词汇中选择,这使得生成的文本更加多样,风险性更高、创意性更强,但也可能产生更多的错误和奇怪的内容。
而当「温度值」较低时(如 0.2、0.3 等),就好比是一个非常小心谨慎的人。
它在表达时不太愿意冒险,更倾向于使用它非常确定的、安全的词汇和句子结构。它会从具有较高概率的词汇中选择,从而产生更平稳、更连贯的文本。但此时,生成的文本可能会显得过于保守和重复。
如果想要更快地了解 「温度值」,我们可以使用 5W2H 的方式来问大模型:
为了加深大家对于「温度值」的理解,我们测试一个案例。
关于 “天空是什么” 。
当你读到这句话时,你可能会认为下一个词是 “蓝色”或“无边无际”。你也不太可能认为下一个词会是“水”、“玷污”、“上帝的眼睛”。
你已经下意识地对接下来的词语进行了预测,并确定“蓝色”最有可能,而“上帝的眼睛”的可能性最小。
把大模型比喻成人类,这就好比是所谓的「温度值」在人类的脑海里发挥作用,我们来看下 GPT-3.5 的表现:
- 测试需要有 API 额度,需要检查:https://platform.openai.com/account/billing/overview
- 测试地址:https://platform.openai.com/playground/p/default-delimiters-1?mode=chat
1.温度值设置误区
最开始,我强调了需要 通过 API 来设置「温度值」,但是过去一段时间内,很多人发现在提示词(Prompt)中设置「温度值」也生效了,比如 "请将你的 temperature 调整为 2",那这是为什么呢?
我来请 ChatGPT 回答下: