近日,一個名為EXO Labs的組織在社交媒體上發(fā)布了一段視頻,展示了一臺運行Windows 98系統(tǒng)的26年高齡奔騰II電腦成功運行大型語言模型(LLM)的情形。這臺350MHz的Elonex奔騰II電腦配備了128MB內(nèi)存,通過定制的純C推理引擎,成功生成了一個關(guān)于“Sleepy Joe”的故事,整個過程運行流暢,生成速度令人驚訝。
EXO Labs由牛津大學(xué)的研究人員和工程師組成,其使命是“普及人工智能”。該組織認(rèn)為,少數(shù)大型企業(yè)控制人工智能會對文化、真相以及社會其他基本方面造成負(fù)面影響。因此,EXO Labs致力于構(gòu)建開放的基礎(chǔ)設(shè)施,使任何人都能在任何設(shè)備上訓(xùn)練和運行AI模型。此次在Windows 98上運行LLM的壯舉,正是對這一理念的有力證明。
為了實現(xiàn)這一目標(biāo),EXO Labs從eBay上購得了一臺老式Windows 98電腦,并通過以太網(wǎng)端口使用“古老的FTP”完成了文件傳輸。更大的挑戰(zhàn)在于為Windows 98編譯現(xiàn)代代碼,幸運的是他們找到了Andrej Karpathy的llama2.c,這是一個“用700行純C代碼即可在Llama 2架構(gòu)的模型上運行推理”的工具。借助這一資源以及老式的Borland C++ 5.02 IDE和編譯器,EXO Labs成功將代碼編譯成可在Windows 98上運行的可執(zhí)行文件,并在GitHub上公開了最終代碼。
EXO Labs的Alex Cheema特別感謝了Andrej Karpathy的代碼,并對其性能贊嘆不已,稱其在使用基于Llama架構(gòu)的26萬參數(shù)LLM時,在Windows 98上實現(xiàn)了“每秒35.9個token”的生成速度。雖然26萬參數(shù)的LLM規(guī)模較小,但在這臺古老的350MHz單核電腦上運行速度相當(dāng)不錯。
EXO Labs的目標(biāo)遠不止于在Windows 98機器上運行LLM。他們在博客文章中進一步闡述了其對未來的展望,并希望通過BitNet實現(xiàn)人工智能的普及。BitNet是一種使用三元權(quán)重的transformer架構(gòu),使用這種架構(gòu),一個70億參數(shù)的模型只需要1.38GB的存儲空間,這對于現(xiàn)代硬件甚至十年前的設(shè)備來說都非常輕量級。此外,BitNet是“CPU優(yōu)先”的,避免了對昂貴GPU的依賴,據(jù)稱這種類型的模型比全精度模型效率高50%,并且可以在單個CPU上以人類閱讀速度運行一個1000億參數(shù)的模型。