Ollama ModelfileのPARAMETERとは?設定を一つずつ試す方法

目次
OllamaのModelfileでは、PARAMETERを使って生成や実行時の設定を持たせられる。
ただし、一覧にある項目をたくさん変更すれば品質が上がるわけではない。何を変えたいのかを決め、その目的に関係する項目だけを一つずつ試す方が原因を追いやすい。
Modelfileはモデルの重みとは別の設定
Modelfileでは、元にするモデル、テンプレート、システムメッセージ、各種PARAMETERなどを組み合わせられる。
PARAMETERを変更しても、元モデルの重みそのものを追加学習するわけではない。実行時の振る舞いを調整する設定として考える。
同じPARAMETERでも役割は違う
代表的な項目は、役割を分けて考える。
| 種類 | 例 | 主に確認すること |
|---|---|---|
| 生成のばらつき | temperature、top_pなど |
回答の変化や安定性 |
| コンテキスト | num_ctx |
必要な入力長とメモリ使用量 |
| 停止条件 | stop |
どこで出力を止めるか |
| 出力量 | num_predictなど |
生成する長さの上限 |
現在使える項目名や初期値はOllamaの更新で変わる可能性があるため、利用しているバージョンの公式資料を確認する。
一度に一項目だけ変える
同じモデル、同じタグ、同じ入力を使い、変更する項目を一つに絞る。
モデル / タグ:
入力:
変更するPARAMETER:
変更前:
変更後:
回答の違い:
複数項目を同時に変更すると、結果が変わっても何が影響したのか分からなくなる。
temperatureは「賢さ」のつまみではない
temperatureは生成時の選び方に関わる設定であり、上げれば賢くなる、下げれば必ず正確になるという一方向の品質設定ではない。
自分の用途で、回答のばらつきや再現性がどう変わるかを見る。
num_ctxはメモリ条件も変える
num_ctxはコンテキスト長に関わる。長くすればより長い入力を扱える可能性がある一方、必要メモリも増える。
「最大値に近いほど良い」とは限らない。必要な文章量に合わせて設定し、変更後は実際のメモリ使用量やCPU・GPUへの配置も確認する。
詳しくはOllamaのコンテキスト長を変える前に確認することで整理している。
stopは出力の終了条件
stopは、特定の文字列などを条件に出力を止めるための設定だ。
回答の内容を自動的に正しくする設定ではない。テンプレートや出力形式との組み合わせで、どこで終了させたいかを確認する。
変更前後を記録する
設定を試したら、結果だけでなく条件も残す。
Ollamaのバージョン:
モデル / タグ:
Modelfile:
変更したPARAMETER:
入力:
出力:
実行時間やメモリの変化:
これを残しておけば、後で別の項目を変えたときにも比較できる。
PARAMETERは全部を調整するものではなく、目的に必要な項目だけを同じ条件で一つずつ試すのが基本になる。
まとめ
- `PARAMETER`には生成のばらつき、コンテキスト長、停止条件など役割の異なる設定が含まれる
- `temperature`のような生成設定と、`num_ctx`のようにメモリ使用量にも関わる設定を分ける
- `stop`は出力を止める条件であり、回答品質を一括して高める設定ではない
- 変更する項目は一度に一つにし、同じモデルと入力で結果を比べる
公式サイトで次に進む
この記事で明示的に扱うソフトだけを表示します。配布・手順は各公式ページで確認してください。
Ollama
local-gen.jpがファイルを配布するものではなく、互換性を保証するものでもありません。
この記事で扱ったデータ
モデル・GPU・実行ソフトの確認済みデータを、記事とは別に確かめられます。
参照した情報源を見る(1件)
参照情報源
- Ollama Modelfile ReferenceOllama情報源を開く ↗