作者 | Agam Shah
出品 | 51CTO技術棧(微信號:blog51cto)
開發者需要AI PC嗎?
目前,沒有理由勸開發人員購買一臺AI PC,利用其中新的AI處理器來編譯本地AI模型。
——AI PC 仍存在多個問題:硬件能力不足,模型不可用,開發工具部署起來頭疼。
我經過幾個月的測試,試圖在所謂的搭載Windows 11和專用AI處理器的AI PC上,離線運行本地LLM。這些筆記本包括搭載了英特爾和高通神經處理器的芯片,專為AI設計。
微軟大肆宣傳其AI PC支持輕量級AI模型,如Meta的Llama 2和微軟的Phi Silica。
我嘗試將這些模型加載到PC上的過程非常令人沮喪,每一步都不順暢。首先是找到與高通和英特爾芯片中的神經處理器兼容的輕量級模型,然后是加載Jupyter筆記本和運行這些SLM所需的神經網絡。
當我成功運行模型時,發現SLM并未使用專用的AI處理器,而是依賴于GPU或CPU。
1.PC廠商的人工智能炒作
微軟在今年的Build大會上宣布了Copilot+ PC。首批Co-Pilot PC配備了硬件,可以在設備上運行推斷,避免了云端操作。
Copilot PC有一些最低要求,包括至少45 TOPS的最低AI性能要求。第一批搭載高通驍龍芯片的AI PC滿足了這一要求。
微軟CEO薩蒂亞·納德拉表示,公司已經準備了40多個模型,可以直接在Copilot+ PC上本地運行。其中之一是Phi Silica,一個38億參數的SLM。
DirectML和ONNX運行時允許用戶在Windows設備上運行Phi-3模型,但高通芯片發布時還沒有準備好。高通通過AI開發中心提供了其支持的AI模型清單。
早期嘗試加載Llama v2并不順利,對我而言沒有效果。我尋求了高通的幫助來加載模型,但沒有明確的結果。
使用高通推薦的工具創建Jupyter筆記本令人困惑,我無法手動加載任何AI模型。高通建議下載ONNX運行時以利用NPUs,這也令人費解。
最近,LMStudio為高通芯片提供了其AI軟件的版本。
我使用LMStudio加載了80億參數的Llama v3.1模型,但它只使用了驍龍CPU,沒有利用GPU或NPU。它每秒輸出17.34個token,但僅幾個查詢后內存使用率就達到了87%。
目前還沒有真正有意義的模型能夠利用高通的NPUs,這些處理器與GPU一樣,旨在加速AI。即使NPUs能夠工作,Copilot PC的內存也不足以運行長時間的查詢,而且電池壽命也會迅速耗盡。
微軟正在為開發者提供工具,將AI能力集成到桌面應用程序中。對他們來說,加載Llama v3.1沒有必要,因為他們已經在PC上有了Copilot功能。
微軟的Phi Silica支持更多地是為開發者將大語言模型風格的查詢能力引入Windows應用程序,通過Windows App SDK。
2.Meteor Lake的失敗
去年底,英特爾推出了一個名為Meteor Lake的AI PC芯片,配備了神經處理單元。
現在,這個芯片成了一塊擺設,購買了搭載該芯片的筆記本進行PC上AI的人被遺棄了。沒有有用的應用程序,NPU僅用于基本的AI模型如TinyLlama。
可以肯定的是,英特爾的Meteor Lake芯片不符合微軟AI PC的最低規格要求。英特爾聲稱Meteor Lake在AI性能上達到34 TOPS(每秒萬億次運算),低于Windows PC所需的40 TOPS。
Meteor Lake受到了差評。它比上一代筆記本芯片速度更慢,電池壽命沒有改進。
發布Meteor Lake約六個月后,英特爾推出了下一代AI PC芯片Lunar Lake,這款芯片已經搭載在PC上,提供了120 TOPS的AI性能。
我嘗試在Meteor Lake PC上手動運行本地AI模型。
加載神經網絡以利用NPU涉及安裝OpenVINO 2024.2,并按照OpenVINO網站上的說明操作。
安裝提供了NPU插件,你期望在Jupyter筆記本上加載模型時運行。英特爾說我需要正確的NPU驅動程序和固件。
安裝新的NPU驅動程序本身就是一個挑戰,我必須在Windows的設備管理器設置中卸載舊驅動程序,然后檢測新驅動程序。最后,我只能使用驅動程序搜索來更新驅動程序。
我從Jupyter筆記本中運行了TinyLlama等模型,運行得很順利,但給出的答案很差。但與高通一樣,它沒有利用NPU。
少數模型如Stable Diffusion 1.4利用了NPU,但是它是直接在GIMP界面中進行的。
英特爾的AI軟件開發主要集中在其服務器CPU上。
3.回到Nvidia
開發者應該依靠Nvidia在他們的PC上運行Jupyter筆記本以進行任何有意義的AI。
購買AI PC用于提高生產力,但不適合進行與AI相關的編碼或試驗。芯片制造商的NPUs對開發者不友好。問題從啟動神經網絡開始,每個芯片制造商都有自己的問題。但在設備上AI是一個新興領域,為開發者提供了許多優化AI的機會,如通過量化來優化PC上的AI。
對于喜歡冒險的開發者,典型的Windows挑戰將會出現——確保你有正確的驅動程序和開發工具包。高通和英特爾都有自己偏好的工具來編譯和加載模型。
幸運的是,Windows命令行和PowerShell使命令行冒險變得有趣。
預期能夠利用NPUs的AI功能將預先打包在應用程序中。英特爾正在與公司合作,利用NPUs。這與使軟件與特定芯片架構兼容是一樣的。
AI硬件正在迅速發展,英特爾正在大肆宣傳其最新的Lunar Lake芯片。近期的評測稱贊這款芯片具有出色的電池續航。但不要為了開發目的購買它——它沒有足夠的內存或帶寬來本地運行語言模型。