要查看本机 Ollama 已经下载了哪些模型,最直接的做法是先运行 ollama list;如果该命令能返回结果,你可以把它当作当前环境的判断依据。更准确地说,ollama list 反映的是你当前这条命令所连接到的 Ollama 服务实例上的模型清单,而不一定代表整台机器的所有用户、所有数据目录或所有容器里的模型。因此在执行前,你需要先确认自己是在宿主机上直接操作,还是在容器、远程主机或自定义 OLLAMA_MODELS 目录下操作,这决定了你看到的列表是否就是你要找的那份。
查看 Ollama 已下载模型,优先执行ollama list,它通常输出模型名、标签、大小和修改时间。若列表为空或与预期不符,先确认命令连接的 Ollama 服务地址、运行用户和模型存储目录是否一致;容器或自定义存储路径下的模型不会自动出现在宿主机默认列表中。验证时以命令返回的模型数量和名称为准,必要时再用ollama show核对单个模型信息。
先确认当前场景和目标
“查看模型列表”这个问题成立的前提,是你已经用 Ollama 拉取过至少一个模型,并且执行命令的环境与运行模型的环境能够对应上。如果只是刚安装 Ollama、还没有执行过 ollama pull,那么列表为空是正常结果,不是命令坏了。
动手前建议先确认三件事:
- 服务是否在跑:
ollama list需要通过本地 Ollama 服务或OLLAMA_HOST指向的地址读取信息。服务没起来时,命令可能报连接错误,而不是返回空列表。 - 你操作的是哪个环境:直接在宿主机终端执行,和在 Docker 容器内执行、通过 SSH 登录远程主机执行,看到的模型集合可能不同。
- 模型存储位置是否被改过:如果设置过
OLLAMA_MODELS环境变量,模型文件会落在指定目录,不同用户或不同服务实例可能各自读取各自的目录。
如果目标是“确认某个模型是否已经下载”,ollama list 只是第一步,还需要结合模型名和标签(tag)来判断,例如 llama3:8b 和 llama3:latest 在列表中会作为不同条目出现。
按这个顺序处理
建议按从简单到排查的顺序操作,避免一上来就翻目录。
- 先执行基础命令:在终端运行
ollama list。这是查看已下载模型的主命令,通常返回 NAME、ID、SIZE、MODIFIED 几列。 - 确认命令与服务连通:如果提示无法连接,先检查 Ollama 服务是否启动。Linux 上常用
systemctl status ollama查看服务状态;macOS 和 Windows 通常通过桌面应用或后台进程运行,需要确认应用已启动。 - 核对连接地址:如果环境里设置了
OLLAMA_HOST,ollama list会去连那个地址。可以先查看当前变量,确认它指向的是你要查的实例:
如果这个变量指向远程主机或另一个端口,看到的自然不是本机默认实例的模型。echo $OLLAMA_HOST - 区分容器内外:在 Docker 中运行 Ollama 时,模型通常存放在容器卷或挂载目录里。只在宿主机执行
ollama list可能看不到容器内的模型,需要进入对应容器执行,或确认挂载卷与宿主机目录的对应关系。 - 核对自定义模型目录:如果使用过
OLLAMA_MODELS,可以查看当前值:
目录里通常能看到按模型名组织的子目录。这一步是辅助判断,不能替代echo $OLLAMA_MODELS ls -lh "$OLLAMA_MODELS"ollama list,因为直接看目录无法可靠还原模型标签和完整状态。 - 查看单个模型详情:确认列表里有目标模型后,可以用下面的命令核对模型参数和模板信息:
把ollama show llama3:8bllama3:8b替换成你列表里实际存在的名称。这个命令适合在“列表里有、但不确定是不是自己要的版本”时使用。
如果 ollama list 正常返回但缺少某个模型,处理方向不是反复执行 list,而是回到拉取环节,确认该模型是否真的下载完成,以及下载时使用的服务实例是否和现在查询的是同一个。
改完后怎么验证
这里的“改完”通常指你调整了环境变量、切换了执行环境或启动了服务之后,需要确认列表是否符合预期。

- 验证动作一:重新执行
ollama list。预期信号是命令正常退出并打印表格,而不是连接失败或空输出。列表中的模型名称应与你执行过的ollama pull记录对得上。 - 验证动作二:核对模型标签。确认列表里出现的是你需要的具体标签,例如
qwen2:7b而不是只有qwen2:latest。如果标签不符,说明下载的是另一个版本。 - 验证动作三:用
ollama show抽查。对列表中的一个模型执行ollama show 模型名,能正常输出模型信息,说明该模型条目可被服务识别,不只是目录里残留了文件。 - 验证动作四:跑一次最小调用。如果需要确认模型真的可用,可以执行:
能返回文本即说明模型可加载。这一步比只看列表更严格,但会占用一些加载时间。ollama run 模型名 "你好"
验证时以命令实际输出为准,不要仅凭“我记得下载过”来判断。列表为空、模型名缺失、或者 show 报错,都属于需要继续排查的信号。
容易忽略的边界
第一,ollama list 查的是当前服务实例的模型,不是全机器扫描。多用户系统里,不同用户可能使用不同的模型目录;容器化部署时,容器内和宿主机是两套存储视图。把 list 的结果当成“整台机器所有模型”容易误判。
第二,模型标签和实际文件要区分。ollama list 显示的是服务管理的模型条目,直接删除或移动 OLLAMA_MODELS 目录下的文件,可能导致列表与实际文件不一致,甚至让某个模型条目失效。需要清理时,优先使用 ollama rm 模型名 这类管理命令,而不是手工删目录。
第三,版本差异会影响输出字段。不同 Ollama 版本的 ollama list 输出列可能略有差别,命令行为也可能随版本调整。如果输出格式和你看到过的示例不一致,先确认版本:
ollama --version
第四,远程或自定义地址场景下,list 能否成功取决于网络和服务配置,而不只是本地文件是否存在。连接不上时,回退建议是先在本机默认实例上执行 ollama list,确认基础命令可用,再逐步加回 OLLAMA_HOST 或容器环境,定位是哪一层导致列表不符合预期。