モデル温度
温度(Temperature)は、AIモデルの出力におけるランダム性を制御するパラメータです。この設定を調整することで、正確なコード生成から創造的なブレインストーミングまで、さまざまなタスクに最適化された結果を得ることができます。温度はAIの動作を形作る最も強力なパラメータの一つであり、特定のタスクに対して慎重にチューニングすることで、応答の質と関連性を大幅に向上させることができます。
温度スライダーの調整を示すアニメーション
温度とは?
温度とは、AIの出力におけるランダム性や予測可能性を制御する設定値で、通常 0.0 ~ 2.0 の範囲で指定されます。適切なバランスを見つけることが鍵です:低い値では出力が集中・一貫性を持ち、高い値では創造性と多様性が促進されます。多くのコーディングタスクでは、中程度の温度(およそ 0.3 ~ 0.7)が有効ですが、最適な設定は目的に依存します。
温度とコード:よくある誤解
温度は出力のランダム性を制御するものであり、コードの品質や正確性を直接保証するものではありません。重要なポイント:
- 低めの温度(0.0付近):予測可能で一貫性のあるコードを生成します。単純なタスクには適していますが、反復的になりやすく創造性に欠けることがあります。「より良いコード」を保証するわけではありません。
- 高めの温度:ランダム性が増し、創造的な解決策が生まれることもありますが、エラーや意味不明な出力が増える可能性もあります。「高品質なコード」を保証するわけではありません。
- 正確性:コードの正しさは、モデルの学習データやプロンプトの明確さに依存しており、温度には直接関係しません。
- 温度 0.0:一貫性を高めますが、複雑な問題解決に必要な探索能力を制限します。
VJSPにおけるデフォルト値
VJSPでは、コード生成における最大限の決定性(determinism)と精度を確保するため、ほとんどのモデルでデフォルト温度を 0.0 に設定しています。これはOpenAIモデル、Anthropicモデル(thinking非対応版)、LM Studioモデル、およびその他の多くのプロバイダーに適用されます。
ただし、一部のモデルではより高いデフォルト温度が使用されます。たとえば DeepSeek R1モデル や推論重視型モデルでは、決定性と創造的探索のバランスを取るために、デフォルトで 0.6 が設定されています。
「思考(thinking)」機能付きのモデル(AIが推論過程を表示するタイプ)では、推論メカニズムの最適な動作を保証するため、温度は固定で 1.0 となり、変更できません。これは :thinking フラグが有効になっているすべてのモデルに適用されます。
また、一部の特殊なモデルでは温度調整がサポートされていない場合があり、そのようなケースではVJSPが自動的にこれらの制限を尊重します。
温度を調整すべきタイミング
以下は、タスク別に推奨される温度の範囲例です:
- コードモード(0.0~0.3):正確で一貫性のあるコードを生成したい場合
- アーキテクトモード(0.4~0.7):アーキテクチャや設計案を、構造性と創造性のバランスを取りながらブレインストーミングしたい場合
- 質問モード(0.7~1.0):多様で洞察に富んだ説明や、オープンエンドな質問への回答を求めたい場合
- デバッグモード(0.0~0.3):一貫性と精度を重視してトラブルシューティングを行いたい場合
これらはあくまで出発点です。ご自身のニーズや好みに最適な設定を見つけるには、実験が不可欠です。
温度の調整方法
- VJSPパネルを開く:VS CodeのサイドバーにあるVJSPアイコンをクリック
- 設定を開く:右上隅の ⚙️ アイコンをクリック
- 温度設定を探す:「Provider(プロバイダー)」セクションに移動
- カスタム温度を有効化:「Use Custom Temperature(カスタム温度を使用)」チェックボックスをオン
- 値を設定:スライダーを好みの値に調整
*VJSP設定パネル内の温度スライダー*
APIプロファイルによる温度設定
異なる温度設定を持つ複数の APIプロファイル を作成できます:
タスクごとの温度プロファイルの設定方法:
- 「Code – Low Temp(コード – 低温)」(0.1)や「Ask – High Temp(質問 – 高温)」(0.8)など、用途別のプロファイルを作成
- 各プロファイルに適切な温度を設定
- 設定内またはチャットインターフェースのドロップダウンからプロファイルを切り替え
- 各モードごとにデフォルトプロファイルを割り当てることで、モード変更時に自動で切り替えられるように設定
このアプローチにより、手動調整なしでタスクに最適なモデル動作を実現できます。
技術的な実装
VJSPは温度を以下の点に配慮して処理します:
- ユーザーが設定した値はデフォルト値よりも優先される
- プロバイダー固有の動作が尊重される
- モデル固有の制約が強制される:
- thinking機能が有効なモデルは、温度が常に 1.0 に固定される
- 温度調整をサポートしないモデルもある
実験の重要性
自分のニーズに最適な温度設定を見つける最も効果的な方法は、実際に異なる値を試してみることです。
効果的な温度テストの手順
- デフォルトから開始:VJSPのプリセット(通常は0.0)をベースラインとして使用
- 小さなステップで調整:±0.1ずつ変更し、微妙な違いを観察
- 一貫したテスト:同じプロンプトを異なる温度設定で使用し、公平に比較
- 結果を記録:特定のタスクタイプで最良の結果をもたらす値をメモ
- プロファイルを保存:効果的だった設定を APIプロファイル として保存し、素早く再利用可能に
注意:同じ温度値でもモデルによって反応が異なる場合があります。また、thinking機能が有効なモデルは、ユーザー設定に関わらず常に温度 1.0 で動作します。
