3、Ollama CLI基础:常用命令概览、pull/push命令详解、list/rm命令使用

聊到 Ollama 的 CLI,说白了就是咱们和模型打交道的「遥控器」。你想想看,不管你是拉模型、删模型,还是查版本,最终都得靠这几条命令。我个人习惯是把 CLI 当成瑞士军刀——平时不觉得,真要用的时候,少一个都别扭。

3.1 常用命令概览

先给你一张速查表,把最常用的命令列出来。我刚开始接触 Ollama 时,就靠这张表撑过了前两周。

命令 作用 我常用的场景
ollama pull 拉取模型到本地 部署新模型、更新版本
ollama push 推送本地模型到仓库 团队共享、备份自定义模型
ollama list 列出本地所有模型 查看已安装的模型和版本
ollama rm 删除本地模型 清理磁盘、移除旧版本
ollama run 运行模型 快速测试模型效果
ollama show 查看模型详细信息 检查模型配置和参数

嗯,这里要注意:ollama run 虽然常用,但它属于「运行态」的命令。咱们这章重点讲的是「管理态」的命令——pull、push、list、rm。这些才是版本管理的基石。

3.2 pull/push 命令详解

3.2.1 pull:把模型拉到本地

拉模型这事儿,看起来简单,但坑不少。最基本的用法:

ollama pull llama3.2:1b

这条命令会从官方仓库拉取 llama3.2 的 1B 参数版本。为什么我要强调版本号?因为我在项目中遇到过,有人直接写 ollama pull llama3.2,结果拉到了最新版,和团队其他人用的版本不一致,排查了半天才发现是版本差异导致的。

我的习惯:每次 pull 都带上明确的版本标签。比如 llama3.2:1b 而不是 llama3.2。这样你的环境是可复现的,别人拿到你的命令,拉到的模型一模一样。

如果你需要从私有仓库拉取,可以指定完整路径:

ollama pull my-registry.example.com/my-team/custom-model:v2.1

为什么会用到私有仓库?说白了,企业里很多微调过的模型不能公开,得放在自己的 registry 里。我去年帮一家金融客户搭环境,他们的风控模型就是通过这种方式管理的。

3.2.2 push:把模型推上去

推送模型前,你得先给模型打个标签。比如你微调了一个 llama3.2,想把它推送到团队仓库:

ollama tag llama3.2:1b my-registry/team-models/finetuned-llama:v1.0
ollama push my-registry/team-models/finetuned-llama:v1.0

这里有个容易踩的坑——推送前一定要确认模型文件完整性。我曾经有一次,模型推到一半网络断了,结果仓库里留了个残缺版本。后来同事拉下来直接报错,排查了半天才发现是推送不完整。

避坑指南:推送大模型(比如 70B 参数)时,建议先做一次 ollama show 确认模型文件大小和层数。如果发现文件大小异常,先删掉本地模型重新 pull 再 push。别问我怎么知道的——都是泪。

3.3 list/rm 命令使用

3.3.1 list:看看你都有啥

ollama list 是我用得最频繁的命令之一。每次打开终端,先敲一遍,看看本地有哪些模型:

ollama list

输出大概长这样:

NAME                     ID              SIZE      MODIFIED
llama3.2:1b              a1b2c3d4        1.1 GB    2 days ago
llama3.2:3b              e5f6g7h8        3.3 GB    5 hours ago
mistral:7b               i9j0k1l2        7.2 GB    1 week ago
custom-model:v2.1        m3n4o5p6        4.5 GB    3 hours ago

嗯,这里要注意:ID 列是模型的哈希值,可以用来精确区分不同版本。我习惯在脚本里用 ID 而不是名字来引用模型,因为名字可能重复,但 ID 是唯一的。

3.3.2 rm:清理不需要的模型

磁盘空间不够了?用 ollama rm 清理旧版本:

ollama rm llama3.2:1b

如果你想一次删多个:

ollama rm llama3.2:1b mistral:7b

这里有个小技巧:ollama list 配合 grep 筛选出要删的模型。比如你想删掉所有以 "test-" 开头的模型:

ollama list | grep "test-" | awk '{print $1}' | xargs ollama rm
重要提醒:删除操作不可逆!我建议你在执行 ollama rm 之前,先用 ollama list 确认一下要删的模型。特别是当你用脚本批量删除时,最好加个确认步骤。

3.4 知识体系:CLI 命令的核心逻辑

为了让你更直观地理解这些命令之间的关系,我画了一张图:

Ollama CLI 命令核心逻辑 本地环境 远程仓库 ollama list 查看本地模型 ollama rm 删除本地模型 ollama run 运行模型 模型存储 版本管理 ollama pull 从远程拉取 ollama push 推送到远程 pull push 核心原则:本地管理 + 远程同步 = 版本可控

这张图想表达的核心思想是:list 和 rm 管本地,pull 和 push 管同步。你想想看,版本管理说白了就是「本地有什么、远程有什么、怎么同步」这三件事。把这四个命令用熟了,模型版本管理就稳了。

最后说一句:别小看这些基础命令。我见过不少团队,模型版本乱成一锅粥,追根溯源就是 pull 的时候没带版本号,或者 rm 的时候删错了模型。基础打牢了,后面讲回滚策略时才不会手忙脚乱。