Post

Ollama 导入导出模型

本文将会介绍,如何在不同机器之间,导入导出模型,避免每次都需要重新从云上拉取模型。

Ollama 导入导出模型

Abstract

使用ollama时有些情况下,存在在不同机器上,使用同一个模型的需求。使用ollama pull需要等待时间较久,或者有些机器的网络条件比较恶劣。本文将会介绍,如何在不同机器之间,导入导出模型,避免每次都需要重新从云上拉取模型。

导出模型

导出模型可以简单分为3步:

  1. 查看模型
  2. 创建模型的Modelfile文件
  3. 导出模型
    1. 创建新的Modelfile文件
    2. 导出模型文件本身

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步。

  1. 复制模型文件(模型本身和Modelfile)
  2. 修改Modelfile
  3. 创建模型

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文件的路径。

This post is licensed under CC BY 4.0 by the author.