目錄

Ollama Modelfile 教學:打造自己的客製化模型

Modelfile 是 Ollama 的模型設定檔,概念和 Dockerfile 很像:以一個現有的模型為基礎,加上自己的系統提示詞和參數,打包成一個新的模型名稱。

第一個 Modelfile:繁體中文助理

建立一個名為 Modelfile 的純文字檔:

FROM qwen3:8b

SYSTEM """
你是一位專業又親切的助理。
- 一律使用台灣慣用的繁體中文與用語回答。
- 回答要精簡,先給結論,再補充說明。
- 不確定的事情要直接說不確定,不要編造。
"""

PARAMETER temperature 0.6
PARAMETER num_ctx 8192

建立並執行:

ollama create tw-assistant -f ./Modelfile
ollama run tw-assistant

tw-assistant 會出現在 ollama list 中,API 和其他工具也都可以直接使用這個名稱。建立新模型不會複製原本模型的權重檔,幾乎不佔額外空間。

指令說明

指令必要說明
FROM✓基礎模型,可以是模型名稱或本機的 GGUF / safetensors 檔案
SYSTEM系統提示詞
PARAMETER推論參數
MESSAGE預先放入的對話範例
TEMPLATE提示詞範本(通常沿用基礎模型的,不需要修改)
LICENSE授權條款

多行文字用 """ 包起來。

常用參數

參數說明建議
temperature隨機程度。越低越穩定、越高越有創意事實問答 0.2~0.5;創作 0.8~1.0
num_ctx上下文長度(token),決定模型能「記住」多少內容長文件摘要時調大,但會增加記憶體用量
top_p只從累積機率前 p 的字中挑選通常維持預設
top_k只從機率最高的 k 個字中挑選通常維持預設
repeat_penalty降低重複內容的機率回答不斷重複時調高到 1.1
num_predict最多產生多少 token,-1 為不限制需要控制長度時設定
stop遇到這段文字就停止生成可設定多個
seed隨機種子,固定後同樣的輸入會得到相同輸出測試時使用

基礎模型本身可能已經設定了一些參數(例如建議的 temperature),可以用 ollama show 模型 --parameters 查看。你在 Modelfile 中設定的值會覆蓋它們。

用 MESSAGE 提供範例

範例對話能有效地「示範」你要的回答格式:

FROM qwen3:8b

SYSTEM 你是一個把口語句子改寫成正式公文用語的助理,只輸出改寫後的句子。

MESSAGE user 我們明天沒辦法去開會
MESSAGE assistant 本單位明日因故無法出席會議,敬請見諒。
MESSAGE user 東西已經寄出去了
MESSAGE assistant 相關物品業已寄出,請查收。

從現有模型的 Modelfile 開始

ollama show qwen3:8b --modelfile > Modelfile

輸出的檔案包含完整的 TEMPLATE 和參數,修改需要的部分即可。注意輸出的 FROM 可能是一個本機檔案路徑,改回模型名稱(例如 FROM qwen3:8b)比較好維護。

匯入 Hugging Face 的 GGUF 模型

Hugging Face 上有大量 GGUF 格式的模型(包含各種微調版本)。下載 .gguf 檔後:

FROM ./my-finetuned-model.Q4_K_M.gguf
ollama create my-model -f Modelfile

Ollama 也可以直接執行 Hugging Face 上的 GGUF 儲存庫:

ollama run hf.co/使用者名稱/儲存庫名稱
ollama run hf.co/使用者名稱/儲存庫名稱:Q4_K_M

匯入 safetensors

從 safetensors 權重建立模型時,可以在建立時進行量化:

ollama create my-model -f Modelfile --quantize q4_K_M

(支援的架構以官方文件為準。)

在互動模式中快速儲存

不寫 Modelfile 也行。在對話中調整好之後直接存檔:

>>> /set system "你是一位資深的 Python 講師,用繁體中文回答,並附上範例程式碼。"
>>> /set parameter temperature 0.4
>>> /save python-tutor

管理自訂模型

ollama list                      # 自訂模型也會出現在這裡
ollama rm tw-assistant           # 刪除(不影響基礎模型)
ollama show tw-assistant --modelfile

把 Modelfile 放進 Git 版本控制,團隊成員就能用 ollama create 建出完全相同的模型。

更新於 2026年10月12日