目錄
從 Safetensors 權重匯入 Adapter
首先,建立一個 Modelfile,包含指向您用於微調的基礎模型的 FROM 指令,以及指向包含您的 Safetensors adapter 目錄的 ADAPTER 指令:
dockerfile
FROM <base model name>
ADAPTER /path/to/safetensors/adapter/directory請確保您在 FROM 指令中使用的基礎模型與您建立 Adapter 時使用的相同,否則您將會得到不穩定的結果。大多數框架使用不同的量化方法,因此最好使用非量化(即非 QLoRA)的 Adapter。如果您的 Adapter 與 Modelfile 在同一個目錄中,請使用 ADAPTER . 來指定 Adapter 路徑。
現在從包含 Modelfile 的目錄執行 ollama create:
shell
ollama create my-model最後,測試模型:
shell
ollama run my-modelOllama 支持匯入基於多種不同模型架構的 Adapter,包括:
- Llama(包括 Llama 2、Llama 3、Llama 3.1 和 Llama 3.2);
- Mistral(包括 Mistral 1、Mistral 2 和 Mixtral);以及
- Gemma(包括 Gemma 1 和 Gemma 2)
您可以使用可以輸出 Safetensors 格式 Adapter 的微調框架或工具來建立 Adapter,例如:
- Hugging Face fine tuning framework
- Unsloth
- MLX
從 Safetensors 權重匯入模型
首先,建立一個 Modelfile,包含指向包含您的 Safetensors 權重的目錄的 FROM 指令:
dockerfile
FROM /path/to/safetensors/directory如果您在與權重相同的目錄中建立 Modelfile,您可以使用 FROM . 指令。
現在從您建立 Modelfile 的目錄執行 ollama create 指令:
shell
ollama create my-model最後,測試模型:
shell
ollama run my-modelOllama 支持匯入多種不同架構的模型,包括:
- Llama(包括 Llama 2、Llama 3、Llama 3.1 和 Llama 3.2);
- Mistral(包括 Mistral 1、Mistral 2 和 Mixtral);
- Gemma(包括 Gemma 1 和 Gemma 2);以及
- Phi3
這包括匯入基礎模型以及任何與基礎模型進行過「融合」(fused)的微調模型。
匯入基於 GGUF 的模型或 Adapter
如果您有基於 GGUF 的模型或 Adapter,您可以將其匯入到 Ollama。您可以透過以下方式取得 GGUF 模型或 Adapter:
- 使用 Llama.cpp 的
convert_hf_to_gguf.py將 Safetensors 模型轉換; - 使用 Llama.cpp 的
convert_lora_to_gguf.py將 Safetensors Adapter 轉換;或者 - 從 HuggingFace 等地方下載模型或 Adapter
若要匯入 GGUF 模型,請建立包含以下內容的 Modelfile:
dockerfile
FROM /path/to/file.gguf對於 GGUF Adapter,請建立包含以下內容的 Modelfile:
dockerfile
FROM <model name>
ADAPTER /path/to/file.gguf在匯入 GGUF Adapter 時,務必使用與該 Adapter 建立時相同的基礎模型。您可以使用:
- Ollama 的模型
- GGUF 檔案
- 基於 Safetensors 的模型
建立 Modelfile 後,使用 ollama create 指令來構建模型。
shell
ollama create my-model模型量化
模型量化可以讓您以更快的速度運行模型並減少記憶體消耗,但會降低準確度。這讓您可以在較低階的硬體上執行模型。
Ollama 可以使用 ollama create 指令中的 -q/--quantize 旗標,將基於 FP16 和 FP32 的模型量化到不同的層級。
首先,建立包含您想要量化的 FP16 或 FP32 基礎模型的 Modelfile。
dockerfile
FROM /path/to/my/gemma/f16/model然後使用 ollama create 來建立量化後的模型。
shell
$ ollama create --quantize q4_K_M mymodel
transferring model data
quantizing F16 model to Q4_K_M
creating new layer sha256:735e246cc1abfd06e9cdcf95504d6789a6cd1ad7577108a70d9902fef503c1bd
creating new layer sha256:0853f0ad24e5865173bbf9ffcc7b0f5d56b66fd690ab1009867e45e7d2c4db0f
writing manifest
success支援的量化方式
q8_0
K-means 量化
q4_K_Sq4_K_M
在 ollama.com 上分享模型
您可以透過將建立的模型推送到 ollama.com 來分享給其他使用者嘗試。
首先,使用瀏覽器前往 Ollama Sign-Up 頁面。如果您已經有帳號,可以跳過此步驟。

Username 欄位將作為您模型名稱的一部分(例如 jmorganca/mymodel),因此請確保您選定的使用者名稱是您滿意的。
現在您已經建立了帳號並登入,請前往 Ollama Keys Settings 頁面。
按照頁面上的指示來確認您的 Ollama 公鑰(Public Key)位置。

點擊 Add Ollama Public Key 按鈕,然後將您的 Ollama 公鑰內容複製並貼上到文字欄位中。
若要將模型推送到 ollama.com,請先確保其名稱包含您的使用者名稱。您可能需要使用 ollama cp 指令來複製您的模型以賦予正確的名稱。一旦您對模型的名稱感到滿意,即可使用 ollama push 指令將其推送到 ollama.com。
shell
ollama cp mymodel myuser/mymodel
ollama push myuser/mymodel模型推送成功後,其他使用者可以透過以下指令來拉取並執行:
shell
ollama run myuser/mymodel