Show HN: Emem – 面向AI代理的物理世界外部記憶
Emem是一個為多代理系統設計的共享內存層,提供錨定於物理位置的簽名可驗證事實,使代理無需信任即可共享精確觀測數據。
在人工智能領域,多代理系統面臨一個核心挑戰:隨着會話進行,上下文被壓縮,導致精確事實丟失。傳統的檢索方法無法解決這一問題,因為它從需要信任的存儲中返回最接近的文檔,且侷限於單一產品和供應商。Emem項目旨在解決這一問題,通過創建一個共享記憶層,使代理能夠存儲和引用經過簽名的、錨定於物理位置的事實。這些事實以永久地址的形式存在,任何代理都可以無需賬户即可讀取,而持有密鑰的代理則可以寫入。Emem使用地球觀測數據作為初始基底,但設計上可擴展至任何物理觀察器,如無人機、固定傳感器或機器人。
關鍵特性:每個事實都是一個小的簽名記錄,其地址由事實內容的哈希派生。當代理需要引用一個事實時,它只需保留一個類似於“emem:fact:...”的令牌,該令牌可以在後續會話中解析為確切的字節,並重新驗證簽名。這消除了傳統上下文中“近似值”的問題,確保了長期任務的精度。例如,一個代理在早期驗證了一個海拔值為918米,上下文壓縮後,沒有Emem時只剩下“大約900米”,而有Emem時令牌精確解析為918.0米,簽名仍然有效。
Emem的信任模型基於blake3哈希和ed25519簽名。任何讀取操作都會返回一個包含接收證明的簽名記錄,接收者可以離線驗證該證明,而無需信任發送者或服務器。系統還定義了不同的來源類別:direct_sensor(直接傳感器測量)、deterministic_index(確定性索引計算)、model_output(模型輸出,僅歸因不驗證)和human_curated(人工整理),以明確每個事實的可靠性。對於需要審計的場景,這些區分至關重要。
此外,Emem提供了一套令牌語法,包括emem:fact(單點事實)、emem:bundle(事實集)、emem:entity(實體身份)、emem:raster(柵格數據)、emem:cube(時空立方體)和emem:rasterset(柵格集),支持從單點事實到複雜時空場數據的表示。項目還提供了MCP、REST API、Python和TypeScript SDK,方便集成到現有代理工作流中。
Emem適用於事實必須跨上下文生存或跨信任邊界傳遞的場景,例如長期任務、代理間協作、機器人艦隊地圖、審計報告等。但作者也誠實地指出了其侷限性:它不適用於對話式記憶、高頻數據流或需要亞米級精度的場景。Emem與檢索增強生成(RAG)互補,而非替代;它存儲物理世界的測量狀態,而非文檔。
總結:Emem為多代理系統提供了一種獨特的方式,通過共享的、可驗證的事實層,增強了代理間的協作和長期任務的可靠性。隨着AI代理在現實世界中的應用增加,這樣的基礎設施將變得日益重要。項目已在GitHub開源,提供快速入門指南和多種集成方式。