Millfolio – 我對本地/混合AI的嘗試
Millfolio是一個在Mac上執行的本地優先AI工具,透過將程式傳送到資料而非將資料傳送到模型來保護隱私。它使用Mojo構建後端,利用本地模型索引檔案,並透過前沿模型(Claude)編寫查詢程式,該程式只訪問脫敏的模式資訊。
Millfolio是一個個人專案,旨在讓使用者在自己的資料上使用AI,而無需將資料交給第三方提供商。它完全在Mac上執行,採用一種新穎的隱私保護方法:不是將資料傳送到模型,而是將程式傳送到資料。
當使用者提問時,本地模型已經在裝置上讀取並索引了檔案——將其分塊、嵌入到本地保管庫索引中。這是唯一接觸實際資料的部分。然後,一個前沿模型(Claude)編寫一個小程式來回答問題,但它只看到保管庫的脫敏模式:列名、標籤名、型別、形狀,從未看到任何實際值。該程式在裝置上的沙盒中執行,並本地組裝答案。因此,前沿模型負責規劃和編碼,而實際資料從不離開機器。透過網路傳輸的是脫敏的清單和查詢程式,而不是使用者的交易資料。
Millfolio的資料棧幾乎完全使用Mojo編寫,包括一個從頭編寫的推理引擎,具有自定義的GPU/Metal核心。本地模型在裝置上讀取、索引並回答有針對性的問題。引擎執行使小型模型在Mac mini上可用的樸素工作:int4 GEMV、張量核心注意力、持久化Metal管道快取、提示查詢推測解碼。還有額外的工作以批處理模式執行本地模型,並設定不同優先順序,以保持筆記型電腦在同時處理其他工作時的響應性。
作者坦誠地指出了專案的侷限性:它是個人專案,僅支援Apple Silicon,主要由AI編寫程式碼,但作者進行了大量設計和測試。它需要API金鑰用於程式碼編寫步驟,因為本地模型不夠強大,無法可靠地編寫查詢程式——這是前沿模型的工作。因此它是本地優先,而不是完全隔離的。作者表示,如果有人能證明本地模型可以很好地編寫這些程式,那將消除最後一個遠端依賴。
該專案沒有保修,也不承擔任何責任。隱私透過設計得到保護,但沒有軟體是絕對安全的。使用者應使用自己願意承擔一定風險的資料。
要快速瞭解這個想法,可以訪問即時演示(Demo: demo.millfolio.app),它使用合成保管庫,一鍵即可執行,無需安裝或金鑰。更多資訊請訪問 millfolio.app,程式碼在 github.com/millfolio。作者歡迎反饋,特別是關於隱私模型是否經得起推敲,以及將實際推理棧押注在Mojo上的決策。