什么是 Ollama

Ollama 是一款开源的本地大语言模型运行框架,旨在让普通用户也能在自己的电脑上轻松下载、管理和运行各种开源大模型。它将复杂的模型量化、推理引擎、API 服务等功能一体封装,提供了类似 Docker 的使用体验——通过简单的命令行指令即可拉取并运行一个大模型。

与直接使用 Hugging Face Transformers 等工具相比,Ollama 的优势在于:安装极简(单一可执行文件)、自动管理模型文件、内置兼容 OpenAI 接口格式的本地 REST API,以及对 Apple Silicon(M1/M2/M3)、NVIDIA GPU、AMD GPU 的原生加速支持。无论你是想在本地保护隐私地使用 AI,还是希望搭建离线开发环境,Ollama 都是目前最便捷的选择之一。

💡 提示:Ollama 本身是免费开源项目,托管于 GitHub(ollama/ollama),遵循 MIT 协议,可放心在个人和商业场景中使用。

系统要求

Ollama 支持三大主流操作系统,各平台对硬件的最低要求如下:

操作系统

硬件配置

⚠️ 注意:没有独立显卡也可以仅用 CPU 运行,但推理速度会明显偏慢(7B 模型 CPU 下约 3—8 tokens/s,GPU 下可达 30—60 tokens/s)。

安装步骤

macOS / Linux 一键安装

打开终端,执行以下命令,安装脚本会自动检测系统并完成配置:

curl -fsSL https://ollama.com/install.sh | sh

安装完成后,Ollama 会作为后台服务自动启动。验证安装是否成功:

ollama --version

Windows 安装

前往 https://ollama.com/download 下载 Windows 安装包(OllamaSetup.exe),双击运行后按向导完成安装。安装结束后,系统托盘会出现 Ollama 图标,表示服务已在后台运行。

运行第一个模型

安装完毕后,一条命令即可拉取并启动对话:

ollama run llama3

首次运行时 Ollama 会自动下载对应模型文件(约 4.7 GB),下载完成后直接进入交互式对话界面,输入问题即可获得回复。按 Ctrl + D 或输入 /bye 退出对话。

💡 提示:如果网络较慢,可以使用国内镜像加速或提前通过离线方式导入 GGUF 格式的模型文件(ollama create 命令)。

常用模型推荐

Ollama 官方 Library(https://ollama.com/library)收录了数百个开源模型,以下是目前最受欢迎的几类:

模型名称 参数规模 特点 适用场景 拉取命令
Llama 3.1 8B / 70B Meta 出品,英文能力强 通用对话、代码辅助 ollama pull llama3.1
Qwen 2.5 7B / 14B / 72B 阿里通义,中文表现优秀 中文写作、问答 ollama pull qwen2.5
Gemma 3 4B / 12B / 27B Google 出品,轻量高效 低配机器、快速响应 ollama pull gemma3
Phi-4 14B 微软出品,推理能力突出 逻辑推理、数学 ollama pull phi4
DeepSeek-R1 7B / 14B / 70B 深度求索,中英双语强 深度问答、代码 ollama pull deepseek-r1
Mistral 7B 法国团队,英文效率高 轻量通用任务 ollama pull mistral

中文用户日常使用推荐优先选择 Qwen 2.5DeepSeek-R1,中文理解和生成效果更好。

基本使用命令

熟悉以下常用命令,可以覆盖绝大多数日常使用场景:

模型管理

# 拉取模型(不立即运行)
ollama pull qwen2.5

# 查看已下载的本地模型列表
ollama list

# 删除本地模型(释放磁盘空间)
ollama rm qwen2.5

# 查看模型详细信息
ollama show llama3.1

运行与对话

# 启动交互式对话(自动拉取未下载的模型)
ollama run llama3.1

# 单次问答(不进入交互模式,适合脚本调用)
ollama run qwen2.5 "用中文解释什么是大语言模型"

# 通过管道传入问题
echo "写一首关于春天的五言绝句" | ollama run qwen2.5

服务管理

# 手动启动 Ollama 服务(macOS/Linux)
ollama serve

# 查看当前正在运行的模型
ollama ps

# 停止指定模型(释放显存)
ollama stop qwen2.5

配置 API 服务

Ollama 启动后会在本地 11434 端口暴露一个兼容 OpenAI Chat Completions 格式的 REST API,可直接对接绝大多数支持自定义 API 端点的 AI 客户端工具(如 Open WebUI、Continue、Cursor 等)。

验证服务是否运行

curl http://localhost:11434

若返回 Ollama is running 则表示服务正常。

调用 Chat API

curl http://localhost:11434/api/chat \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen2.5",
    "messages": [
      { "role": "user", "content": "你好,请介绍一下你自己" }
    ],
    "stream": false
  }'

兼容 OpenAI 格式调用

curl http://localhost:11434/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ollama" \
  -d '{
    "model": "llama3.1",
    "messages": [
      { "role": "system", "content": "You are a helpful assistant." },
      { "role": "user", "content": "What is the capital of France?" }
    ]
  }'

修改监听地址(允许局域网访问)

默认情况下 Ollama 仅监听 127.0.0.1。若需要让局域网内其他设备也能访问,可设置环境变量:

# Linux / macOS(在 ~/.bashrc 或 ~/.zshrc 中添加)
export OLLAMA_HOST=0.0.0.0

# Windows(PowerShell)
$env:OLLAMA_HOST="0.0.0.0"
ollama serve
⚠️ 安全提示:将服务暴露到局域网或公网时,建议通过防火墙规则或反向代理(如 Nginx)添加访问控制,避免未经授权的调用。

常见问题与解决

Q1:下载模型时速度极慢或超时

Ollama 的模型 Registry 服务器在海外,国内直连速度不稳定。解决方案:

# 创建 Modelfile
echo "FROM ./qwen2.5-7b-instruct-q4_k_m.gguf" > Modelfile
# 从本地文件创建模型
ollama create qwen2.5-local -f Modelfile

Q2:运行模型时提示显存不足(CUDA out of memory)

可以改用量化程度更高(精度更低、占用更小)的版本,例如:

# 拉取 4-bit 量化版本(显存占用约为默认版本的一半)
ollama pull qwen2.5:7b-instruct-q4_K_M

也可以强制使用 CPU 运行,设置环境变量 OLLAMA_NUM_GPU=0

Q3:Windows 下 ollama 命令不被识别

确认安装程序已将 Ollama 添加到系统 PATH。可以手动打开"系统属性 → 高级 → 环境变量",检查 PATH 中是否包含 C:\Users\<用户名>\AppData\Local\Programs\Ollama,添加后重启终端即可。

Q4:如何在 Python 中调用本地 Ollama

安装官方 Python 库后即可直接调用:

pip install ollama

# Python 示例
import ollama

response = ollama.chat(
    model='qwen2.5',
    messages=[{'role': 'user', 'content': '用Python写一个冒泡排序'}]
)
print(response['message']['content'])

Q5:对话记录保存在哪里

Ollama 本身不持久化对话历史,每次启动 ollama run 均为独立会话。若需要保存历史,建议使用 Open WebUI 等前端界面,它会将历史存储在本地 SQLite 数据库中,并提供更完善的多会话管理功能。

💡 推荐搭配:Ollama(后端推理)+ Open WebUI(前端界面)是目前最流行的本地 AI 部署组合,安装 Open WebUI 只需一条 Docker 命令,即可获得接近 ChatGPT 的使用体验。