导入模型
本指南将介绍如何导入 GGUF、PyTorch 或 Safetensors 模型。
导入 (GGUF)
步骤 1:编写 Modelfile
首先创建一个 Modelfile。这个文件是你模型的蓝图,它指定了权重、参数、提示模板等信息。
FROM ./mistral-7b-v0.1.Q4_0.gguf(可选)许多聊天模型需要一个正确的提示模板才能作答。您可以在模 odel 文件的 TEMPLATE 指令中指定默认的提示模板:
FROM ./mistral-7b-v0.1.Q4_0.gguf
TEMPLATE "[INST] {{ .Prompt }} [/INST]"步骤 2:创建 Ollama 模型
最后,根据你的 Modelfile 创建一个模型:
ollama create example -f Modelfile步骤三:运行你的模型
接下来,使用 ollama run 测试模型:
ollama run example "What is your favourite condiment?"导入 (PyTorch & Safetensors)
从 PyTorch 和 Safetensors 导入的流程比从 GGUF 导入更长。正在努力进行改进,使其变得更加简单。
设置
首先,克隆 ollama/ollama 仓库:
git clone [email protected]:ollama/ollama.git ollama
cd ollama然后获取它的 llama.cpp 子模块:
git submodule init
git submodule update llm/llama.cpp接下来,安装 Python 依赖项:
python3 -m venv llm/llama.cpp/.venv
source llm/llama.cpp/.venv/bin/activate
pip install -r llm/llama.cpp/requirements.txt然后构建 quantize 工具:
make -C llm/llama.cpp quantize(可选)克隆 HuggingFace 仓库
如果模型当前托管在 HuggingFace 仓库中,请首先克隆该仓库以下载原始模型。
安装 Git LFS ,验证是否已安装,然后克隆模型库:
git lfs install
git clone https://huggingface.co/mistralai/Mistral-7B-Instruct-v0.1 model转换模型
注意:某些模型架构需要使用特定的转换脚本。例如,Qwen 模型需要运行 convert-hf- 到 -gguf.py 而不是 convert.py。
python llm/llama.cpp/convert.py ./model --outtype f16 --outfile converted.bin量化模型
llm/llama.cpp/quantize converted.bin quantized.bin q4_0步骤 3:编写“模型文件”
接下来,为您的模型创建一个 ModelFile:
FROM quantized.bin
TEMPLATE "[INST] {{ .Prompt }} [/INST]"步骤 4:创建 Ollama 模型
最后,根据你的 Modelfile 创建一个模型:
ollama create example -f Modelfile步骤 5:运行你的模型
接下来,使用 ollama run 测试模型:
ollama run example "What is your favourite condiment?"发布您的模型(可选 - 早期测试版)
发布模型功能尚处于早期测试阶段。若要将您的模型发布出去与他人分享,请按以下步骤操作:
- 创建一个帐户 在这里 注册
- 复制您的 Ollama 公钥:
- macOS:
cat ~/.ollama/id_ed25519.pub | pbcopy - Windows:
type %USERPROFILE%\.ollama\id_ed25519.pub - Linux:
cat /usr/share/ollama/.ollama/id_ed25519.pub
翻译为:
Linux: 查看 /usr/share/ollama/.ollama/id_ed25519.pub 文件内容
- 将您的公钥添加到您的 Ollama 账户 中。
接下来,将您的模型复制到您的用户名命名空间中:
ollama cp example your_username/example请注意:模型名称只能包含小写字母、数字和字符 .、-、_。
然后推送模型:
ollama push your_username/example发布后,您的模型将在 https://ollama.com/model_name/example 处可用。
量化参考
量化选项如下(从最高到最低的量化级别)。注意:某些架构,如 Falcon,不支持 K 量化。
q2_Kq3_Kq3_K_Sq3_K_Mq3_K_Lq4_0(推荐)q4_1q4_Kq4_K_Sq4_K_Mq5_0q5_1q5_Kq5_K_Sq5_K_Mq6_Kq8_0f16
