1、安裝wsl2
具體過程網上一搜一把,這裡就先略過了,只有wsl2能用哈
2、wsl裡裝docker,及相關配置
裝docker
裝完後有個小問題,wsl裡的systemctl沒法用,所以要編輯 /etc/wsl.conf 檔案,新增:
wsl --shutdown 停止後再啟動。
然後是某些眾所周知的原因國內沒法用dockerhub比較煩,這裡推薦 這個教程 來解決。
3、給wsl裝上 NVIDIA Container Toolkit,並讓wsl能識別顯示卡
只用CPU來跑ollama的話可以跳過這一步,不過CPU真的太慢了。
裝 NVIDIA Container Toolkit:
然後 nvidia-smi 看一下(提示沒nvidia-smi命令的話 apt-get install裝一下),這時候極大可能看到的列表為空。
查閱n卡官網的說明我們得知,還需要去 https://www.nvidia.com/Download/index.aspx 這個地址下載對應你顯示卡版本的GeForce Game Ready 驅動程式安裝在windows上。
下載安裝,重啟電腦,再敲nvidia-smi命令,看到如下資訊就是wsl識別到顯示卡了:
4、docker裡跑ollama
執行如下命令啟動ollama,只用GPU的話把--gpus=all這個去掉就行:
如下命令拉取想要的模型
然後執行如下命令就可以對話了
或者調web介面:
可以看到GPU用起來了:
雖然筆者的GPU是老掉牙的MX150,但效能明顯比CPU模式要好很多,CPU跑這個問題要3分鐘左右才有響應,但是GPU10多秒就開始有流輸出了。但奇怪的是流輸出開始後,GPU的使用率立馬又掉下去了,不知道這個是bug還是feature還是筆者哪裡沒弄對,後面再研究一下。