# Temperature (溫度參數) 是什麼?如何控制 AI 回覆的隨機度
在調用大語言模型(LLM)的 API(例如 OpenAI、Anthropic、天智算力)或在 Playground 測試提示詞時,Temperature (溫度參數) 是最常見的調參控制項。
許多人知道「調低溫度會讓回答變精準,調高會變有創意」,但其背後的數學原理是什麼?在實務開發中,我們該如何為不同的業務場景設定溫度?本文為您帶來最直白深入的解答。
Temperature (溫度參數) 是大語言模型 (LLM) 在生成文字時,用以控制回覆隨機度與創造力的核心超參數。其數值通常介於 0.0 到 2.0 之間。當溫度設為 0.0 (極低溫) 時,模型每次均會選擇機率最高的最優 Token,輸出具備高度確定性,最適合程式代碼編寫、數據提取及 JSON 格式輸出;當溫度設為 0.7 到 1.0 (高溫) 時,模型會引入多樣性與隨機性,使行文更加活潑多變,適合行文行銷與腦力激盪。
---
溫度參數的數學運作原理:Logits 與 Softmax
大語言模型在生成下一個 Token 時,底層其實是在對字典裡成千上萬個單字進行「機率預測」。
例如,給定前文「天智算力是...」,模型計算出下一個詞的原始得分(稱為 Logits):
- 平台 (得分: 10)
- 公司 (得分: 8)
- 水果 (得分: 1)
如果不加溫度參數,系統會直接把 Logits 通過 Softmax 函數 轉換為百分比機率,然後選出機率最高者。
而 Temperature ($T$) 則是作為一個除數,介入了 Logits 的機率計算中:
$$\text{調整後機率} \propto \exp\left(\frac{\text{Logits}}{T}\right)$$
- 當 $T \to 0$ (極低溫):
- 當 $T > 1$ (高溫):
---
實務場景:溫度參數推薦配置表
為了讓您的 AI 應用表現穩定,建議根據以下場景配置溫度:
| 業務場景 | 推薦溫度 ($T$) | 核心原因 |
| 代碼生成與除錯 | 0.0 | 程式碼需要極度精確與確定性,容不得任何天馬行空的隨機語法。 |
| JSON/結構化數據提取 | 0.0 | 確保輸出的 JSON 格式符合 Schema,避免格式破裂。 |
| 數學公式與邏輯推理 | 0.0 或 0.1 | 推理過程需要最嚴謹的因果鏈,隨機性會引發計算幻覺。 |
| 商務郵件與行銷文案撰寫 | 0.7 | 需要在遣詞用字上有一定的流暢與變化,同時保持客觀的商業語氣。 |
| 小說創作與廣告點子腦力激盪 | 0.9 ~ 1.1 | 需要極大化 AI 的聯想能力,生成出乎意料的創意組合。 |
---
️ 常見技術誤區:Temperature 與 Top_P
在 API 設定中,通常還會有另一個參數叫 Top_P (核採樣參數 / Nucleus Sampling)。
- Top_P:限制模型只能在「累計機率前 P% 的詞池」中進行選擇。例如設為 0.9,代表剔除掉機率加總最後 10% 的冷門詞彙。
- 開發者金律:切勿同時調整 Temperature 與 Top_P。這會導致採樣機率發生混亂。最佳做法是固定 Top_P = 1.0,只微調 Temperature;或者固定 Temperature = 1.0,只調整 Top_P。