近段時間大家在網上見到AI這個關鍵詞的頻率越來越高了,實際上AI在生產與創作領域已經有相當廣泛的應用,影片和照片編輯、圖片素材生成、影片超分、添加字幕以及翻譯、影片會議、起草文檔和PPT、數據分析和解讀甚至編程等應用在AI助力下都可大幅提升效率。而對於個人用戶來說,把這些工作用的軟體工具都剔除後,最有用的應該就是LLM聊天機器人了,運用得當的話它可比傳統搜尋引擎強多了,可成為你的得力助手。
其實想體驗LLM聊天機器人最簡單的方式是直接用線上的,現在中國大陸有許多類似的產品,比如阿里的通義千問、百度的文心一言等等,功能都挺齊全的,我最初也是從這些開始上手的,不過在線的功能始終還是會涉及私密性的問題,所以我就開始著手研究本地部署的聊天機器人。
最開始嘗試的其實是NVIDIA的Chat RTX,這軟體NVIDIA剛對它進行了更新,舊版其實挺不好用的,只內置了兩個英文的LLM,新的版本加入了智譜AI的ChatGLM3這個中文LLM的支持,同時還支持語音輸入和圖像搜索功能。
最新版ChatRTX的版本號升級到0.3,新版的安裝包從36.2GB一下子減少到11.6GB,原因是現在裡面只自帶了一個Mistral 7B的模型,而原本還有個Llama2 13B的模型。
新版ChatRTX長這樣的,可以看到多了個增加新模型的功能
但這並不是可以隨意添加模型的意思,而是可選擇下載NVIDIA編譯過的模型,Llama2 13B現在搬到了這裡,此外還新增了ChatGLM 3 6B和Gemma 7B這兩個模型的支持,那個CLIP則是圖片搜索用的模型,想要下載哪個的話選中它然後點旁邊的下載即可。
模型的下載是不需要翻牆的,你可以在旁邊的命令行窗口中看到下載速度相當快。
下載完之後會提醒你模型可安裝了,這裡你要手動點擊安裝,需要注意的是到了安裝這步就需要翻牆了,因為安裝過程會在Hugging Face下載部分文件,不翻牆會導致安裝失敗。
安裝完之後就可以和機器人聊天了,我們下載的這個ChatGLM 3 6B由於是個小模型,而平台使用的是影馳RTX 4070 Ti SUPER 星曜 OC顯卡,可見顯存占用還不到6GB,所以顯存容量超過8GB的RTX 30/40系顯卡都可使用,應用範圍還是很廣的,當然那些13B以上的模型就得用12GB顯存以上的顯卡了。
影馳RTX 4070 Ti SUPER 星曜 OC
ChatRTX跑的是NVIDIA TensorRT-LLM,效率其實是要比其他跑CUDA的軟體快不少的,但我使用的時候發現這機器人聊天時沒有聯繫上下文功能,這點體驗就不太好。
最後要說的是NVIDIA ChatRTX是可以手動添加模型,但過程相當麻煩,要相當多的準備功夫,而且大部分都要在命令行裡面操作,沒相關的基礎知識的話估計會相當的頭大,這裡我就不展開說了
隨後我就去改去嘗試Ollama,這是一個開源的大型語言模型服務工具,可幫助用戶快速在本地運行大語言模型。大家可以訪問Ollama官網下載該軟體,軟體支持macOC、Linux和Windows系統,這裡我們選擇的是Windows平台,軟體的安裝過程沒什麽好講的,根據提示下一步就行。
安裝完成之後有個地方是可能需要改的,由於Ollama的默認模型安裝位置是在C盤用戶文件夾下的, 如果需要改位置的話就得去改環境變量,具體位置在系統屬性=》高級=》環境變量,在系統變量那裡選擇新建一個叫「OLLAMA_DODELS」的條目,變量值填你指定的模組下載文件夾即可,這樣Ollama算是設置好了。
當然了Ollama只是負載運行的,你還得套一層UI,不然你就得用命令行來和機器人聊天了。這裡我就選擇了使用Chrome的插件Page Assist,安裝方法你在Chrome的應用商店搜這個插件就行,只不過這過程你需要用到梯子。
Page Assist並不需要做什麼特殊設置,最多改下軟體語言,有語音輸入輸出需求的還可以自行修改對應設置, 它是支持網絡搜索的,但目前搜尋引擎只能選擇Google和DuckDuckGo,均需要準備翻牆工具
接下來就需要拉LLM模型了,最簡單的方法其實是訪問Ollama Library,這裡有大量已經適配好的LLM模型,每個模型旁邊都有清晰的標識,包括模型的詳細信息和拉取命令,如果已經裝了Page Assist的話會多出一個下載按鍵,想下載的話直接點那個鍵就行,沒有的話就複製那行命令貼到命令行那裡運行,解下來等待下載完畢。
你也可以複製指令到命令行下載
下載好後把Page Assist開打,在左上角選擇你下好的模型,然後就可以問機器人各種問題了,Ollama會自動檢測並使用可用的GPU資源,無需額外配置。
這裡我們這裡就下載千問1.5的14b模型來演示一下,擁有16GB顯存的顯卡跑14b模型沒什麽問題,8GB顯存的顯卡就只能跑7b或者8b的模型了,如果顯卡有24GB顯存的話可以試試34b的模型。
如果Ollama Library上沒有你想要的模型的話,可自行到Hugging Face中國大陸鏡像站下載GGUF模型,一般來說在模型頁面會教你怎麼導入到Ollama中的, 我們就把最新的Llama3中文微調模型導入到Ollama裡面使用。
此外Page Assist現在還在測試知識庫功能,可自行搭建本地的知識庫,也可以把文檔扔進去給AI分析歸納信息,支持pdf、csv、txt和md格式文件,單個條目可添加單個或多個文件。
使用時需要在輸入窗口選擇你需要用到的文檔,所以軟體的知識標題填別隨便填,否則很容易混亂,此外使用本地知識時網絡搜索就不可使用了。
對於消費級顯卡來說,顯存容量最多就24GB,單張卡能跑的模型大小是有限制的,但Ollama是支持多卡的,而且不需要用戶額外的操作,把第二張顯卡插上去,把驅動裝好即可使用,這裡我們就用了兩張影馳RTX 4070 Ti SUPER 星曜 OC顯卡運行yi1.5 34B的模型來演示一下。
當軟體識別出單張顯卡的顯存容量不足矣運行當前選擇的模型時,就會自動把負載平均分配給兩張顯卡,可以看到兩張RTX 4070 Ti SUPER的顯存都占用了12GB,GPU負載也是50%左右,實際上如果湊夠48GB顯存的話就能跑70/72B的模型,你可以選擇兩張RTX 4090或RTX 3090,也可選擇三張16GB顯存的顯卡,實際上我們此前評測的影馳RTX 4060 Ti無雙MAX顯卡就非常適合這種AI工作站。
此外不同的顯卡混搭是可以的,我們就嘗試過可以用RTX 4070 Ti SUPER搭配RTX 4060 Ti 16GB使用,並沒有出什麼問題,不同顯存容量的顯卡混搭測試過也是可以的,測試過RTX 4090搭RTX 4080以及RTX 4070 Ti SUPER搭RTX 4070 SUPER這種組合,Ollama可以正常工作,並沒有出什麼問題。
以上就是這段時間我們在研究本地部署的LLM大模型的體驗,NVIDIA Chat RTX目前雖然比最早的體驗版好用了不少,但依然處於很早期的狀態,要自行添加指定模型比較麻煩,而且不能聯繫上下文這點體驗並不好,不過想裝來玩玩還是可以的,畢竟它的安裝和使用都很簡單,內置的小模型對顯存容量需求也不高,8GB以上的顯卡就可以跑。
Ollama搭配Page Assist這組合勝在夠簡單,比較適合剛接觸這方面的新手,添加模型很方便,知識庫和聯網搜索功能都很好用,當然上限確實不是很高就是,而且功能也夠用。
玩了幾個星期的LLM大模型感覺最深的還是跑這些顯存是真不太夠用,跑些稍微大些的模型16GB顯存就不夠用,現在終於理解高端顯卡配24GB顯存的意圖了,而且在遊戲領域現在沒什麽用的多卡並聯在這裡也有很大作用,畢竟24GB顯存跑INT4量化的34b模型基本就極限了,想跑70b級別的模型得把顯存容量翻倍,此時你就有24GB*2或者16GB*3的選擇,說真的三張RTX 4060 Ti 16GB比兩張RTX 4090 D便宜多了,如果是此前的影馳RTX 4070 Ti SUPER 星曜 OC這種單槽卡搭配HEDT或者工作站主板使用,可以在單CPU平台上堆出擁有非常龐大的顯存系統,當然RTX 4060 Ti和RTX 4090 D的算力差距巨大就是另一回事了。
這次介紹的Chat RTX和Ollama搭Page Assist組合都是比較初級的本地LLM大模型方案,在這方面我們本身也是在研究中,希望這篇教程對那些想嘗試搭建本地聊天機器人的新手有幫助,有更好思路的