cactus-compute/needle
14MB foundation model for tiny devices; phones, wearables, smart home, and robots.
解決的問題
Needle 2 是一個高度緊湊的 45M 參數模型,專為小型設備上的工具呼叫、裝置控制和結構化資料提取而設計。它解決了對本地運行、記憶體佔用極小(約 28MB RAM)的 AI 代理的需求,同時不犧牲執行通常需要更大模型才能完成的複雜工具使用任務的能力。
工作原理
該專案採用「簡單注意力網路」架構,包含哈達瑪 MLP、GQA 注意力機制和記憶體鍵值對(engram key-value memory)。為實現其極致的小型化,模型被壓縮至 2 位量化(CQ2-bit),並固化為一個 14MB 的單一二進位引擎。它使用位元組級語法來約束解碼過程,確保工具呼叫結果基於提供的模式返回有效的 JSON。此外,還內建了檢索頭,可每回合僅選擇前五個工具,以管理大型工具目錄。
適用對象
適用於在資源受限環境中開發 AI 代理的開發者,例如可穿戴裝置、智慧家庭裝置以及其他嵌入式系統,這些場景對記憶體和功耗有嚴格限制。
主要亮點
- 極致高效:14MB 的二進位檔可在約 28MB 的 RAM 中運行,性能可與 5 到 70 倍更大的模型相媲美。
- 置信度門控:每個回應都包含經過校準的置信度分數,支援基於閾值的升級機制。
- 結構化輸出:使用編譯後的位元組級語法,確保輸出符合工具模式的 JSON 格式。
- 整合式流程:包含合成資料生成、透過 JAX 進行 LoRA 微調,以及導出為緊湊的
.cact格式等工具。 - 預建環境:提供針對智慧家庭、媒體播放器和可穿戴裝置等領域的現成工具介面。
相關
- Dispatch
- Dispatch
- Dispatch
- Dispatch
- 專案