Local AI

在 8GB Mac 上跑 26B 模型:TurboFieldfare 的 SSD 串流推理

開源專案 TurboFieldfare 以 Swift 與 Metal 打造推理引擎:只常駐約 2GB 記憶體,把 Gemma 4 26B-A4B 的 MoE 專家權重從 SSD 逐 token 串流載入,在 8GB MacBook Air 上跑出每秒 5 到 6 個 token。

在 8GB Mac 上跑 26B 模型:TurboFieldfare 的 SSD 串流推理 — 文章封面

7 月 29 日,iOS 與 Metal 工程師 Andrey Mikhaylov 在 Show HN 上發表 TurboFieldfare:一個用 Swift 與 Metal 從零寫的開源推理引擎(Apache 2.0 授權),能在任何 Apple Silicon Mac 上以約 2GB 記憶體執行 Gemma 4 26B-A4B——包括只有 8GB 統一記憶體的機型。討論串衝上 919 分、三百多則留言。專案名稱來自作者最喜歡的白眉鶇(fieldfare),README 特別聲明與 Google 無關,也不是 MLX 或 llama.cpp 的包裝。

為什麼 26B 塞得進 2GB

關鍵在 Gemma 4 26B-A4B 的 MoE 結構:總參數約 26B,每個 token 只激活約 3.88B。TurboFieldfare 乾脆不把整個模型放進記憶體——只有共用核心(約 1.35GB)與 FP16 KV cache 常駐;每生成一個 token,router 選出 top-8 專家,用有界並行的 pread 從 SSD 讀進來,放進 16 格的 LFU 快取重複使用。

量化配置:嵌入、注意力與專家權重用 MLX affine 4-bit(group 64),router 用 8-bit。prefill 以最多 128 個 token 為單位分塊,讓同一批讀進來的專家服務更多列。KV cache 也分開處理:25 層滑動窗口用環狀儲存,5 層全注意力用線性。

實測:8GB Air 每秒 5 到 6 個 token

作者量到的數字:8GB M2 MacBook Air 解碼每秒 5.1 到 6.3 個 token;24GB M5 Pro 上是 31 到 35 個。代價是儲存空間——文字模型約占 14.3GB。安裝器直接從 Hugging Face 釘選的 revision 串流位元組範圍,邊下載邊重排成 .gturbo 佈局,不在磁碟上多放一份完整 checkpoint。選配的 1.1GB 視覺包需要 M2 以上;純文字模式 M1 就能跑。系統需求是 macOS 26 與 Metal 4。

專案裡附了 103 場有審計紀錄的實驗——這個數字大概比任何效能宣稱都更能說明它是怎麼調出來的。

這條路線為什麼值得注意

大多數本地推理框架把 RAM 當硬上限,模型塞不進去就是塞不進去;TurboFieldfare 把 SSD 納入記憶體階層,用 MoE 的稀疏激活性換 RAM。HN 的熱門留言問的正是這件事:「為什麼每次都要把整個模型塞進記憶體?」回覆串也給了誠實的答案——每個 token 該讀哪些知識仍是未解的研究題,MoE 只是部分答案。

對產品團隊的啟示有兩層。第一,8GB 入門機重新變成可用的目標裝置,端側 AI 的最低硬體門檻又往下修一格。第二,這是一組攤開來的工程取捨:用儲存空間與隨機讀取延遲換記憶體,能不能接受,取決於你的產品要「跑得動」還是「跑得快」。

參考來源

本文由 AI 協助自上述來源整理,經人工審核後發布。

分享X電郵