temperature(温度)とはAIの回答のランダムさを調整する設定とサンプリング
temperatureは、LLMが次のトークンを選ぶときのランダムさを調整する設定値です。低い値と高い値での出力の違い、サンプリングの仕組み、用途別の目安、他の設定(top_p)との関係、同じ質問で答えが変わる理由を整理します。
公的機関・公式資料などの一次情報と照合して作成しています。このサイトについて
temperatureとは
LLMは、文章を生成するとき、次に来るトークンの確率分布を計算し、そこから1つを選んで出力します。この選び方の「ランダムさ」を調整する設定が temperature(温度) です。API利用時に指定できることが多く、値が低いほど、確率の高い候補を選びやすく(安定的・決定的に)、値が高いほど、確率の低い候補も選ばれやすく(多様・創造的に)なります(トークンとは)。
仕組みのイメージ
次の言葉の候補と確率が、次のようだったとします。
| 候補 | 元の確率 |
|---|---|
| 「晴れ」 | 60% |
| 「曇り」 | 25% |
| 「雨」 | 10% |
| 「雪」 | 5% |
- temperatureが低い(0に近い):確率の差が強調され、ほぼ「晴れ」が選ばれる。
- temperatureが高い:確率の差が縮まり、「曇り」「雨」「雪」も選ばれやすくなる。
実際には、確率を計算する前の値(ロジット)をtemperatureで割る処理で、分布のとがり具合を変えます。
値による出力の違い
| temperature | 出力の傾向 | 向いている用途 |
|---|---|---|
| 低い(0〜0.3程度) | 一貫して安定、同じ入力でほぼ同じ回答 | 事実に基づく回答、分類、データの抽出、コード生成 |
| 中程度(0.5〜0.8程度) | 自然さと多様さのバランス | 一般的な対話、文章の下書き |
| 高い(1.0以上) | 多様で意外性がある。内容が不安定になることも | アイデア出し、創作 |
設定できる値の範囲や既定値は、サービスやモデルによって異なります(0〜1までのものや、0〜2までのものなどがあります)。たとえばAnthropicのMessages APIでは0.0〜1.0(既定値1.0)とされていますが、執筆時点の公式リファレンスでは、Claude Opus 4.6より後に公開されたモデルではtemperatureの変更自体がサポートされない(1.0以外は受け付けない)と案内されています。このように、新しいモデルほどサンプリング設定を固定する例もあるため、数値の目安や設定の可否は、公式ドキュメントで確認してください。
値を0にしても、完全に同じにならない場合
temperatureを0にしても、毎回まったく同じ出力になるとは限りません。計算の並列処理の違いや、内部の実装によって、わずかな差が出ることがあるためです。再現性が必要な場合は、提供元が用意している再現性のための設定(シード値など)の有無を、ドキュメントで確認します。
「同じ質問で答えが変わる」理由
対話型のサービスは、通常、ある程度のランダムさ(temperature)を持たせて動作しています。そのため、同じ質問でも、毎回少しずつ違う回答になるのは自然な挙動です。これは「不具合」ではなく、設計上の性質です。
他の設定との関係
| 設定 | 内容 |
|---|---|
| top_p(nucleus sampling) | 確率の高い候補から順に、累積確率がp以内の候補だけを選択肢にする(top_p・top_k) |
| top_k | 確率の高い上位k個の候補だけを選択肢にする(top_p・top_k) |
| 最大出力トークン数 | 出力の長さの上限 |
temperatureとtop_pは、両方を同時に大きく変えると挙動が分かりにくくなるため、どちらか一方を調整するのが一般的な推奨です(提供元のドキュメントも確認してください)。
用途別の考え方
| 用途 | 考え方 |
|---|---|
| 正確さ・安定性が重要(要約、抽出、分類、翻訳) | 低めに設定する |
| 文章作成の下書き | 中程度で、気に入るまで複数回生成する |
| ブレインストーミング | 高めにして、多様な案を出させる |
| コード生成 | 低めが一般的 |
なお、temperatureを下げても、ハルシネーションがなくなるわけではありません(ハルシネーション)。低い値は「安定して同じ誤りを出す」ことも起こり得ます。
temperatureの具体例
製品名の案を10個出したいとき、temperatureが低いと、似たような案ばかりになりがちです。値を上げると、より多様な案が出ます。逆に、「契約書の条文から日付を抽出する」場合は、値を低くして、毎回同じ結果が出るようにするほうが安全です。
temperatureのFAQ(よくある質問)
Q. チャット画面でtemperatureを変えられますか?
A. 多くの対話型サービスでは、画面からは変更できません。APIや開発者向けの画面で設定できることがあります。
Q. temperatureを上げると賢くなりますか?
A. いいえ。賢さは変わらず、ランダムさだけが変わります。
Q. 推奨値はありますか?
A. 用途・モデルによって異なります。提供元のドキュメントの推奨を参照し、自分の課題で試して決めてください(プロンプトの評価方法)。
筆者の見解(temperature)
temperatureは、「創造性のつまみ」と呼ばれることが多いですが、実際は「ばらつきのつまみ」だと考えています。ばらつきが価値になる場面(発想)と、ばらつきがリスクになる場面(抽出・分類)を見分けて、目的に応じてつまみを動かす習慣をつけると、AIの出力が格段に扱いやすくなります。
temperatureの関連項目
- top_p・top_k
- トークンとは
- ハルシネーション
- Messages APIの使い方
出典(一次情報)
本記事は一般的な情報の提供を目的としています。AIのサービス・機能・料金・仕様は頻繁に更新されるため、最新の内容は各社の公式ドキュメントでご確認ください。「筆者の見解」は一つの考え方です。