Ollama

出自 ArchWiki

Ollama 是一个应用程序,允许您在本地离线运行大型语言模型。

安装

接下来,启用/启动 ollama.service。然后,验证 Ollama 的状态

$ ollama --version

如果显示 Warning: could not connect to a running Ollama instance,则 Ollama 服务尚未运行;否则,Ollama 服务正在运行并已准备好接受用户请求。

接下来,验证您是否可以运行模型。以下命令下载最新的 Distilled DeepSeek-R1 模型,并返回一个 Ollama 提示符,允许您与模型对话

$ ollama run deepseek-r1:1.5b
>>> Send a message (/? for help)

用法

Ollama 可执行文件不提供搜索界面。没有 ollama search 这样的命令。要搜索模型,您需要访问他们的搜索页面

要运行模型

$ ollama run model

要停止模型

$ ollama stop model

要更新模型

$ ollama pull model

要移除模型

$ ollama rm model

故障排除

ROCm 没有利用我的 AMD 集成 GPU

您可能使用了像 amdgpu_top 这样的实用程序来监控 Ollama 会话期间集成 GPU 的利用率,但却注意到您的集成 GPU 根本没有被使用。

这是预期的:在没有配置的情况下,ROCm 只是忽略您的集成 GPU,导致所有内容都在 CPU 上计算。

然而,所需的配置非常简单,因为您只需要为 ollama.service 创建一个 drop-in 文件

/etc/systemd/system/ollama.service.d/override_gfx_version.conf
[Service]
Environment="HSA_OVERRIDE_GFX_VERSION=X.Y.Z"

其中 X.Y.Z 取决于系统随附的 GFX 版本。

要确定要使用的 GFX 版本,首先请确保已安装 rocminfo。它应该作为 rocblas 的依赖项拉入您的系统,而 rocblas 本身又是 ollama-rocm 的依赖项。

接下来,查询您系统的实际 GFX 版本

$ /opt/rocm/bin/rocminfo | grep amdhsa

您需要记住单词 gfx 后打印的数字,因为这是您系统的实际 GFX 版本。数字的解释如下

  • 如果数字是 4 位数字,则它们被解释为 XX.Y.Z,其中前两位数字被解释为 X 部分。
  • 如果数字是 3 位数字,则它们被解释为 X.Y.Z

然后,找到所有已安装的 rocblas 内核

$ find /opt/rocm/lib/rocblas/library -name 'Kernels.so-*'

您需要将 X.Y.Z 设置为那里列出的可用版本之一。规则总结如下

  1. 对于 X 部分,它必须与实际版本完全相等。
  2. 对于 Y 部分,允许不匹配,但它必须不大于实际版本。
  3. 对于 Z 部分,允许不匹配,但它必须不大于实际版本。

设置正确的 X.Y.Z 后,执行 daemon-reloadrestart ollama.service

然后,像往常一样运行您的模型。您可能希望再次使用 amdgpu_top 监控 GPU 利用率。

参见