記憶

記憶工具

讓代理可以檢查、新增或擷取記憶的工具介面。

記憶工具

這是什麼

讓代理可以檢查、新增或擷取記憶的工具介面。

白話解釋

一個對講機面板上裝有新增筆記、更正筆記或刪除筆記的獨立按鈕,只能做安裝時接線設定好的事情。這就是記憶工具:一個面向模型的單一控制介面,具有新增、取代和刪除動作,其權限控制方式與任何其他工具在特定部署中可被打開或關閉的方式相同。

為什麼重要

檢查已儲存的內容、新增新的事實或從先前的對話中擷取資訊——記憶工具是具體的、面向模型的工具呼叫,讓記憶成為代理在對話過程中主動管理的東西,而不是被動的背景處理程序。由於這些工具的權限控制方式與任何其他工具集相同,操作者可以停用記憶的寫入權限同時保留讀取權限,或反過來。一旦記憶開始保存任何敏感資訊,這種精細控制就變得更重要了。

運作方式

一個名為 memory 的工具(tools/memory_tool.py)針對 memory(代理自己的筆記)或 user(關於使用者的事實)目標,公開了 add、replace 或 remove 動作,外加一個批次操作陣列,用於在一次呼叫中原子性地進行多項變更,並根據最終字元預算進行檢查。Replace 和 remove 透過 old_text 運作——這是一個簡短的唯一子字串,用於識別條目,因為條目沒有 ID。每個修改呼叫都會通過一個寫入核准閘道(tools/write_approval.py),該閘道可以允許、直接阻止或將其暫留以供後續簽核。一個獨立的 MemoryManager(agent/memory_manager.py)會將每次成功的 add、replace 或 remove 鏡像輸出到一個已註冊的外部提供者——Honcho、Hindsight 等類似插件——以便該提供者與內建工具保持同步,並防止提供者自己的工具名稱與保留的核心工具衝突。

具體範例

對話進行到一半時,模型使用 action addtarget usercontent "Prefers dark mode in every UI." 呼叫 memory 工具。該工具檢查條目尚不存在,將其附加並確認儲存。當使用者後來改變主意時,模型再次使用 action replaceold_text "dark mode" 呼叫 memory,以更新偏好設定。