硬體
esp32-ai 將 2,890 萬參數模型塞入 ESP32-S3,離線生成達 9.88 token/s
開源專案 esp32-ai 以 4-bit 量化及分層記憶體配置,把約 2,500 萬個嵌入參數留在快閃記憶體,只按 token 讀取所需列。模型能在低於 10 美元的微控制器上離線生成文字,但能力仍限於簡短故事與單一領域問答。

開發者 slvDev 公開 esp32-ai,展示一個 2,890 萬參數語言模型直接在 ESP32-S3 微控制器上生成文字,不需網路或伺服器。專案報告的端到端速度為每秒 9.88 token;目標硬體只有 512KB SRAM、8MB PSRAM 與 16MB flash,4-bit 模型檔則為 14.9MB。程式、韌體、訓練與量化流程以 MIT 授權放上 GitHub,近日累積約 3,800 顆星,形成明顯的社群採用訊號。
核心並非把整個模型反覆搬入 RAM,而是依存取頻率分層放置參數。每個 token 都會多次使用的 activation 與正規化權重留在最快的 SRAM;每個位置掃描一次的密集核心與輸出頭放入 PSRAM;約 2,500 萬個參數組成的查找表則留在較慢的 flash。推論時每個 token 約讀取六列、約 450 bytes,因此大部分權重不必載入工作記憶體。這套做法借用 Gemma 3n 的 Per-Layer Embeddings,但把手機級記憶體思路縮到微控制器。
專案同時提供 TinyStories 故事生成模型與 Barista 咖啡問答模型。下載腳本會以固定的 SHA-256 與檔案大小驗證模型資產,部署腳本再產生標頭、編譯並燒錄;研究目錄也包含消融及量化程式,讓硬體開發者能檢查公開數字,而不只觀看展示影片。
限制同樣明確:真正負責序列建模的密集核心約僅 400 萬參數,其餘大多是查找表;TinyStories 版本不會可靠地遵循指令、回答事實問題或寫程式。9.88 token/s 也是專案作者在特定板卡與模型上的測量,尚缺跨晶片、功耗及長時間熱穩定性比較。它證明的是記憶體配置可擴大 MCU 可容納的模型,而不是微控制器已能取代通用 LLM。接下來值得觀察 PLE 是否能支援感測器分類、語音指令等真正的嵌入式任務,以及 flash 隨機讀取對耗電與壽命的影響。