快速回答:Temperature 是什麼?
Temperature(溫度)是控制 AI 語言模型輸出「隨機程度」的參數。Temperature 越低,回答越固定、可預測;Temperature 越高,回答越多變、有創意。你在使用 ChatGPT、Claude 等 AI 工具的 API 時,都可以調整這個參數。
Temperature 的正式定義
在大型語言模型中,Temperature 是一個介於 0 到 2 之間的浮點數參數,它透過縮放 logit 值(模型對每個候選 Token 的原始分數)來改變 Softmax 機率分布的形狀。
技術上的運作方式:
- 模型為每個可能的下一個 Token 計算一個 logit(原始分數)
- 每個 logit 除以 Temperature 值
- 經過 Softmax 函數轉換成機率分布
- 根據這個機率分布抽樣選出下一個 Token
Temperature 低 → logit 差異被放大 → 高分 Token 的機率更集中 → 輸出更確定。
Temperature 高 → logit 差異被壓縮 → 各 Token 機率更平均 → 輸出更隨機。
白話解釋:Temperature 就像什麼?
想像你在一家餐廳點餐。
- Temperature = 0:你每次都點「最安全」的招牌菜,永遠不變。
- Temperature = 0.7:你通常點招牌菜,但偶爾會試試新菜色。
- Temperature = 1.5:你完全隨機亂點,可能點到驚喜,也可能踩雷。
Temperature 就是 AI 的「冒險程度旋鈕」——轉低了很穩但無聊,轉高了有驚喜但可能出錯。
數值怎麼設定?
| Temperature | 特性 | 適合場景 |
|---|---|---|
| 0 | 幾乎確定性輸出,每次結果一致 | 分類、資料擷取、格式轉換 |
| 0.1–0.3 | 高度精確,偶有微小變化 | 程式碼生成、數學計算、FAQ 回答 |
| 0.5 | 平衡精確與多樣 | 摘要、翻譯、一般問答 |
| 0.7 | 自然流暢,適度多樣 | 一般寫作、email、文案 |
| 1.0 | 高度多樣,創意輸出 | 故事創作、腦力激盪、詩歌 |
| 1.5–2.0 | 非常隨機,可能不連貫 | 實驗用途、極端創意探索 |
不同場景的建議設定
程式碼生成(Temperature 0–0.2)
寫程式需要精確性,不需要「創意」。低 Temperature 確保語法正確、邏輯一致。
問答與摘要(Temperature 0.3–0.5)
需要準確但自然的回答。稍微高一點的 Temperature 讓語言不會太死板。
一般寫作(Temperature 0.7)
Email、部落格文章、文案。需要自然流暢又不至於離題的平衡點。
創意發想(Temperature 1.0+)
腦力激盪、故事創作、廣告標語。高 Temperature 讓模型跳出慣性思維,產生意想不到的組合。
Temperature vs Top-P
Temperature 和 Top-P(又稱 Nucleus Sampling)都影響輸出的隨機性,但機制不同:
| 參數 | 作用方式 | 效果 |
|---|---|---|
| Temperature | 縮放所有 Token 的 logit 值,改變機率分布形狀 | 整體放大或縮小隨機性 |
| Top-P | 只保留累積機率達到 P 值的 Token,截斷其餘 | 動態限制候選 Token 數量 |
2026 注意事項:Reasoning Model
2026 年出現了許多 Reasoning Model(推理模型),例如 OpenAI o3、Claude 的 extended thinking 模式。使用這類模型時,有一個重要的注意事項:
這是因為 Reasoning Model 在回答前會先進行內部推理(Chain-of-Thought),最終答案是推理的結論,而不只是「下一個最可能的 Token」。Temperature 只影響表面的文字選擇,不影響推理品質。
常見誤解
「Temperature 越低 AI 越聰明」
Temperature 不影響模型的知識或推理能力,只影響輸出的隨機性。低 Temperature 讓回答更一致,不代表更正確。
「Temperature 設 0 就是確定性」
理論上 Temperature = 0 應該每次輸出相同結果,但實際上由於浮點運算精度和 GPU 並行計算的不確定性,即使 Temperature = 0 也可能有微小差異。
「所有模型的 Temperature 效果都一樣」
不同模型對同一個 Temperature 值的反應不同。Claude 的 Temperature 0.7 和 GPT 的 Temperature 0.7 產生的隨機程度可能不一樣。需要根據具體模型測試。
「Temperature 是最重要的參數」
Prompt 的品質對輸出的影響遠大於 Temperature。一個好的 Prompt 搭配預設 Temperature,通常比一個差的 Prompt 搭配完美 Temperature 效果更好。
常見問題 FAQ
Temperature 設多少最好?
沒有萬用答案。程式碼和資料擷取建議 0–0.2;問答和摘要建議 0.3–0.5;一般寫作建議 0.7;創意發想建議 1.0 以上。根據任務需求調整。
Temperature 和 Top-P 有什麼不同?
Temperature 調整所有 Token 的機率分布形狀,Top-P 則直接截斷累積機率低的候選 Token。兩者都影響輸出多樣性,但作用機制不同。通常調一個就好,不建議同時大幅調整兩個。
Temperature 設 0 會怎樣?
Temperature 設 0(或接近 0)時,模型幾乎總是選擇機率最高的 Token,輸出非常確定、可重複。適合需要一致性的任務,但可能過於死板。
Reasoning Model 需要調 Temperature 嗎?
不建議。2026 年的 Reasoning Model(如 o3、Claude 的 extended thinking)的準確度由推理過程決定,不是由 Temperature 控制。降低 Temperature 不會讓它「更聰明」,反而可能限制推理路徑的探索。
Temperature 太高會怎樣?
Temperature 過高(例如 2.0)會讓輸出變得不連貫、出現亂碼或無意義的文字。模型會開始選擇低機率的 Token,結果就是胡言亂語。
不同 AI 模型的 Temperature 範圍一樣嗎?
不完全一樣。大多數模型的 Temperature 範圍是 0–2,但實際效果因模型而異。同樣的 Temperature 值在不同模型上可能產生不同程度的隨機性。