サンプリング制御:Temperature とその仲間
- Temperature、top-p、top-k、ストップシーケンスが次トークン選択に対して実際に何をしているか
- 冷たく動かすか熱く動かすかを一目で決められる判断表
- temperature=0 に設定しても同一の出力が保証されない理由
- サンプリングの摘みを隠す新しいClaudeモデルでサンプリングをどう考えるか
モデルがテキストを生成するとき、確率分布から次のトークンを選びます。サンプリング制御 は どのように 選ぶかを調整します — 出力がどれだけ集中的か、どれだけ多様かを。
主な摘み
Guided walkthrough1 of 4
- 分布全体をスケールします。低(≈0)= 集中的、ほぼ決定的、再現可能。モデルは最も可能性の高い経路を取ります。高 = より多様で創造的、しかし迷走やエラーの傾向が強くなります。
- 確率の合計が p になる最小のトークン集合に選択を制限します。ランダム性を制限する別の方法で、分布がどれだけ尖っているかに適応します。
- 最も可能性の高い k 個のトークンだけを考慮します。top-p より鈍く、非常に短い制約された出力にたまに役立ちます。
- 生成されると即座に応答を終わらせる文字列。区切り文字の後にモデルを止めたい構造化出力に便利です。
- temperature か top-p のどちらかを調整し、両方は調整しないこと — 相互作用し、複合挙動の推論は難しい。
- top-k はデフォルトのまま放置。ほとんど邪魔になる重いハンマー。
- ストップシーケンスは構造化出力の安全ベルトとして優秀 — JSON の後の余分な散文はもうない。
冷たく vs 熱く動かすとき
| 冷たく(低temp)動かす | 熱く(高temp)動かす |
|---|---|
| 抽出、分類、コード | ブレスト、命名、クリエイティブコピー |
| 再現性が欲しいもの | 多くの選択肢を探る |
| 事実的 / 構造化出力 | トーンの多様性、アイデア出し |
| 採点 / LLM-as-judge | A/Bコピーのアイデア出し |
多くの作業のよいデフォルトは 中〜低(おおよそ 0〜0.4)です。驚きが 欲しい ときだけ上げてください。
具体的な例
同じプロンプト、3つの temperature。ベンチマークではなく例示的なパターン:
Prompt
Give me one clever name for a productivity app that helps writers.
- temp 0 →
WordFlowのような安全で再現可能な選択。もう一度聞くと、またWordFlow。 - temp 0.5 → 一貫性はあり、実行ごとに多様性が増える:
Draftly、Inkline、Composera。 - temp 1.0 → 創造的だがノイジー:
Quillspark、Verbatimo、時折スキャンしないダサい言葉。
教訓:多様性が タスクの本質 である場合にのみ temperature を上げること。
新しいClaudeモデルはこれらを隠す
最近のClaudeモデルのいくつかは、自身のデコーディングを適応させ、temperature を軽視(または省略)します。摘みが利用できない場合、それは設計によるものです — 代わりに プロンプト と(提供される場合は)effort/thinking 設定で挙動を形成してください。モダンなモデルではプロンプトの明瞭さとロールフレーミングがサンプリング摘みよりも仕事をします。
決定性の注意点
temperature 0 でも、出力は実行間、モデルバージョン間、プロバイダ間でビット単位で同一である保証は ありません。理由:
- サーバー側のバッチングと浮動小数点の非決定性。
- エイリアスの背後にある無音のモデル更新。
- わずかな入力の違い(見えない空白、異なるトークナイザ)。
正確な再現性に依存しないこと。重要な場合はドリフトを検出するためにevals に依存してください。
よくある間違い
- 悪い出力を修正するために temperature を上げる — 修正はほぼ常にサンプラーではなくプロンプトにある。
- top-p と temperature を混ぜる — 一つの摘みを選び、もう一方をデフォルトに保って変更を推論できるようにする。
- temp=0 が決定的だと仮定する — そうではない。回帰検出には等価チェックではなく evals を使う。
- 散文にストップシーケンスを使う — JSONの区切りには最適だが、モデルが正当に文字列を生成する可能性がある自由記述テキストでは不自然。
自分でチェック
自分でチェック
0/4- Temperature が主な摘み;top-p は代替;top-k とストップシーケンスは状況次第。
- 抽出、コード、採点には冷たく;ブレストとクリエイティブコピーには熱く。
- ランダム性の摘みは一度に一つ調整 — temperature か top-p。
- Temp 0 ≠ 決定的。挙動ドリフトを捉えるには等価ではなく evals に依存。
- 新しいClaudeモデルでは、プロンプト + effort/thinking がサンプリングダイヤルを置き換える。