一、背景认知

1.1 什么是 Ollama

Ollama 是一款开源的本地大模型运行工具,它将复杂的模型下载、量化、环境配置和推理过程全部封装成简单的命令行操作,让普通用户也能在个人电脑上轻松运行 Llama、Qwen、DeepSeek 等上百种开源大模型。

1.2 为什么选择 Ollama

  • 极简部署:一条命令即可安装和运行模型,无需复杂的 Python 环境或依赖配置
  • 隐私安全:所有推理过程完全在本地进行,数据不会上传到任何服务器
  • 跨平台支持:全面支持 Windows 10+、macOS 14 + 和主流 Linux 发行版
  • 硬件优化:自动检测并使用 GPU 加速,支持 4-bit 量化技术,大幅降低显存需求
  • 丰富生态:提供 OpenAI 兼容的 REST API,可与 LangChain、Dify、Open WebUI 等工具无缝集成
  • 多模型管理:支持同时下载和运行多个模型,一键切换

1.3 适用场景

  • 个人私密 AI 助手
  • 离线代码编写与调试
  • 敏感文档分析与处理
  • 企业内部私有化 AI 应用
  • 开发者学习与测试大模型

二、核心配置

2.1 系统要求

操作系统 最低版本要求
Windows Windows 10 22H2 及以上
macOS macOS Sonoma (v14) 及以上
Linux Ubuntu 20.04+、CentOS 8 + 等主流发行版

2.2 硬件要求(4-bit 量化模型基准)

模型规模 内存 (RAM) 显存 (VRAM) 存储空间 推荐 GPU 体验描述
1B-3B 4GB 2GB 2-4GB 集成显卡 / RTX 2050 非常流畅,适合简单对话
7B-8B 8GB 4GB 4-6GB RTX 3050/4050 流畅,日常使用首选
14B-16B 16GB 8GB 8-10GB RTX 3060/4060 良好,综合能力强
32B-34B 32GB 16GB 16-20GB RTX 3080/4070 Ti 优秀,接近 GPT-3.5 水平
70B-72B 64GB 24GB 35-40GB RTX 3090/4090 极佳,接近 GPT-4 水平

注意:如果没有独立显卡,Ollama 也可以纯 CPU 运行,但速度会慢很多。建议至少配备 16GB 内存和 SSD 硬盘。

2.3 GPU 支持情况

  • NVIDIA:支持计算能力 5.0 及以上的显卡(GTX 900 系列及以后),驱动版本 531+Ollama
  • AMD:支持 Radeon RX 5000 系列及以后(Windows 和 Linux)
  • Apple Silicon:M1/M2/M3 系列芯片,统一内存架构,内存越大越好

三、基础实操

3.1 安装 Ollama

Windows 系统
  1. 访问 Ollama 官网:https://ollama.com
  2. 点击 "Download for Windows" 下载 MSI 安装包
  3. 双击安装包,一路点击 "Next" 完成安装
  4. 安装完成后,Ollama 会自动在后台运行
  5. 验证安装:按下 Win+R,输入 "cmd" 打开命令提示符,输入:
    ollama --version
    
    如果显示版本号,说明安装成功

快速安装方式(PowerShell 管理员模式):

irm https://ollama.com/install.ps1 | iex
macOS 系统

方法一:Homebrew 安装(推荐)

brew install ollama

方法二:手动安装

  1. 访问官网下载 DMG 文件
  2. 将 Ollama 拖到 Applications 文件夹
  3. 打开终端,输入ollama --version验证安装
Linux 系统
# 一键安装脚本
curl -fsSL https://ollama.com/install.sh | sh

# 验证安装
ollama --version

# 设置开机自启
sudo systemctl enable ollama
sudo systemctl start ollama

# 检查服务状态
sudo systemctl status ollama

3.2 配置优化(可选但推荐)

3.2.1 修改模型存储路径(解决 C 盘空间不足问题)

Windows 系统

  1. 右键点击 "此电脑"→"属性"→"高级系统设置"→"环境变量"
  2. 在 "系统变量" 中点击 "新建"
  3. 变量名:OLLAMA_MODELS
  4. 变量值:你想要存储模型的路径(如D:\Ollama\Models
  5. 点击 "确定" 保存,然后重启电脑

Linux/macOS 系统

# 创建存储目录
sudo mkdir -p /data/ollama/models

# 编辑服务配置
sudo systemctl edit ollama

# 添加以下内容
[Service]
Environment="OLLAMA_MODELS=/data/ollama/models"

# 重启服务
sudo systemctl daemon-reload
sudo systemctl restart ollama
3.2.2 配置国内镜像源(解决下载慢问题)

Windows 系统

  1. 同样在系统环境变量中添加
  2. 变量名:OLLAMA_REGISTRY
  3. 变量值:https://mirror.ollama.ai
  4. 重启电脑

Linux/macOS 系统

sudo mkdir -p /etc/ollama
echo 'export OLLAMA_REGISTRY=https://mirror.ollama.ai' | sudo tee /etc/ollama/env
sudo systemctl restart ollama

3.3 模型管理基础操作

3.3.1 下载模型
# 下载默认版本的模型(通常是最新的4-bit量化版)
ollama pull qwen2.5:7b

# 下载指定版本的模型
ollama pull llama3.1:8b-instruct-q4_K_M
ollama pull deepseek-r1:7b
ollama pull gemma3:4b

推荐初学者模型

  • 中文首选:qwen2.5:7b(阿里云出品,中文能力最强)
  • 综合能力:llama3.1:8b(Meta 出品,全球通用)
  • 推理能力:deepseek-r1:7b(数学和逻辑推理突出)
  • 轻量快速:gemma3:4b(谷歌出品,体积小速度快)
3.3.2 查看本地模型
ollama list

输出会显示模型名称、ID、大小和修改时间

3.3.3 删除模型
ollama rm qwen2.5:7b
3.3.4 查看正在运行的模型
ollama ps
3.3.5 停止运行中的模型
ollama stop qwen2.5:7b

3.4 运行模型并进行对话

# 运行模型(如果模型未下载,会自动下载)
ollama run qwen2.5:7b

运行成功后,你会看到一个提示符>>>,现在就可以开始和 AI 对话了:

>>> 你好,介绍一下你自己
我是由阿里云开发的通义千问2.5模型,我可以帮助你回答问题、撰写文章、编写代码等。

>>> 用Python写一个Hello World程序
print("Hello, World!")

退出对话:输入/bye或按下 Ctrl+D

3.5 命令行常用技巧

  • 按上 / 下箭头可以查看历史命令
  • 输入/help查看所有可用命令
  • 输入/set parameter num_ctx 4096可以增加上下文窗口大小
  • 输入/show info查看当前模型的详细信息
  • 输入/clear清除对话历史

四、高阶用法

4.1 REST API 调用

Ollama 默认在http://localhost:11434提供 OpenAI 兼容的 REST API,方便开发者集成到自己的应用中。

4.1.1 聊天接口(推荐)
curl http://localhost:11434/api/chat -d '{
  "model": "qwen2.5:7b",
  "messages": [
    {
      "role": "system",
      "content": "你是一个有用的助手,用中文回答问题"
    },
    {
      "role": "user",
      "content": "中国的首都是哪里?"
    }
  ],
  "stream": false
}'
4.1.2 生成接口
curl http://localhost:11434/api/generate -d '{
  "model": "qwen2.5:7b",
  "prompt": "写一首关于春天的诗",
  "stream": false
}'
4.1.3 Python SDK 调用
# 安装SDK
pip install ollama

# 简单聊天
import ollama

response = ollama.chat(
    model="qwen2.5:7b",
    messages=[
        {"role": "user", "content": "解释什么是机器学习"}
    ]
)

print(response['message']['content'])

# 流式响应
stream = ollama.chat(
    model="qwen2.5:7b",
    messages=[{"role": "user", "content": "写一个长篇故事"}],
    stream=True
)

for chunk in stream:
    print(chunk['message']['content'], end='', flush=True)

4.2 自定义模型(Modelfile)

通过 Modelfile,你可以创建自己的定制化模型,设置系统提示词、调整参数等。

4.2.1 创建一个简单的自定义模型
  1. 创建一个名为Modelfile的文件(无扩展名)
  2. 写入以下内容:
    FROM qwen2.5:7b
    
    # 设置系统提示词
    SYSTEM """
    你是一个专业的Python编程助手,具有以下特点:
    1. 回答简洁明了,重点突出
    2. 提供完整可运行的代码示例
    3. 解释代码的关键部分
    4. 如果有多种解决方案,都列出来并说明优缺点
    """
    
    # 设置模型参数
    PARAMETER temperature 0.3  # 越低越严谨,越高越有创意
    PARAMETER num_ctx 4096    # 上下文窗口大小
    PARAMETER num_predict 1000  # 最大生成长度
    
  3. 创建自定义模型:
    ollama create python-assistant -f Modelfile
    
  4. 运行自定义模型:
    ollama run python-assistant
    
4.2.2 查看现有模型的 Modelfile
ollama show --modelfile qwen2.5:7b

4.3 多模态模型(图片分析)

Ollama 支持运行多模态模型,可以分析图片内容。

# 下载多模态模型
ollama pull llava:7b

# 运行并分析图片
ollama run llava:7b "这张图片里有什么?" /path/to/your/image.jpg

Python 调用多模态模型

import ollama

response = ollama.chat(
    model="llava:7b",
    messages=[
        {
            "role": "user",
            "content": "描述这张图片的内容",
            "images": ["/path/to/your/image.jpg"]
        }
    ]
)

print(response['message']['content'])

4.4 性能优化技巧

4.4.1 选择合适的量化级别
量化级别 显存占用 (7B 模型) 推理速度 精度损失 适用场景
q2_K ~2.5GB +150% ~5% 低配电脑,追求速度
q4_K_M ~4GB +120% <2% 性价比首选,日常使用
q5_K_M ~5GB +80% <1% 对精度要求较高
q8_0 ~7GB +50% 几乎无 追求最高精度

使用方法

ollama pull qwen2.5:7b-q4_K_M
ollama run qwen2.5:7b-q4_K_M
4.4.2 调整 GPU 使用
# 指定使用特定GPU
CUDA_VISIBLE_DEVICES=0 ollama run qwen2.5:7b

# 禁用GPU,纯CPU运行
OLLAMA_NUM_GPU=0 ollama run qwen2.5:7b

# 限制GPU显存使用
OLLAMA_MAX_VRAM=8G ollama run qwen2.5:14b
4.4.3 增加上下文窗口
# 临时设置
ollama run qwen2.5:7b
/set parameter num_ctx 8192

# 永久设置(通过Modelfile)
FROM qwen2.5:7b
PARAMETER num_ctx 8192

4.5 配置外部访问

默认情况下,Ollama 只允许本地访问。如果你想让其他设备也能访问你的 Ollama 服务:

Linux 系统

sudo systemctl edit ollama

# 添加以下内容
[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"
Environment="OLLAMA_ORIGINS=*"

# 重启服务
sudo systemctl daemon-reload
sudo systemctl restart ollama

Windows 系统

  1. 打开系统环境变量
  2. 添加变量:OLLAMA_HOST=0.0.0.0:11434
  3. 添加变量:OLLAMA_ORIGINS=*
  4. 重启电脑

注意OLLAMA_ORIGINS=*允许所有来源访问,生产环境请设置为具体的域名或 IP 地址。

五、拓展建议

5.1 推荐生态工具

5.1.1 Open WebUI(图形化界面)

Open WebUI 是一个功能强大的 Web 界面,支持聊天、文档上传、模型管理等功能,界面类似 ChatGPT。

Docker 一键部署

docker run -d -p 3000:3000 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

然后访问http://localhost:3000即可使用,它会自动检测本地的 Ollama 服务。

5.1.2 Dify(LLMOps 平台)

Dify 是一个开源的 LLMOps 平台,支持可视化构建 AI 应用、RAG 知识库、工作流等。

Docker Compose 部署

git clone https://github.com/langgenius/dify.git
cd dify/docker
docker compose up -d

访问http://localhost:8080,在设置中添加 Ollama 作为模型供应商,Base URL 填写http://host.docker.internal:11434

5.1.3 LangChain(应用开发框架)

LangChain 是一个用于构建 LLM 应用的框架,支持 RAG、Agent、工具调用等高级功能。

简单 RAG 示例

from langchain_community.document_loaders import TextLoader
from langchain_text_splitters import RecursiveCharacterTextSplitter
from langchain_community.embeddings import OllamaEmbeddings
from langchain_community.vectorstores import Chroma
from langchain_community.llms import Ollama
from langchain.chains import RetrievalQA

# 加载文档
loader = TextLoader("your_document.txt", encoding="utf-8")
documents = loader.load()

# 文本分割
text_splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=50)
texts = text_splitter.split_documents(documents)

# 创建向量数据库
embeddings = OllamaEmbeddings(model="qwen2.5:7b")
db = Chroma.from_documents(texts, embeddings)

# 创建问答链
llm = Ollama(model="qwen2.5:7b")
qa_chain = RetrievalQA.from_chain_type(llm, retriever=db.as_retriever())

# 提问
result = qa_chain.run("文档中提到了什么内容?")
print(result)

5.2 学习路径建议

初学者阶段(1-2 周)

  1. 完成 Ollama 的安装和基础配置
  2. 下载并运行几个主流模型,体验不同模型的特点
  3. 掌握基本的模型管理命令
  4. 学会使用命令行进行对话

进阶阶段(2-4 周)

  1. 学习使用 REST API 和 Python SDK
  2. 创建自己的自定义模型(Modelfile)
  3. 尝试多模态模型进行图片分析
  4. 了解量化技术和性能优化方法

高级阶段(1-2 个月)

  1. 学习使用 LangChain 构建 RAG 应用
  2. 部署 Open WebUI 或 Dify 作为前端界面
  3. 尝试微调自己的模型
  4. 探索 Agent 和工具调用功能

5.3 常见问题与解决方法

问题 1:模型下载失败或速度极慢
  • 解决方案 1:配置国内镜像源(见 3.2.2 节)
  • 解决方案 2:使用代理
  • 解决方案 3:手动下载 GGUF 模型文件,然后通过 Modelfile 导入:
    FROM ./your-model.gguf
    
    ollama create my-model -f Modelfile
    
问题 2:显存不足,模型无法运行
  • 解决方案 1:使用更低量化级别的模型(如 q4_K_M 或 q2_K)
  • 解决方案 2:使用更小参数量的模型
  • 解决方案 3:增加系统内存,Ollama 会自动使用内存作为显存的补充
  • 解决方案 4:关闭其他占用显存的程序
问题 3:GPU 加速失效
  • 解决方案 1:确保已安装最新的 NVIDIA 驱动
  • 解决方案 2:运行nvidia-smi检查 GPU 是否被识别
  • 解决方案 3:重启 Ollama 服务
  • 解决方案 4:在 Windows 上,确保 Ollama 服务使用的是独立显卡而不是集成显卡
问题 4:端口 11434 被占用
  • 解决方案 1:查找并关闭占用端口的进程:
    # Windows
    netstat -ano | findstr :11434
    taskkill /PID <进程ID> /F
    
    # Linux/macOS
    lsof -i :11434
    kill -9 <进程ID>
    
  • 解决方案 2:修改 Ollama 使用的端口:
    OLLAMA_HOST=0.0.0.0:11435 ollama serve
    

5.4 安全注意事项

  1. 不要在公共网络上开放 Ollama 服务,除非你已经配置了适当的身份验证
  2. 不要将敏感数据发送给未经验证的第三方模型
  3. 定期更新 Ollama 到最新版本,以获取安全补丁和性能改进
  4. 注意模型的许可证,有些模型禁止商业使用

总结

Ollama 极大地降低了本地大模型部署的门槛,让每个人都能拥有自己的私人 AI 助手。通过本指南,你已经掌握了 Ollama 的安装、配置、基础使用和高级技巧。接下来,你可以根据自己的需求,探索更多有趣的应用场景,比如构建个人知识库、开发 AI 应用、或者深入学习大模型技术。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐