Ollama 是什么
Ollama 面向单机场景,把模型下载、量化格式、本地运行与 HTTP 服务打包成一条命令。它默认使用 GGUF 格式的量化权重,按显存自动决定有多少层留在 GPU,默认只监听本机 127.0.0.1 的 11434 端口。适合开发调试、个人工作站与轻量内网服务,不适合作为高并发在线服务的调度核心。
基本信息
| 定位 | 单机运行与管理开源模型,自带 OpenAI 兼容接口 |
|---|---|
| 默认端口 | 11434,默认只监听 127.0.0.1 |
| 权重格式 | GGUF 量化档位;可从官方库拉取,也可导入本地 GGUF |
| 模型目录 | 默认在用户目录下,可用 OLLAMA_MODELS 迁移 |
| 调度方式 | 按需加载、常驻显存,并发度由环境变量控制 |
| 典型硬件 | 单张消费级显卡或纯 CPU,显存不足时自动卸载部分层 |
典型使用场景
- 本地开发调试:不写调用代码,命令行里直接跟模型对话验证提示词
- 个人工作站搭建私有助手:数据不出本机,配合客户端使用
- 内网小团队共享:改监听地址后供局域网内几个人调用,访问控制自行补上
- 提示词与参数试验:用 Modelfile 固化系统提示与采样参数,避免每次手写
- 离线演示环境:权重一次性拉好后,脱离外网也能运行
- 单机多模型轮换:对话模型与嵌入模型交替使用,按需加载
快速上手
快速上手
# 拉取并运行模型(首次会下载量化权重)
ollama pull qwen2.5:7b
ollama run qwen2.5:7b
# 查看本地已下载与当前已加载的模型
ollama list
ollama ps # 显示运行中的模型、占用显存与常驻时间
# 查看模型参数与模板,排查上下文与模板问题
ollama show qwen2.5:7b常用环境变量
| 变量 | 作用 |
|---|---|
| OLLAMA_HOST | 监听地址与端口,改 0.0.0.0 可让局域网访问 |
| OLLAMA_MODELS | 模型存储目录,用于把权重放到大容量盘 |
| OLLAMA_NUM_PARALLEL | 单个模型可并行处理的请求数 |
| OLLAMA_MAX_LOADED_MODELS | 同时常驻显存的模型数量上限 |
| OLLAMA_KEEP_ALIVE | 模型在显存中的空闲保留时长 |
| HTTP 代理相关变量 | 拉取模型走代理时需要,只在服务端设置 |
默认只监听本机:要让局域网访问必须设置 OLLAMA_HOST=0.0.0.0,同时自己补上访问控制;暴露到公网等于把无鉴权的推理接口挂在互联网上。
模型默认常驻显存:切换模型时旧模型不会立刻释放,配合 OLLAMA_MAX_LOADED_MODELS 与 OLLAMA_KEEP_ALIVE 控制,否则多模型轮换会互相挤占。
显存不足时 Ollama 会把部分层留在 CPU:表现是速度骤降而不是报错,判断依据是 ollama ps 里显示的 GPU 占用比例。
与在线引擎的差异
- 调度目标不同:Ollama 追求单机开箱可用,在线引擎追求同一批内塞进更多请求
- 量化档位固定:从官方库拉的模型档位已定,想换档位要导出自备 GGUF
- 显存策略自动:层数卸载由程序决定,可调空间比手动配置的引擎小
- 指标接口有限:缺少 KV 水位、排队数这类容量观测项,容量评估要靠自建压测
对外提供服务的注意点
- 并发能力与在线引擎不同:先按实际并发压测,再决定是否用它接业务流量
- 上下文窗口由参数决定:不显式设置时默认值可能小于业务需要的长度,长文场景要显式指定
- 上游模型名与本地别名要固定:客户端写死别名后换模型版本不需要改代码