OllamaのModelfileをWindowsで使う方法|ollama create・SYSTEM・PARAMETER

公開日
2026-08-09
更新日
2026-08-09
情報確認日
2026-08-09
編集・運営
Local AI Compass

Ollamaの回答方針、context、temperature、モデル名を毎回手入力で再現したいなら、Modelfileへ設定をまとめてollama createで名前付きのcustom modelを作ります。Windowsではまず既存モデルや確認済みGGUFをFROMへ指定し、SYSTEM・PARAMETERを最小限に加え、ollama show・/api/show・短い実行で結果を検証します。

導入前に確認すること

  • Windowsのバージョン、メモリ容量、GPU/VRAM、空き容量を確認する
  • 最初は軽量モデル、短い質問、少ない同時作業から始める
  • 公式サイトの対応OS、利用規約、モデルのライセンスを確認する

先に結論:Modelfileは設定を再現するcustom modelの設計図

Ollama公式docsでは、Modelfileはcustomized modelを作成・共有するためのblueprintと説明されています。モデル本体やGGUFを直接編集するファイルではなく、FROMで基礎モデルを指定し、SYSTEMやPARAMETERなどの設定を名前付きモデルへまとめる入口です。

WindowsでOllama Modelfileを使う目的別確認表
やりたいこと中心になる記述・コマンド最初に確認すること
既存モデルへ固定の指示を加えるFROM、SYSTEMbase modelのtag、指示の範囲、license
contextや生成条件を固定するPARAMETER num_ctx / temperatureなどRAM/VRAM、入力長、再現条件
GGUFやadapterを取り込むFROM path、ADAPTER path配布元、SHA256、adapterとbaseの一致
名前付きモデルを作るollama create NAME -f .\Modelfilecreateのstatus、ollama ls、ollama run
API・アプリから呼ぶ作成したNAMEをmodelへ指定/v1/models、/api/show、digest、endpoint

最初からTEMPLATEやadapterを自作せず、まず既存モデルをFROMにしてSYSTEMと1〜2個のPARAMETERだけを加えます。設定を足しても、モデルの知識、能力、品質、ライセンス、外部送信の範囲が自動で変わるわけではありません。

WindowsでModelfileとFROMを用意する

FROMは必須のinstructionで、既存のOllama model:tag、Safetensorsのdirectory、またはModelfileから見た相対パス・絶対パスのGGUFを指定できます。Windowsでは、まず既存モデルをollama pullとollama lsで確認し、手元ファイルを使う場合は配布元とモデル形式を確認してから作業用ディレクトリへ置きます。

New-Item -ItemType Directory -Force .\ollama-custom | Out-Null
Set-Location .\ollama-custom

# 既存のOllamaモデルをFROMにする例
ollama pull BASE_MODEL
ollama ls

# Modelfile
@"
FROM BASE_MODEL
SYSTEM """短い回答を基本にし、分からない点は分からないと答えてください。"""
PARAMETER temperature 0.2
PARAMETER num_ctx 4096
"@ | Set-Content -Encoding utf8 .\Modelfile

ollama create lac-assistant -f .\Modelfile
ollama run lac-assistant
  1. PowerShellで作業用フォルダを作り、Modelfileとモデルファイルを混在させない。
  2. FROMへ指定する既存model:tagまたはGGUF pathを記録する。
  3. Modelfileの文字コード、相対パス、引用符、instruction名を確認する。
  4. ollama create NAME -f .\Modelfileのstatusが完了するまで待つ。
  5. ollama ls、ollama show NAME、ollama run NAMEで作成結果を確認する。

上のBASE_MODELとlac-assistantは説明用のplaceholderです。存在や性能を確認していない特定モデルの成功例として扱わず、利用時点のOllama model library、モデルカード、license、容量を優先してください。

SYSTEMとPARAMETERで最小限の振る舞いを固定する

SYSTEMはtemplateへ設定するsystem message、PARAMETERは実行時の生成条件を指定します。公式Referenceにはnum_ctx、temperature、seed、stop、num_predict、top_k、top_p、min_pなどが掲載されていますが、数値を入れれば品質が上がるという保証ではありません。まず設定を少なくし、同じ短いpromptで変更前後を比較します。

FROM BASE_MODEL

SYSTEM """
日本語で回答してください。
根拠がない内容は推測せず、確認が必要だと明示してください。
"""

PARAMETER temperature 0.2
PARAMETER num_ctx 4096
PARAMETER seed 42
PARAMETER num_predict 512
Ollama ModelfileのSYSTEMとPARAMETERの役割
instruction何を固定するか注意点
SYSTEM毎回のsystem messageの初期値安全性、事実性、外部ツール権限を保証する規則ではない
num_ctx生成時に使うcontext windowのサイズ大きくするとRAM/VRAMや速度への影響を測る
temperature出力のばらつきに関係する値創造性・正確性を単独で保証しない
seed同じ条件で比較しやすくするseedモデル、prompt、template、環境が同じとは限らない
num_predict / stop出力上限・停止パターン途中停止を品質問題やserver障害と混同しない

num_ctxを増やす設定は、長文が必ず正しく読めるという意味ではありません。local AIのcontext、モデルサイズ、GPU/CPU、入力長、RAGの検索品質は別の評価軸として記録します。

TEMPLATEとMESSAGEはモデル固有の形式を見てから使う

TEMPLATEはモデルへ渡すprompt全体の形式で、公式docsはGo template syntaxとmodel-specificな構文を案内しています。既存モデルのchat templateを思い込みで書き換えると、system・user・assistantの境界やstop tokenが崩れることがあります。まずollama show --modelfile MODELで現行定義を確認し、必要な差分だけを別ファイルへ保存します。

# 既存モデルの定義を確認する
ollama show --modelfile BASE_MODEL | Set-Content -Encoding utf8 .\BASE-Modelfile.txt

# MESSAGEは初期の例示会話を記録するinstruction
MESSAGE user 例の質問
MESSAGE assistant 例の回答

# TEMPLATEはモデル固有のため、公式例・show結果・短い実行で検証する
Ollama ModelfileのSYSTEM・MESSAGE・TEMPLATEの違い
項目使いどころ混同しないこと
SYSTEM初期のsystem messageを指定アプリ側の会話履歴や権限管理ではない
MESSAGE応答スタイルの例示会話を組み込む毎回の利用者の履歴を保存する機能ではない
TEMPLATESystem・Prompt・Responseのrender形式を指定モデルに合わないテンプレートを汎用設定しない
ollama show --modelfile現在の定義を観察する表示内容を無検証で別モデルへ貼り付けない

通常のchatが返るモデルを先に確認し、TEMPLATEを変更した後は同じ短いpromptを再実行します。出力が壊れたときは、モデル能力・template・stop・入力形式のどこが変わったかを一つずつ戻します。

作成後にollama show・API・digestを検証する

createが成功しても、設定が意図どおり反映されたかは別に確認します。ollama lsで名前とサイズ、ollama show --modelfileで定義、POST /api/showでparameters・template・capabilities・details、GET /api/tagsでdigest、GET /v1/modelsでclientから見えるIDを記録します。

ollama ls
ollama show --modelfile lac-assistant

$body = @{ model = "lac-assistant"; verbose = $true } | ConvertTo-Json
$shown = Invoke-RestMethod `
  -Uri "http://localhost:11434/api/show" `
  -Method Post -ContentType "application/json" -Body $body
$shown | Select-Object parameters, template, capabilities, details, license

$tags = Invoke-RestMethod -Uri "http://localhost:11434/api/tags"
$tags.models | Where-Object name -eq "lac-assistant" | Select-Object name, size, digest

$models = Invoke-RestMethod -Uri "http://localhost:11434/v1/models"
$models.data | Where-Object id -eq "lac-assistant" | Select-Object id, created, owned_by
Ollama custom modelの作成後検証
確認成功の事実断定しないこと
create statusbuildが完了しNAMEが返る品質・速度・安全性が向上したこと
show / show --modelfileparameters、template、baseの定義を観察できる別のmodelへ同じtemplateを移植できること
tagsname、size、digestが保存一覧に出る同じ表示名の別tag・別digestを同一視すること
/v1/modelsOpenAI互換clientから見えるidを確認できるResponses、tools、vision、embeddingが全部動くこと

カスタムmodelの名前をAPIへ渡すときは、画面上の説明やModelfileのファイル名ではなく、serverから見えるIDを使います。capabilitiesやdigestの照合方法は、既存のOllamaモデルidentity記事へ分岐します。

APIからcreateする場合とModelfileを使う場合を分ける

POST /api/createは、model、from、template、system、parameters、messages、license、quantize、streamなどをJSON bodyで受け取り、作成statusを返すnative APIです。手作業やGitで設定をレビューするならModelfile、Windowsの自動処理から生成するなら/api/createという選択肢があります。どちらもlocal modelを作る操作なので、作成対象と送信先を確認してから実行します。

$body = @{
  model = "lac-assistant-api"
  from = "BASE_MODEL"
  system = "短く正確に回答してください。"
  parameters = @{
    temperature = 0.2
    num_ctx = 4096
  }
  stream = $false
} | ConvertTo-Json -Depth 8

Invoke-RestMethod `
  -Uri "http://localhost:11434/api/create" `
  -Method Post `
  -ContentType "application/json" `
  -Body $body
Ollamaのモデル作成・alias・取得の使い分け
方法向いている場面記録するもの
Modelfile + ollama createレビュー、再利用、手元での差分管理Modelfile、FROM、モデルtag、作成日
POST /api/createPowerShellやアプリから自動化JSON body、status、HTTP error、送信先
ollama cp既存モデルへclient用aliasを付ける元model、alias、/v1/modelsで見えるID
ollama pull / run既存モデルを取得して試す提供元、tag、local/cloud、license

APIのstream既定値や返却statusは利用時点の仕様を確認し、最初はstream=falseの短い作成で結果を読み取ります。API key、実文書、private promptを記事やPowerShell履歴へ入れず、local endpointとcloud endpointを混同しません。

GGUF・adapter・licenseを確認して再現可能に残す

FROMへGGUFやSafetensors directoryを指定する場合は、公式Importing a Modelの対応形式・アーキテクチャと、配布元のmodel cardを確認します。ADAPTERを使う場合は、base modelがadapterを作った元と一致しないと挙動が不安定になると公式に説明されています。LICENSEをModelfileへ書いても、第三者ライセンスの条件や再配布権を自動で付与するわけではありません。

# GGUFをModelfileから取り込む例(ファイルの出所と互換性を先に確認)
FROM .\verified-model.gguf

# baseと対応するadapterだけを指定する
# FROM BASE_MODEL
# ADAPTER .\adapter

# ファイルと設定を記録する
Get-FileHash .\verified-model.gguf -Algorithm SHA256
Get-Content .\Modelfile
ollama create imported-model -f .\Modelfile
ollama show imported-model
ollama run imported-model
  • GGUF、Safetensors、adapterを取得したURL・revision・SHA256・licenseを記録する。
  • ModelfileのFROMとADAPTERが同じbase modelの系統を指すか確認する。
  • 量子化やadapterの取り込みが成功しても、元モデルと同じ品質・速度になると断定しない。
  • 重要なModelfile、model card、license textを保存し、model本体の削除と設定の削除を分ける。
  • 共有・再配布する場合は、base model、adapter、Modelfile、licenseの条件を個別に確認する。
Ollama Modelfileのimportとトラブル分岐
症状まず見ること分岐
FROMで失敗するpath、権限、形式、model tag既存modelかGGUFかを分ける
adapterで挙動が乱れるbase modelとadapterの出所同じbaseか、対応形式かを確認する
create後も回答が同じSYSTEM、PARAMETER、実際のmodel IDshow --modelfile、tags、短い固定prompt
APIから見えないGET /v1/models、server、tag別server・別endpoint・aliasを確認する

よくある質問

OllamaのModelfileとは何ですか?

Ollamaでcustomized modelを作成・共有するための設計ファイルです。FROMでbase modelを指定し、SYSTEM、PARAMETER、TEMPLATEなどをまとめてollama createで名前付きモデルにします。GGUF本体を直接編集するファイルではありません。

WindowsではModelfileをどこに保存しますか?

固定の必須フォルダは想定せず、PowerShellから管理できる作業用ディレクトリへModelfileと必要なモデルファイルを置きます。FROMの相対pathはModelfileを基準に確認し、保存先やモデル本体をOLLAMA_MODELSの管理場所と混同しないでください。

ollama createの基本コマンドは?

公式例に沿って、Modelfileを用意して`ollama create choose-a-model-name -f .\Modelfile`のように実行し、続けて`ollama run choose-a-model-name`で短い入力を試します。利用環境のCLI helpと現行公式docsも確認してください。

SYSTEMとTEMPLATEはどう違いますか?

SYSTEMはtemplateへ設定するsystem message、TEMPLATEはsystem・user prompt・responseをモデルへ渡す全体形式です。TEMPLATEはmodel-specificなので、まず`ollama show --modelfile MODEL`を確認し、推測で書き換えないでください。

PARAMETER num_ctxを大きくすれば長文に強くなりますか?

context windowの設定を変えられますが、長文の正確性や品質を保証しません。RAM/VRAM、速度、入力長、モデルの能力、RAG検索結果を別々に測り、作成前後を同じ条件で比較します。

ModelfileでGGUFやLoRA adapterを読み込めますか?

公式Importing a Modelでは、GGUFをFROM、対応するadapterをADAPTERで指定する例が案内されています。adapterのbase modelが学習元と一致しないと挙動が不安定になり得るため、形式・対応アーキテクチャ・出所・licenseを先に確認します。

作成したcustom modelをAPIから呼ぶには?

まずollama ls、/api/show、/api/tags、/v1/modelsで名前・設定・digest・client-visible IDを確認します。その後、native APIやOpenAI互換APIのmodelへserverから見える正確なIDを指定し、base URLとlocal/cloudの経路を分けます。

次に読むおすすめルート

開発・API連携したい人

LM StudioとOllamaの違いを確認し、API、長文処理、RAGまで段階的に進みます。

  1. ローカルAIをAPIで使う方法
  2. WindowsでローカルAIコーディングを始める
  3. VS CodeでローカルAIを使う
  4. LM Studioのlms CLIを使う
  5. LM StudioのTool Useを使う
  6. LM StudioのStructured Outputを使う
  7. LM StudioのResponses APIを使う
  8. LM StudioのMCPをAPIで使う
  9. ローカルAIでJSON出力する方法
  10. LM StudioとOllamaの違い
  11. コンテキスト長とは
  12. RAG・埋め込み・ベクトルDBの仕組み
  13. OllamaのEmbedding APIを使う
  14. OllamaのResponses APIを使う
  15. OllamaのAPI認証を確認する
  16. OllamaをWindowsのLANから使う前の確認
  17. OllamaのモデルID・能力を確認する
  18. Ollama native API streamingを使う
  19. Ollama Web Search APIを使う
  20. OllamaのThinkingを使う
  21. LM StudioのEmbedding APIを使う
  22. RAG評価と引用確認の基礎
  23. faithfulness確認
  24. ローカルRAGのプライバシー
  25. MCPとは
  26. ローカルLLMの安全性とプライバシー
  27. Gemma 4 12Bの更新メモ
  28. Hermes Desktopとは
  29. Hermes DesktopとLM Studio接続
  30. Hermes DesktopとOllama接続
  31. Hermes Desktop接続トラブル
  32. Hermes DesktopでOpenRouterを使う
  33. Hermes DesktopでDeepSeek APIを使う
  34. Hermes DesktopでProviderを使い分ける
  35. Hermes DesktopとLM Studio接続の確認ポイント
  36. Hermes AgentとDesktopの違い
  37. Ollamaとは
  38. Windows ARMでローカルAIを使う前の確認
  39. WindowsでOllamaをインストールする
  40. Ollamaのローカルモデルとcloudモデルの違い
  41. Ollamaのモデル保存場所と移動
  42. Ollamaのモデル一覧・削除・容量整理
  43. OllamaのOpenAI互換APIを使う
  44. Ollamaのtool callingを使う
  45. OllamaのStructured Outputsを使う
  46. OllamaのEmbedding APIを使う
  47. OllamaのResponses APIを使う
  48. OllamaのAPI認証を確認する
  49. OllamaのモデルID・能力を確認する
  50. Ollama native API streamingを使う
  51. LM StudioのEmbedding APIを使う
  52. Ollamaの解説
  53. 診断基準
  54. 比較表

あなたはどのタイプ?

関連チェック先

  • Ollama Modelfile Reference - FROM、PARAMETER、TEMPLATE、SYSTEM、ADAPTER、LICENSE、MESSAGE、REQUIRESの現行仕様を確認できます。
  • Ollama CLI Reference - WindowsでModelfileを使ってカスタムモデルを作成・実行するCLI例を参照できます。
  • Ollama API: Create a model - POST /api/createのmodel、from、system、parameters、messages、license、streamを確認できます。
  • Ollama Importing a Model - Safetensors、GGUF、LoRA adapterをModelfileのFROM・ADAPTERで取り込む公式手順を参照できます。
  • Ollama OpenAI compatibility - Modelfileでcontext sizeを設定し、作成したmodel名をOpenAI互換APIへ渡す公式例を確認できます。
  • Ollama API: Show model details - 作成後のparameters、template、capabilities、details、license、model_infoを確認できます。
  • Ollama API: List models - カスタムモデルが保存一覧へ登録されたか、name、size、digest、detailsで確認できます。
  • Ollama Windows - Windows版Ollamaの起動、モデル保存先、ログ、環境変数の前提を確認できます。

関連ツール

比較表を見る / 最初に検討しやすいツールを確認する