如何自己构建 Ollama 模型
- 0. 引言
- 1. 下载原始模型
- 2. 创建 Modelfile 文件
- 3. 构建 Ollama 模型
- 4. 运行自构建的 Ollama 模型
0. 引言
针对模型新出的大模型,可能 Ollama Models Library 不提供,或者会在今后的某个时点提供。还有可能 Ollama Models Library 提供的模型有问题,或者我们想加入一些客户化的内容。上面这些情况,我们可能都需要自己构建一个 Ollama 模型。
今天我会以一个示例演示一下如何构建一个客户化 Ollama 模型。
1. 下载原始模型
今天的示例模型是 CohereForAI/c4ai-command-r-v01
,我们先搜寻 gguf 格式的模型文件,找到这个链接,https://huggingface.co/andrewcanis/c4ai-command-r-v01-GGUF/tree/main,我们下载想使用的量化版本,比如,c4ai-command-r-v01-Q8_0.gguf
,
2. 创建 Modelfile 文件
创建一个 Modelfile 文件,比如 c4ai-command-r-v01-Q8_0.Modelfile
,内容如下,
TEMPLATE 和 PARAMETER 的内容如何定义,需要查看各个模型页面的相关说明。
FROM ./c4ai-command-r-v01-Q8_0.gguf
TEMPLATE """<BOS_TOKEN>{{ if .System }}<|START_OF_TURN_TOKEN|><|SYSTEM_TOKEN|>{{ .System }}<|END_OF_TURN_TOKEN|>{{ end }}{{ if .Prompt }}<|START_OF_TURN_TOKEN|><|USER_TOKEN|>{{ .Prompt }}<|END_OF_TURN_TOKEN|>{{ end }}<|START_OF_TURN_TOKEN|><|CHATBOT_TOKEN|>{{ .Response }}"""
PARAMETER stop "<|END_OF_TURN_TOKEN|>"
refer: https://github.com/ollama/ollama?tab=readme-ov-file
refer: https://github.com/ollama/ollama/pull/3190
3. 构建 Ollama 模型
执行下面命令构建 Ollama 模型,这个过程会花费一些时间,
ollama create cohereforai:c4ai-command-r-v01-Q8_0 -f .\c4ai-command-r-v01-Q8_0.Modelfile
4. 运行自构建的 Ollama 模型
通过 ollama run
模型运行自构建的 Ollama 模型,
ollama run cohereforai:c4ai-command-r-v01-Q8_0
完结!