致敬TempleOS,有開發者創建了啟動Llama 2的操作系統,網友:8G內存老電腦就能跑
自 Meta 發布開源大模型 Llama 2 以來,圍繞著該模型的「二創」項目便多了起來。
此前 7 月,特斯拉前 AI 總監、重回 OpenAI 的 Andrej Karpathy 利用周末時間,做了一個關于 Llama 2 的有趣項目 llama2.c,讓用戶在 PyTorch 中訓練一個 baby Llama 2 模型,然后使用近 500 行純 C、無任何依賴性的文件進行推理。
今天,在 Karpathy llama2.c 項目的基礎上,又有開發者創建了一個啟動 Llama 2 的演示操作系統,以及一個調用用戶模式助手進行 Llama 2 推理的內核模塊。該項目名為 Llama 2 Everywhere(簡稱為 L2E)。
不過,作者也表示,當前的系統要求是 512MB RAM 和 x86_64(64 位)PC,可用性有待提升。
同時,這個項目還藏有一些彩蛋,比如《毀滅戰士》游戲,不過必須解答謎題才能找到它。
項目地址:https://github.com/trholding/llama2.c
Andrej Karpathy 也轉發了這個新項目,表示它具備了「獨立運行、二進制、便攜和可啟動」等特性。他預計自己的 llama2.c 項目將走向成功,這個新項目擴展了想象力。
L2E 得到了各路網友的認可,有人表示,這真是太棒了。基本上可以在任何舊筆記本上啟動,并且可以僅在 CPU 上運行,8G 內存就夠了,16G 更好。
也有人覺得該項目非常像為上帝開發的操作系統 TempleOS(它由已故天才程序員 Terry Davis 獨自開發),但項目作者表示自己只是對 Terry 和 TempleOS 的致敬。
L2E 僅僅使用 Linux 內核和一些知識構建了一個操作系統,與 Terry 從頭開始構建的操作系統存在天壤之別。
接下來了解一下 L2E 項目的初衷、Demo 和特性。
L2E 項目介紹
項目作者表示,L2E 旨在確保其在各種設備上的兼容性,比如在 chromebook 上啟動、在企業高密度 unikernel 上部署。
未來,通過利用大量具備適度硬件要求的網絡化、分布式和自協調的小規模專業 LLM,該項目有潛力釋放超越單個大規模 LLM 的群體智慧。
目前,L2E 顯著的用例是在不同文本源上訓練小規模模型,包括教科書、開放書籍和 SlimPajama 語料庫等。這些經過訓練的模型使用 L2E 進行部署,從而作為可啟動實例在老舊過時的學校計算機上運行。這種部署方案可在互聯網連接有限或網絡不可用的學校圖書館或教室中發揮重要價值。
項目的最終目標是創建一個包容性的 AI 生態系統,能夠適應多樣化的環境,并在全球范圍內為個人和社區賦能。
此外通過使用各種硬件遙測數據訓練,希望模型能夠學會解釋傳感器輸入并根據從傳感器輸入中收集的 insight 來控制執行器。這一研究方向可能會在自動化、太空、機器人和物聯網等領域發揮作用,而 L2E 將對彌合 AI 和物理系統之間的差距發揮關鍵作用。
L2E Demo 展示
項目作者展示了啟動 Llama 2 的一些示例。
如下為 Linux 內核的 L2E 操作系統,現在可以在計算機上真正啟動并推理 Llama 2 模型了。
此外可以做 cat /dev/llama 并回顯 "Sudo make me a sandwich!" > /dev/llama 等命令,或者傳遞一個內核參數 l2e.quest="What is the meaning of life?"。
最后還可以在大型企業服務器上啟動并推理一組 1000 個 Virtural Baby Llama 2 模型。
L2E 具備很強的便攜性,可以在任何 x86_64 操作系統上運行單個可執行文件,比如 Windows、GNU Linux、GNU/Systemd、NetBSD、OpenBSD 等。獨立性則表現在可以通過 ZipOS (cosmocc)、INCBIN、strliteral 嵌入模型和 tokenizer。L2E 可以在 CPU/GPU 上運行。
更多細節內容請參閱原項目。