目录

Ollama 环境变量教程:配置 OLLAMA_HOST、模型路径和上下文长度

Ollama 服务的行为由环境变量控制。本节整理了最常用的配置,以及在各操作系统上的设置方法。

常用环境变量

变量作用默认值
OLLAMA_HOST服务监听的地址和端口127.0.0.1:11434
OLLAMA_MODELS模型存储目录见下方
OLLAMA_CONTEXT_LENGTH默认上下文长度(token)4096
OLLAMA_KEEP_ALIVE模型闲置多久后从内存中卸载5m
OLLAMA_NUM_PARALLEL每个模型同时处理的请求数1
OLLAMA_MAX_LOADED_MODELS同时加载的模型数量上限每张 GPU 3 个
OLLAMA_MAX_QUEUE排队请求上限,超出后返回 503512
OLLAMA_ORIGINS允许跨源(CORS)请求的域名本机
OLLAMA_FLASH_ATTENTION强制开启(1)或关闭(0)Flash Attention自动
OLLAMA_KV_CACHE_TYPE上下文缓存的量化类型:f16、q8_0、q4_0f16
OLLAMA_NO_CLOUD禁用云端功能(云端模型、网络搜索)关闭

运行 ollama serve --help 可以查看完整列表。默认值可能随版本调整,请以你安装的版本为准。

如何设置

Windows

  1. 先通过系统托盘图标退出 Ollama。
  2. 在开始菜单中搜索“编辑帐户的环境变量”。
  3. 新增或修改变量,例如名称为 OLLAMA_HOST,值为 0.0.0.0:11434。
  4. 点击“确定”后,从开始菜单重新启动 Ollama。

macOS(应用程序版)

launchctl setenv OLLAMA_HOST "0.0.0.0:11434"
launchctl setenv OLLAMA_CONTEXT_LENGTH "8192"

设置后重新启动 Ollama 应用程序。launchctl setenv 在重新启动电脑后会失效;如需长期生效,可以将其写入登录时运行的脚本。

Linux(systemd)

sudo systemctl edit ollama.service

在打开的编辑器中添加:

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

保存后应用更改:

sudo systemctl daemon-reload
sudo systemctl restart ollama

手动运行时

OLLAMA_HOST=0.0.0.0:11434 ollama serve

让局域网中的其他电脑连接

默认只监听 127.0.0.1,只有本机可以连接。要让同一网络中的其他电脑(或手机、NAS)使用:

  1. 将 OLLAMA_HOST 设置为 0.0.0.0:11434,然后重新启动 Ollama。

  2. 确认防火墙允许 11434 端口通过。

  3. 在其他电脑上测试:

    curl http://你的电脑IP:11434

Ollama 的 API 没有账号密码验证。千万不要直接将 11434 暴露到互联网,否则任何人都能使用你的 GPU,甚至删除你的模型。需要从外部访问时,请通过 VPN(例如 Tailscale),或在前面加上带验证功能的反向代理。

更改模型存储位置

模型通常有数 GB 到数十 GB 大小。默认位置:

系统位置
WindowsC:\Users\用户名\.ollama\models
macOS~/.ollama/models
Linux/usr/share/ollama/.ollama/models

想将模型存放到其他硬盘,可以设置 OLLAMA_MODELS,例如在 Windows 上将其设为 D:\ollama\models。在 Linux 上,要确认 ollama 用户对新目录有读写权限:

sudo mkdir -p /data/ollama/models
sudo chown -R ollama:ollama /data/ollama

已下载的模型可以直接将整个 models 目录移过去,无需重新下载。

上下文长度

上下文长度(context length)是模型一次能处理的 token 数量,包括你的输入、对话历史和模型的回答。中文大约每个字相当于 1~2 个 token。

如果你让模型总结一份长文档,却发现它只看了后半部分,通常是因为上下文长度不足,前面的内容被截断了。

调整方式(任选一种):

  • 全局:OLLAMA_CONTEXT_LENGTH=16384
  • 单个模型:在 Modelfile 中设置 PARAMETER num_ctx 16384
  • 单次请求:在 API 中设置 "options": {"num_ctx": 16384}

上下文越长,占用的内存越多。可以运行 ollama ps 确认模型是否还能完整放入 GPU。

模型驻留时间

每次加载模型都需要时间(大型模型可能需要十几秒)。

OLLAMA_KEEP_ALIVE=30m     # 闲置 30 分钟后才卸载
OLLAMA_KEEP_ALIVE=-1      # 永不卸载
OLLAMA_KEEP_ALIVE=0       # 用完后立即卸载

API 请求中的 keep_alive 参数会覆盖此设置。

同时为多个用户提供服务

将 Ollama 用作团队共享服务时:

OLLAMA_NUM_PARALLEL=4
OLLAMA_MAX_LOADED_MODELS=2

注意:平行请求数会使上下文的内存用量成倍增加(约为 NUM_PARALLEL × CONTEXT_LENGTH),因此显卡内存需要足够大。

让网页直接调用 Ollama(CORS)

从浏览器扩展或其他域名的网页直接调用 Ollama 时,需要允许相应来源:

OLLAMA_ORIGINS="https://my-app.example.com,chrome-extension://*"

更新于 2026年10月12日