サンプリング設定(temperature / top-p)
モデルは次のトークンを「確率の表」として出し、そこから1つをくじ引きで選ぶことで文章を作ります。そのくじ引きの偏らせ方を決めるのがサンプリング設定です。出力がおかしいとき、原因はモデルの性能より設定とモデル推奨値の不一致であることが少なくありません。
主要なつまみ
| 設定 | 働き | ざっくり |
|---|---|---|
temperature | 確率分布を尖らせる(低)/平らにする(高) | 低=堅実で再現的、高=多様で意外性 |
top_p | 累積確率p以内の候補だけからくじ引き | 低確率の変なトークンを裾切り |
top_k | 上位k個の候補だけからくじ引き | top_pの個数版 |
repeat_penalty | 直前に出た語を出にくくする | 同じ文の繰り返し(ループ)対策 |
用途別の目安
あくまで目安として、事実確認・コード・抽出はtemperature 0〜0.3(間違いにくさ優先)、会話は0.6〜0.8、創作は0.8〜1.2(表現の幅優先)あたりから調整するのが通例です。OllamaはModelfile、LM Studioは右パネルで変更できます。
いちばん大事なこと — モデルカードの推奨値を見る
最近のモデルは開発元が推奨サンプリング値をモデルカードに明記していることが多く(推論モデルは特に、指定と違う温度で思考が壊れることがあります)、まずそれに合わせるのが正解です。それでも暴走するときは、設定より先にチャットテンプレートの不一致を疑ってください。
関連用語
- トークンとトークナイザー — LLMが文章を数える単位。日本語は英語よりトークン効率が悪く、体感速度にも効く
- チャットテンプレート(Jinja形式) — 会話をモデル固有のトークン列へ組み立てる規則。ずれると出力が壊れる定番原因
- ローカルLLMとは — 自分のPCやスマホの中で動かす大規模言語モデル。構成次第で会話を外部に出さずに使える
参考資料(出典)
▶ あなたのPCで動くモデルを自動判定する(スペック送信なし・ブラウザ内完結)
上記はアフィリエイトリンクです。経由して課金された場合、当サイトに紹介料が入ります。