Ollama 常见问题

2026-10-29 18:47 更新

这一篇把官方 FAQ 的高频问题按场景归了个类:安装升级、服务器配置、性能与显存、网络访问、存储与隐私。遇到问题先在这里定位,再跳对应专题页深挖。

版本基线 v0.40.12,官方 docs.ollama.com/faq。

一、安装与升级

macOS / Windows 怎么升级?

应用会自动下载更新。点击任务栏或菜单栏的 Ollama 图标,选「Restart to update」应用更新。也可以手动下载最新版覆盖安装。

Linux 怎么升级?

重新执行安装脚本即可,会覆盖旧二进制并保留模型:

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

怎么关掉开机自启?

Windows 和 macOS 装完会注册为登录启动项,升级不会改变这个设置。

  • Windows:任务管理器 → 「启动应用」→ 找到 ollama → 禁用
  • macOS:系统设置搜索「登录项」,在「允许在后台」里找到 Ollama,关掉开关

二、服务器配置:环境变量怎么设

Ollama 服务端的全部配置都通过环境变量实现,但三个平台的设置方式完全不同,这是最容易踩坑的地方。

macOS(App 方式运行)

必须用 launchctl 设置,写在 .zshrc 里对 GUI 应用无效:

launchctl setenv OLLAMA_HOST "0.0.0.0:11434"

设完要重启 Ollama 应用才生效。

Linux(systemd 服务方式)

用 systemctl edit 编辑服务单元,不要直接改 /etc/systemd/system/ollama.service(升级会被覆盖):

systemctl edit ollama.service

在 [Service] 段下加 Environment 行:

[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"

保存后重载并重启:

systemctl daemon-reload
systemctl restart ollama

Windows

Ollama 继承用户和系统环境变量:先从任务栏退出 Ollama → 设置里搜索「环境变量」→「编辑账户的环境变量」→ 新建 OLLAMA_HOST、OLLAMA_MODELS 等 → 确定后重新从开始菜单启动。

常用变量速查

变量 作用 默认
OLLAMA_HOST 监听地址 127.0.0.1:11434
OLLAMA_MODELS 模型存储目录 见下文「模型存在哪」
OLLAMA_KEEP_ALIVE 模型驻留时长 5m
OLLAMA_CONTEXT_LENGTH 默认上下文长度 4096
OLLAMA_ORIGINS 允许跨域的来源 仅 127.0.0.1、0.0.0.0
OLLAMA_FLASH_ATTENTION 强制开关 Flash Attention 自动判断
OLLAMA_DEBUG 打开调试日志 关
OLLAMA_NO_CLOUD 关闭云端功能 关

完整的变量清单与各平台设置方式见 4.1 Ollama CLI 参考。

三、上下文与性能

上下文窗口默认多大,怎么改?

默认 4096 tokens。三种改法,优先级从低到高:

## ① 全局默认:启动服务时指定
OLLAMA_CONTEXT_LENGTH=8192 ollama serve

## ② 交互式会话中临时改
/set parameter num_ctx 4096

## ③ 单次 API 请求指定
curl http://localhost:11434/api/generate -d '{
  "model": "llama3.2",
  "prompt": "Why is the sky blue?",
  "options": { "num_ctx": 4096 }
}'

需要注意显存是按上下文长度分配的,调大 num_ctx 会显著吃显存。各显存档位的默认值见 6.1 Ollama 上下文长度。

怎么确认模型真的跑在 GPU 上?

用 ollama ps 看 PROCESSOR 列:

ollama ps

NAME        ID            SIZE    PROCESSOR   UNTIL
llama3:70b  bcfb190ca3a7  42 GB   100% GPU    4 minutes from now

  • 100% GPU:全部在显存
  • 100% CPU:全在内存,速度会慢一个数量级
  • 48%/52% CPU/GPU:模型太大被拆分,两边各放一部分

看到 100% CPU 但你有显卡,先查 10.1 Ollama 硬件支持 里的算力和驱动要求。

怎么让模型常驻内存,或立刻卸载?

默认 5 分钟无请求后卸载。三种控制方式:

## 立即卸载
ollama stop llama3.2

## API:常驻(-1 表示永不卸载)
curl http://localhost:11434/api/generate -d '{"model": "llama3.2", "keep_alive": -1}'

## API:用完立刻释放显存
curl http://localhost:11434/api/generate -d '{"model": "llama3.2", "keep_alive": 0}'

keep_alive 支持时长字符串(10m、24h)、秒数(3600)、负数(常驻)、0(立即卸载)。全局默认用 OLLAMA_KEEP_ALIVE,请求级参数会覆盖它。

怎么预加载模型,减少首次等待?

发一个空请求即可,/api/generate 和 /api/chat 都支持:

curl http://localhost:11434/api/generate -d '{"model": "mistral"}'

CLI 方式是:

ollama run llama3.2 ""

怎么开 Flash Attention?

Ollama 在所选后端支持时会自动启用 Flash Attention。要强制打开:

OLLAMA_FLASH_ATTENTION=1 ollama serve

关掉则设 OLLAMA_FLASH_ATTENTION=0。它能显著降低长上下文下的显存占用,建议保持开启。

并发请求太多怎么办?

超出队列上限时服务端直接返回 503(服务器过载)。可调 OLLAMA_MAX_QUEUE 控制排队数量;同时能加载几个模型由 OLLAMA_MAX_LOADED_MODELS 控制。

四、网络访问

怎么让局域网其他机器访问?

默认只绑 127.0.0.1:11434,外部访问不到。改 OLLAMA_HOST:

OLLAMA_HOST=0.0.0.0:11434 ollama serve

⚠️ 这会暴露到整个网络,Ollama 自身没有鉴权机制,请只在内网使用,或前置 Nginx 加认证。

浏览器前端调不通,报 CORS 错误?

默认只允许 127.0.0.1 和 0.0.0.0 两个来源。其他来源需显式加进 OLLAMA_ORIGINS:

## 放行所有 Chrome / Firefox / Safari 扩展
OLLAMA_ORIGINS=chrome-extension://*,moz-extension://*,safari-web-extension://* ollama serve

浏览器扩展必须显式列出其 origin 模式,只写域名不够。

怎么用 Nginx 反代?

server {
    listen 80;
    server_name example.com;
    location / {
        proxy_pass http://localhost:11434;
        proxy_set_header Host localhost:11434;
    }
}

proxy_set_header Host 这行不能少,Ollama 会校验 Host 头。

怎么用内网穿透?

## ngrok
ngrok http 11434 --host-header="localhost:11434"

## Cloudflare Tunnel
cloudflared tunnel --url http://localhost:11434 --http-host-header="localhost:11434"

同样都必须带上 host header 参数。

在公司代理后面怎么拉模型?

用 HTTPS_PROXY,并把代理证书装成系统证书:

HTTPS_PROXY=https://proxy.example.com ollama serve

不要设 HTTP_PROXY。Ollama 拉模型只走 HTTPS,设了 HTTP 代理反而会干扰客户端到服务端的连接。

Docker 里则需要把自签证书打进去:

FROM ollama/ollama
COPY my-ca.pem /usr/local/share/ca-certificates/my-ca.crt
RUN update-ca-certificates

五、存储与模型管理

模型存在哪?

系统 路径
macOS ~/.ollama/models
Linux /usr/share/ollama/.ollama/models
Windows C:\Users\<用户名>\.ollama\models

改位置设 OLLAMA_MODELS。Linux 用官方安装脚本时,还要把新目录权限给 ollama 用户:

sudo chown -R ollama:ollama <新目录>

Ollama 公钥在哪?

公钥用于推模型、拉私有模型、跑云端模型。

系统 id_ed25519.pub 路径
macOS ~/.ollama/id_ed25519.pub
Linux /usr/share/ollama/.ollama/id_ed25519.pub
Windows C:\Users\<用户名>\.ollama\id_ed25519.pub

登录方式三选一:App 设置页登录、CLI 执行 ollama signin、到 ollama.com/settings/keys 手动粘贴。

六、隐私边界

这是最需要说清楚的一条:

  • 本地模型:Ollama 完全在本机运行,官方看不到你的提示词和输出。
  • 云端模型:提示词和响应会被处理以提供服务,但不存储、不记录、不用于训练。官方只收集账号信息和有限的用量元数据,不含内容。
  • 数据不出售,账号可随时删除。

想彻底断掉云端?

在 ~/.ollama/server.json 里写入:

{
  "disable_ollama_cloud": true
}

或设环境变量:

OLLAMA_NO_CLOUD=1

改完重启,日志会出现 Ollama cloud disabled: true。代价是云端模型和网络搜索都不可用——纯本地部署场景建议直接关掉。

七、其他零散问题

WSL2 里下载模型特别慢?

这是 Windows 10 上 vEthernet (WSL) 网卡的 Large Send Offload 问题。打开「控制面板 → 网络和 Internet → 网络连接」→ 右键 vEthernet (WSL) → 属性 → 配置 → 高级,把 Large Send Offload Version 2 (IPv4) 和 (IPv6) 都禁用。

Docker 里能用 GPU 吗?

Linux 和 Windows(WSL2)可以,需要 nvidia-container-toolkit。macOS 上的 Docker Desktop 不行——没有 GPU 直通。

在 VS Code 里怎么用?

装 Ollama 扩展,即可在 VS Code Chat 里选择本地模型。这是官方集成清单里最常用的一个,配置步骤和故障处理见本教程第 12 章「Ollama 集成」的 VS Code 篇。

日志在哪看?

各平台日志路径、调试日志开启方式、GPU 发现失败排查,都在 11.1 Ollama 故障排查 里。

动手试

想快速验证自己的环境配置是否正确,跑这三条:

## ① 当前加载了什么、跑在哪
ollama ps

## ② 服务监听在哪个地址
curl -s http://localhost:11434/api/version

## ③ 本地有哪些模型
ollama list

三条都能正常返回,说明服务、网络、存储都通了,剩下的问题基本都在模型或显存层面。

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号