常见问题解答¶
如何升级 Ollama?¶
在 macOS 和 Windows 上,Ollama 会自动下载更新。点击任务栏或菜单栏项目,然后点击“重新启动以更新”来应用更新。还可以通过手动下载最新版本来安装更新。
在 Linux 上,重新运行安装脚本:
如何查看日志?¶
查看故障排除文档了解更多关于使用日志的信息。
我的 GPU 与 Ollama 兼容吗?¶
请参考 GPU 文档。
如何指定上下文窗口大小?¶
默认情况下,Ollama 使用 2048 个令牌的上下文窗口大小。
在使用 ollama run
时,使用 /set parameter
来更改:
在使用 API 时,指定 num_ctx
参数:
curl http://localhost:11434/api/generate -d '{
"model": "llama2",
"prompt": "Why is the sky blue?",
"options": {
"num_ctx": 4096
}
}'
如何配置 Ollama 服务器?¶
Ollama 服务器可以通过环境变量进行配置。
在 Mac 上设置环境变量¶
如果 Ollama 作为 macOS 应用程序运行,应该使用 launchctl
设置环境变量:
1. 对每个环境变量调用 launchctl setenv
。
2. 重启 Ollama 应用程序。
在 Linux 上设置环境变量¶
如果 Ollama 作为 systemd 服务运行,应该使用 systemctl
设置环境变量:
1. 调用 systemctl edit ollama.service
编辑 systemd 服务。这将打开一个编辑器。
2. 在 [Service]
部分下为每个环境变量添加一行 Environment
:
```ini
[Service]
Environment="OLLAMA_HOST=0.0.0.0"
```
3. 保存并退出。
4. 重载 systemd
并重启 Ollama:
在 Windows 上设置环境变量¶
在 Windows 上,Ollama 继承您的用户和系统环境变量。
-
首先通过点击任务栏上的 Ollama 退出 Ollama
-
从控制面板编辑系统环境变量
-
为您的用户账户编辑或创建新的变量,例如
OLLAMA_HOST
,OLLAMA_MODELS
等。 -
点击确定/应用以保存
-
在新的终端窗口中运行
ollama
如何在我的网络上暴露 Ollama?¶
Ollama 默认绑定 127.0.0.1 端口 11434。使用 OLLAMA_HOST
环境变量更改绑定地址。
参考上面的部分如何配置 Ollama 服务器了解如何在您的平台上设置环境变量。
如何在代理服务器下使用 Ollama?¶
Ollama 运行一个 HTTP 服务器,可以使用代理服务器如 Nginx 暴露。为此,请配置代理以转发请求,并可选设置所需的头部(如果不在网络上暴露 Ollama)。例如,使用 Nginx:
server {
listen 80;
server_name example.com; # Replace with your domain or IP
location / {
proxy_pass http://localhost:11434;
proxy_set_header Host localhost:11434;
}
}
如何使用 ngrok 与 Ollama 一起使用?¶
Ollama 可以使用一系列隧道工具访问。例如使用 Ngrok:
如何使用 Cloudflare Tunnel 与 Ollama 一起使用?¶
要使用 Cloudflare Tunnel 与 Ollama 一起使用,请使用 --url
和 --http-host-header
标志:
如何允许额外的 web 来源访问 Ollama?¶
Ollama 默认允许来自 127.0.0.1
和 0.0.0.0
的跨源请求。可以使用 OLLAMA_ORIGINS
配置额外的来源。
参考上面的部分如何配置 Ollama 服务器了解如何在您的平台上设置环境变量。
模型存储在哪里?¶
- macOS:
~/.ollama/models
- Linux:
/usr/share/ollama/.ollama/models
- Windows:
C:\Users\<username>\.ollama\models
如何将它们设置到不同的位置?¶
如果需要使用不同的目录,请将环境变量 OLLAMA_MODELS
设置为选定的目录。
参考上面的部分如何配置 Ollama 服务器了解如何在您的平台上设置环境变量。
Ollama 是否将我的提示和答案发送回 ollama.com?¶
不。Ollama 本地运行,对话数据不会离开您的机器。
如何在 Visual Studio Code 中使用 Ollama?¶
已经有很多适用于 VSCode 以及其他编辑器的插件可以利用 Ollama。查看主存储库 readme 底部的扩展和插件列表。
如何在代理后面使用 Ollama?¶
如果配置了 HTTP_PROXY
或 HTTPS_PROXY
,Ollama 与代理服务器兼容。使用这些变量时,确保在 ollama serve
可以访问值的位置设置它们。使用 HTTPS_PROXY
时,请确保代理证书作为系统证书安装。参考上面的部分了解如何在您的平台上使用环境变量。
如何在 Docker 中代理后面使用 Ollama?¶
Ollama Docker 容器映像可以配置为使用代理,启动容器时传递 -e HTTPS_PROXY=https://proxy.example.com
。
或者,可以配置 Docker 守护进程使用代理。在 macOS,Windows 和 Linux 的 Docker Desktop 以及使用 systemd 的 Docker daemon 上都有说明。
使用 HTTPS 时,请确保证书安装为系统证书。这可能需要在使用自签名证书时创建一个新的 Docker 映像。
FROM ollama/ollama
COPY my-ca.pem /usr/local/share/ca-certificates/my-ca.crt
RUN update-ca-certificates
构建并运行此映像:
docker build -t ollama-with-ca .
docker run -d -e HTTPS_PROXY=https://my.proxy.example.com -p 11434:11434 ollama-with-ca
如何在 Docker 中使用 GPU 加速的 Ollama?¶
在 Linux 或 Windows(带有 WSL2)上,Ollama Docker 容器可以配置 GPU 加速。这需要 nvidia-container-toolkit。更多详情见 ollama/ollama。
由于缺乏 GPU 通道和仿真,Docker Desktop 在 macOS 上不提供 GPU 加速。
为什么在 Windows 10 的 WSL2 上网络缓慢?¶
这可能影响 Ollama 的安装以及模型的下载。
打开 Control Panel > Networking and Internet > View network status and tasks
,点击左侧面板上的 Change adapter settings
。找到 vEthernet (WSL)
适配器,右键单击并选择 Properties
。点击 Configure
并打开 Advanced
标签。浏览每个属性,直到找到 Large Send Offload Version 2 (IPv4)
和 Large Send Offload Version 2 (IPv6)
。禁用 这些属性。
如何预加载模型以获得更快的响应时间?¶
如果您使用 API,可以通过向 Ollama 服务器发送空请求来预加载模型。这适用于 /api/generate
和 /api/chat
API 端点。
要使用 generate 端点预加载 mistral 模型,使用:
要使用 chat completions 端点,使用:
如何保持模型在内存中加载或立即卸载?¶
默认情况下,模型在内存中保持 5 分钟后会被卸载。如果您频繁地向 LLM 发送请求,这将允许更快的响应时间。然而,您可能希望在 5 分钟过去之前释放内存或无限期保持模型加载。使用 /api/generate
和 /api/chat
API 端点的 keep_alive
参数来控制模型留在内存中的时间。
keep_alive
参数可以设置为:
* 一个持续时间字符串(如 "10m" 或 "24h")
* 以秒为单位的数字(如 3600)
* 任何负数,这将使模型一直保持在内存中(例如 -1 或 "-1m")
* '0',这将在生成响应后立即卸载模型
例如,要预加载模型并保留在内存中使用:
要卸载模型并释放内存使用: