在四月份時,我借助LLaMA開源的機(jī)會,嘗試了解了大型語言模型(LLM)平民化運動,以及在開源項目命名中頻繁出現(xiàn)的“羊駝”家族,其中包括扮演重要角色的llama.cpp項目。 當(dāng)時,羊駝家族在開源大型模型領(lǐng)域剛開始嶄露頭角,周圍的生態(tài)環(huán)境十分向好。轉(zhuǎn)眼年底將至,回顧過去三個季度,以Meta在六月發(fā)布的更強(qiáng)大、更開放的Llama 2為標(biāo)志,開源社區(qū)再次以不可阻擋的勢頭進(jìn)行適應(yīng)、進(jìn)化和實施。 如今,LLM已經(jīng)不再僅僅是昂貴的GPU的代名詞,而是已經(jīng)成為可以在大多數(shù)消費級計算機(jī)上運行推理的應(yīng)用,這通常被稱為本地大型模型。 雖然llama.cpp帶來了不少益處,但當(dāng)你真正想親手嘗試時,會發(fā)現(xiàn)一系列步驟需要完成,例如獲取模型權(quán)重、克隆項目代碼、執(zhí)行模型量化、設(shè)置環(huán)境變量、構(gòu)建可執(zhí)行文件等,這些都是為了通過命令行提出一個測試問題。而且,還有許多參數(shù)可能需要手動調(diào)整。 因此,長時間以來,基于llama.cpp的本地大型模型和應(yīng)用主要局限于一小部分極客和研究者。高昂的入門門檻使得許多普通人難以接觸。 然而,隨著Ollama——一個用戶友好的本地大模型運行框架的出現(xiàn),一切都開始改變。隨著Ollama周圍生態(tài)的發(fā)展,更多的用戶開始能夠方便地在自己的電腦上使用大型模型。 簡便的安裝過程Ollama的安裝過程非常簡單。對于macOS用戶,只需從官網(wǎng)下載安裝包并運行即可;而Windows用戶目前還沒有提供直接的安裝包。官方建議Windows用戶在WSL 2中通過Linux命令進(jìn)行安裝: % curl https://ollama.ai/install.sh | sh 注意:在使用curl | sh樣式的安裝腳本時,請務(wù)必審慎評估潛在風(fēng)險。 另外,如果你熟悉Docker,也可以選擇使用Ollama的官方Docker鏡像。 當(dāng)你能夠通過運行ollama --version命令成功查詢到版本信息時,就意味著Ollama已經(jīng)順利安裝完畢。此時,你可以使用pull命令從在線模型庫中下載模型來嘗試。 以經(jīng)過中文微調(diào)的Llama2-Chinese 7B模型為例,以下命令將下載接近4GB大小的4-bit量化模型文件。請注意,運行此模型至少需要8GB的內(nèi)存,為了保證流暢運行,建議配備16GB內(nèi)存。
安裝完成后,你可以通過run命令來啟動模型。這個命令可以直接跟上你想問的問題,或者不加任何內(nèi)容進(jìn)入對話模式。在對話模式中,還內(nèi)置了幾個以斜杠(/)開頭的特殊命令: # 單條輸入 % ollama run llama2-chinese '天空為什么是藍(lán)色的?'
值得注意的是,Ollama能夠識別當(dāng)前使用的硬件配置,并在可能的情況下啟用GPU加速。你可以在進(jìn)行模型推理時打開活動監(jiān)視器或任務(wù)管理器來觀察并驗證這一點。 至此,你已經(jīng)成功體驗了觸手可及的本地大型模型。 添加界面對于那些覺得命令行操作不太方便的用戶,Ollama提供了一系列周邊工具,包括網(wǎng)頁、桌面、終端界面,以及各種插件和擴(kuò)展。 Ollama之所以能夠迅速建立起這樣豐富的生態(tài)系統(tǒng),是因為它從一開始就明確了自己的目標(biāo):讓更多人以最簡單、快捷的方式在本地運行大型模型。因此,Ollama不僅僅是對llama.cpp的一個封裝,它還將復(fù)雜的參數(shù)與相應(yīng)模型一起打包,這使得Ollama既是一個簡潔的命令行工具,也是一個穩(wěn)定的服務(wù)端API。這極大地方便了下游應(yīng)用和擴(kuò)展的開發(fā)。 對于Ollama的圖形用戶界面(GUI),根據(jù)不同的使用偏好,用戶有多種選擇: Web 版本:Ollama WebUI擁有類似于ChatGPT的界面和豐富的功能特性,需要通過Docker進(jìn)行部署; 終端界面版本:oterm為用戶提供了全面的功能和快捷鍵支持,可以通過brew或pip進(jìn)行安裝。 Raycast 插件版本:這個版本被稱為 Raycast Ollama,也是我個人最常使用的Ollama前端用戶界面。它繼承了Raycast的優(yōu)勢,可以在選中或復(fù)制文本后直接調(diào)用命令,使用起來非常流暢。作為每月大約8美元的Raycast AI的替代產(chǎn)品,Raycast Ollama實現(xiàn)了Raycast AI的大部分功能。隨著Ollama和開源模型的不斷迭代,它還將支持包括多模態(tài)在內(nèi)的一些Raycast AI不支持的新功能,具有巨大的潛力。 另外,還有一些其他有趣的應(yīng)用可供選擇,比如使用Swift編寫的macOS原生應(yīng)用Ollamac,以及類似于Notion AI的Obsidian Ollama等。用戶可以根據(jù)自己的需求進(jìn)行選擇。 總結(jié)如果將Ollama與常規(guī)應(yīng)用軟件進(jìn)行比較,其使用體驗可能還不夠“優(yōu)雅”。但與幾個月前相比,其所帶來的進(jìn)步可謂翻天覆地,仿佛從原始耕作跨越到了現(xiàn)代社會:以前還需要大量資金購買硬件、繁瑣地配置環(huán)境才能成功運行,或者需要自行進(jìn)行模型量化和編譯;而現(xiàn)在,新發(fā)布的模型(比如上周發(fā)布的Phi-2)可以迅速、流暢地在筆記本電腦上運行。從這個角度看,說Ollama對AI技術(shù)的普及做出了貢獻(xiàn)一點也不夸張。 |
|