Ollama 导入导出模型
本文将会介绍,如何在不同机器之间,导入导出模型,避免每次都需要重新从云上拉取模型。
Abstract
使用ollama时有些情况下,存在在不同机器上,使用同一个模型的需求。使用ollama pull
需要等待时间较久,或者有些机器的网络条件比较恶劣。本文将会介绍,如何在不同机器之间,导入导出模型,避免每次都需要重新从云上拉取模型。
导出模型
导出模型可以简单分为3步:
- 查看模型
- 创建模型的Modelfile文件
- 导出模型
- 创建新的Modelfile文件
- 导出模型文件本身
1. 查看模型
通过ollama list
命令可以方便的查看,当前机器上已经安装的模型。
1
2
3
(base) root@ubuntu:~#ollama list
NAME ID SIZE MODIFIED
qwen2.5:0.5b 4ca7a1c74f00 397 MB 16 minutes ago
此处假设要导出qwen2.5:0.5b
到另外一台机器上。
2. 创建模型的Modelfile文件
通过ollama show
命令来创建当前文件的Modelfile文件。
1
2
3
4
5
6
7
(base) root@ubuntu:~#ollama show --modelfile qwen2.5:0.5b
# Modelfile generated by "ollama show"
# To build a new Modelfile based on this, replace FROM with:
# FROM qwen2.5:0.5b
FROM /root/.ollama/models/blobs/sha256-c5396e06af294bd101b30dce59131a76d2b773e76950acc870eda801d3ab0515
......
3.1 创建新的Modelfile文件
将ollama show
输出的内容,新建一个文件保存,假定保存为叫Modelfile
。
3.2 导出模型文件本身
Modelfile
文件很长,内容很多,但是需要关注的重要的只有一行:FROM /root/.ollama/models/blobs/sha256-c5396e06af294bd101b30dce59131a76d2b773e76950acc870eda801d3ab0515
。
其意思是,当前的模型文件存放的位置。 这个文件就是我们需要导出的模型文件。
导入模型
导入模型,可以简单的分为3步。
- 复制模型文件(模型本身和Modelfile)
- 修改Modelfile
- 创建模型
1. 复制模型文件(模型本身和Modelfile)
上一节导出模型中,有两个文件需要复制到新的机器上,分别是:
- 模型本身
- Modelfile
其中Modelfile是通过ollama show
命令输出并保存的文件,而模型本身是其中FROM /root/.ollama/models/blobs/sha256-c5396e06af294bd101b30dce59131a76d2b773e76950acc870eda801d3ab0515
所说明的文件。
将这个两个文件复制到新的机器上。
这一步建议在新机器上检查模型文件的sha256有没有变化,其sha256的值应该与其文件名相同。
2. 修改Modelfile
在新的机器上,我们需要修改Modelfile中存放模型文件的路径,即修改FROM /root/.ollama/models/blobs/sha256-c5396e06af294bd101b30dce59131a76d2b773e76950acc870eda801d3ab0515
为当前机器上的路径。
3. 创建模型
执行命令创建新的模型。
1
ollama create qwen2.5:0.5b -f /root/ollama/models/Modelfile
其中qwen2.5:0.5b
是文件名,/root/ollama/models/Modelfile
是Modelfile文件的路径。