Ollama 的安装过程极为简洁。访问官方网站后,根据操作系统选择对应的安装包——macOS 用户下载 .dmg 文件,Windows 用户运行安装程序,Linux 用户则可通过一行脚本完成部署:curl -fsSL https://ollama.com/install.sh | sh。安装完成后,打开终端或命令提示符,输入 ollama --version 即可验证是否成功。无需额外配置环境变量,Ollama 默认将模型数据存储在用户目录下的 .ollama 文件夹中,初次运行时会自动创建该目录。
Ollama 支持从官方模型仓库直接拉取预训练模型。最常用的命令是 ollama pull,后面跟上模型名称与标签。例如,拉取 Meta 的 Llama 3.1 8B 模型:ollama pull llama3.1:8b。若未指定标签,则默认下载最新版本。官方模型列表可在 Ollama 官网的模型库页面查看,涵盖 Llama、Mistral、Gemma、Phi 等主流架构,每个模型都标有参数量、量化等级以及适用的硬件要求。下载过程会显示进度条,模型文件通常以 GGUF 格式存储,体积从几 GB 到几十 GB 不等。下载完成后,模型即被缓存至本地,后续无需重复拉取。
启动模型只需一条命令:ollama run <模型名称>。例如 ollama run llama3.1:8b,终端会立即加载模型并进入交互式对话界面。此时可以直接输入问题或指令,Ollama 会实时生成回复,按 Ctrl+D 或输入 /bye 退出会话。如果希望一次输入完整提示后退出,可使用 ollama run <模型名称> "你的提示内容" 的方式。对于需要连续对话的场景,Ollama 默认保留上下文——每次输入都会自动拼接之前的对话历史,直到手动重置或模型上下文窗口耗尽。
通过 Modelfile 文件,用户可以基于已有模型进行微调或行为定制。Modelfile 的语法类似 Dockerfile,支持设置系统提示词、调整温度参数、修改停止词、挂载对话模板等。创建一个文本文件 MyModel.Modelfile,写入以下内容示例:
FROM llama3.1:8b
SYSTEM "你是一名精通多国语言的编辑,回答必须简洁专业。"
PARAMETER temperature 0.7
PARAMETER stop "再见"
然后在终端运行 ollama create my-custom-model -f MyModel.Modelfile,Ollama 会基于基础模型生成一个名为 my-custom-model 的新模型。创建完成后,可以用 ollama run my-custom-model 启动该自定义版本。Modelfile 还支持 LICENSE、CHAT_TEMPLATE、ADAPTER 等高级指令,具体参数可参考官方文档。
Ollama 内置了兼容 OpenAI 格式的 HTTP API,方便集成到应用程序中。模型运行后(无需进入交互模式),Ollama 会在 http://localhost:11434 启动一个本地服务。向 /api/generate 发送 POST 请求即可完成文本生成:
curl http://localhost:11434/api/generate -d '{
"model": "llama3.1:8b",
"prompt": "解释一下 Ollama 的用途",
"stream": false
}'
设置 "stream": true 可获取流式响应,适合实时输出场景。另外,使用 /api/chat 端点可以模拟多轮对话,请求体需提供 messages 数组,格式与 OpenAI Chat Completions 一致。若需查看已加载的模型列表,可访问 /api/tags。注意,API 默认只监听本地环回地址,如需远程访问,需设置环境变量 OLLAMA_HOST=0.0.0.0。
查看已下载的所有模型:ollama list,会显示模型名称、ID、大小以及修改时间。删除不需要的模型:ollama rm <模型名称>。若要停止正在运行的后台服务(即模型进程),可用 ollama stop <模型名称>,或直接关闭所有模型:ollama stop --all。Ollama 在后台以守护进程方式运行,首次启动模型时自动拉起服务,之后模型会常驻内存直至手动停止或超时。修改默认监听端口可通过设置环境变量 OLLAMA_PORT 实现,例如 export OLLAMA_PORT=8080 后再运行模型。
Ollama 支持同时加载多个模型实例,但受限于显存大小。默认情况下,一个模型占用全部可用显存,可通过设置 OLLAMA_NUM_PARALLEL 环境变量调整并行请求数量。例如 export OLLAMA_NUM_PARALLEL=2 后,同一模型可同时处理两个请求(如同时使用 API 和终端)。此外,使用 OLLAMA_KEEP_ALIVE 可控制模型在无请求时的保活时间,单位秒,默认 300 秒。合理设置这些参数能平衡内存占用与响应延迟。
虽然 Ollama 本身是命令行工具,但社区开发了多种图形化前端。例如 Open WebUI(原 Ollama WebUI)可直接连接本地 Ollama 服务,提供类似 ChatGPT 的浏览器界面。安装方式为 docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway ghcr.io/open-webui/open-webui:main。此外,桌面应用如 Ollama Desktop(Mac 版)或 LM Studio 也能以图形方式管理模型。这些工具均通过调用 Ollama API 实现,本质上并未开启新功能,仅改变了交互方式。