Ollama 可以讓用戶在離線情況下,使用本地版大語言模型。
安裝並運行第一個大模型
- 使用 CPU 運行模型:
- 聯合顯卡運行模型:
- 使用 NVIDIA 顯卡,安裝 ollama-cuda包
- 使用 AMD 顯卡, 安裝 ollama-rocm包
完成上述安裝後,啟用/啟動 ollama.service
。然後驗證 Ollama 是否成功啟動:
$ ollama --version
如果輸出提示 Warning: could not connect to a running Ollama instance
,則 Ollama 服務沒有成功啟動;否則, Ollama 服務啟動成功並且進入 Ollama 程序的命令行界面,等待用戶輸入命令。
然後,運行第一個本地離線大模型。下面的例子將會下載並運行最新的 DeepSeek-R1 蒸餾模型 1.5b 參數版。出現 Send a message (/? for help)
即可輸入文字,向大模型提問。
$ ollama run deepseek-r1:1.5b
>>> Send a message (/? for help)
常用命令
Ollama 命令行工具沒有類似 ollama search
的命令用來搜索具體的模型,需要查詢 Ollama 是否支持某個模型,請使用 Ollama 官網的搜索功能。
運行模型:
$ ollama run 模型名称
停止模型:
$ ollama stop 模型名称
更新模型:
$ ollama pull 模型名称
刪除模型:
$ ollama rm 模型名称
可能出現的問題
當使用 AMD 的集成顯卡, ROCm 程序沒有成功調用顯卡
在運行 Ollama 會話,並通過類似 amdgpu_top包 去監控集成顯卡時,發現集成顯卡根本沒有被使用,為了解決這個問題,我們需要一些額外的配置。
配置很簡單,你只需要針對 ollama.service
創建一個附加配置片段,文件內容如下:
/etc/systemd/system/ollama.service.d/override_gfx_version.conf
[Service] Environment="HSA_OVERRIDE_GFX_VERSION=A.B.C"
其中X.Y.Z版本號使用當前系統中系統已安裝的 rocblas包 核心版本,具體選擇哪個 rocblas包 核心版本需要通過GFX版本判斷。
第一步,我們需要安裝和使用 rocminfo包 來查詢當前系統準確的GFX版本。在安裝 ollama-rocm包 時, rocminfo包 會被作為間接依賴一同安裝( ollama-rocm包 依賴 rocblas包 , rocblas包 依賴 rocminfo包 )。
$ /opt/rocm/bin/rocminfo | grep amdhsa
- 如果顯示
gfx
後的數字為4位數,前兩個數字作為X
,後兩個數字分別為YZ
。 - 如果顯示
gfx
後的數字為3位數,三位數字分別是XYZ
。
第二步,查詢已安裝的 rocblas包 核心版本。我們需要選取某個 rocblas包 核心的版本號本來配置附加配置片段,其中版本 A==X, B<=Y, C<=Z
,即 A.B.C
為 X.*<=Y.*<=Z
。
$ find /opt/rocm/lib/rocblas/library -name 'Kernels.so-*'
例如,GFX 版本號為 11.2.9
, 則選取 rocblas包 核心版本 11.*<=2.*<=9
(例如 11.0.2
)。
附加配置片段修改為:
/etc/systemd/system/ollama.service.d/override_gfx_version.conf
[Service] Environment="HSA_OVERRIDE_GFX_VERSION=11.0.2"
最後,我們執行 daemon-reload 並重啟 ollama.service
來重新加載守護進程,使得配置生效。
現在,你可以重新運行 Ollama 會話,並通過類似 amdgpu_top包 去監控集成顯卡的使用情況。