3、模型运行基础:ollama run 命令详解、模型交互模式、退出与切换模型、查看模型运行状态
好,咱们进入模型运行这个环节。说实话,ollama 最常用的命令就是 ollama run,你每天跟模型打交道基本都靠它。我刚开始用的时候也踩过几个坑,今天一并讲清楚。
3.1 ollama run 命令详解
先看最基本的用法:
ollama run llama3.2:1b
这条命令会启动 llama3.2:1b 模型,然后进入交互模式。你想想看,它背后做了三件事:加载模型参数、分配显存、启动推理引擎。我习惯在启动前先用 ollama list 确认一下模型名称,因为有时候标签写错了会报错。
如果你想一次性输入 prompt 然后退出,可以用:
ollama run llama3.2:1b "请用中文介绍你自己"
这个用法在脚本里特别实用。我在做自动化测试时,经常用这种方式批量跑 prompt。
重要参数说明:
| 参数 | 作用 | 示例 |
|---|---|---|
| --keep-alive | 控制模型在内存中的驻留时间 | --keep-alive 5m |
| --nowordwrap | 禁用自动换行 | --nowordwrap |
| --verbose | 显示详细推理信息 | --verbose |
这里重点说一下 --keep-alive。默认情况下,模型在空闲 5 分钟后会自动卸载。如果你频繁切换任务,建议设长一点,比如 --keep-alive 30m。我曾经在部署 API 服务时没注意这个参数,结果每次请求都要重新加载模型,延迟直接飙到 10 秒以上。
3.2 模型交互模式
进入交互模式后,你会看到一个 >>> 提示符。这时候你可以直接输入问题,模型会实时生成回答。
交互模式里有一些内置命令,我列一下常用的:
/show— 查看当前模型的详细信息,包括参数设置、系统提示词等/set— 临时修改运行参数,比如/set temperature 0.8/save— 将当前对话保存为新的模型版本/clear— 清空当前对话历史/help— 查看所有可用命令
举个例子,你想调整模型的创造力:
>>> /set temperature 0.9
>>> /set top_p 0.95
这些参数只对当前会话生效,退出后就恢复默认了。我个人习惯在调试 prompt 时频繁调整 temperature,从 0.1 到 1.0 逐个试,找到最合适的值。
小技巧: 如果你发现模型回答总是重复,可以试试调高 repeat_penalty,比如 /set repeat_penalty 1.2。我在写长文本生成时经常用这招。
3.3 退出与切换模型
退出交互模式很简单:
- 输入
/exit或/bye - 直接按
Ctrl+D或Ctrl+C
但要注意,退出后模型并不会立即从内存中卸载。它会在后台保持一段时间(取决于 --keep-alive 设置)。如果你想强制卸载:
ollama stop llama3.2:1b
切换模型时,我建议先停掉当前模型再启动新的。虽然 ollama 允许同时运行多个模型,但显存有限,容易 OOM。嗯,这里要注意:
警告: 不要同时运行超过显存容量的大模型。我曾经在 8GB 显存的机器上同时跑两个 7B 模型,结果直接卡死,只能重启服务。
切换模型的正确姿势:
# 先退出当前会话
/exit
# 停掉当前模型(可选但推荐)
ollama stop llama3.2:1b
# 启动新模型
ollama run qwen2.5:7b
3.4 查看模型运行状态
运行中的模型怎么监控?有几个命令很实用:
# 查看所有正在运行的模型
ollama ps
# 查看详细状态(包括显存占用)
ollama ps --verbose
ollama ps 的输出类似这样:
| NAME | ID | SIZE | PROCESSOR | UNTIL |
|---|---|---|---|---|
| llama3.2:1b | abc123 | 1.2GB | 100% CPU | 4m23s |
| qwen2.5:7b | def456 | 4.5GB | 100% GPU | 2m15s |
这里 UNTIL 列显示的是模型还有多久会被自动卸载。如果你看到某个模型快到期了,但你还想继续用,可以延长它的驻留时间:
ollama run llama3.2:1b --keep-alive 10m
或者直接在交互模式里:
>>> /set keep_alive 10m
我一般在生产环境里会把 keep_alive 设成 -1,表示永久驻留。但前提是你的内存要够用。
核心要点总结:
ollama run是启动模型的入口,支持单次推理和交互模式- 交互模式里用
/set可以临时调整参数 - 退出用
/exit或Ctrl+D,切换模型前建议先ollama stop - 用
ollama ps监控运行状态,注意keep_alive参数