
AI 摘要
- Claude Managed Agents Dreams 是一種非同步的離線記憶整理工作,輸入既有記憶庫與 1 至 100 個 session 的對話記錄,輸出另一個新記憶庫,輸入庫永不被修改。
- 在 CL-Bench 1.0 數據庫任務中,Claude Opus 5 的平均獎勵由無記憶的 0.564 升至有記憶的 0.828。
- 以 Stainless 約 35 萬個檔案建立 wiki 後,25 條問題的答題分數由 13% 升至 48%。
Anthropic 發表關於代理記憶(agent memory)的最新研究,並把離線整理記憶的機制以 Claude Managed Agents Dreams 之名推進到研究預覽階段。這項功能不是讓模型在空檔「睡覺學習」,也不會改動模型權重;它是在對話與對話之間,用既有的 session 對話記錄回頭核對、修正、合併代理自己寫下的檔案筆記。研究由 Anthropic 研究員 Lance Martin 執筆,文章開宗明義點出問題所在:代理在某個 session 內寫下錯誤筆記,下一個 session 就會把它當成事實讀取。他舉的例子很具體——玩《Pokémon Red》時記錯 PokéCenter 的位置,足以讓 Claude 走不出山洞。
先把定義講清楚:做夢不是訓練,也不是 compaction
Anthropic 對「代理記憶」的定義相當窄:包括 Claude 從經驗中獲得、在執行 session 之間保留、並以可讀取上下文形式存下的知識。文章明確排除三種常見混淆:模型權重的改變(訓練時設定的內部參數)、in-context learning(單次對話內學到的東西),以及 compaction(Claude 寫摘要取代舊對話,以便在新上下文窗口繼續工作)。「做夢」的概念也不是 Anthropic 原創,出處是 Letta 在 UC Berkeley 提出的 sleep-time compute——模型在互動之間的空檔,用算力重組既有上下文;套用在代理記憶上,就是讓 Claude 反思日誌、修正錯誤、產生新的筆記與表徵。
四層記憶架構,做夢在中間穿梭
- 對話記錄(transcripts):可搜尋的事件日誌,是事實的底稿。
- 記憶筆記(memory notes):Claude 在 session 內判斷哪些事值得記,寫成檔案。
- 記憶表徵(representations):例如 wiki,把筆記連成可導航的地圖。
- 注入上下文(injected context):每次開場預先載入的一小段內容。
Anthropic 把記憶描述成一種對未來的預測:寫下一條規則,等於預測這個模式將來還會用得著。既然是預測,就可以打分。

CL-Bench:有記憶與無記憶的差距
研究團隊用 CL-Bench 1.0 的數據庫任務測試,Claude 每題都在新的 session 開始,唯一例外是可以讀寫一個跨 session 保留的記憶目錄;答完一題後會被告知正確答案,並可寫下記憶幫助答下一題。平均獎勵如下:
| 模型 | 無記憶 | 有記憶 | 增幅 |
|---|---|---|---|
| Claude Opus 5.5 | 0.655 | 0.838 | +0.183 |
| Claude Sonnet 5.5 | 0.644 | 0.833 | +0.189 |
| Claude Opus 5 | 0.564 | 0.828 | +0.264 |
| Opus 4.7 | 0.383 | 0.700 | +0.317 |
差別在於有沒有形成閉環。Opus 5 是第一個把「規則、為何知道這條規則、之前題目的答案、以及已發現的陷阱」全部寫進記憶的模型。

反直覺發現:強制「只記失敗」反而扣分
Anthropic 要求模型「只記錄失敗」,結果 Opus 5 的記憶增益下跌 0.234,Opus 4.7 下跌 0.150,Sonnet 4.6 只跌 0.020。對能力較強的模型而言,讓它自己判斷什麼值得記,比預先寫死規則更有效。另一組數字則說明舊模型才是需要指引的一方:Sonnet 4.6 原本不到一半的次數會先讀記憶再作答,被要求先讀記憶、再明確測試自己的推論之後,分數幾乎翻倍,由 0.364 升至 0.641;Sonnet 5 甚至自發性在十次中有九次先讀記憶。
Pokémon 測試:413 個檔案只得 1 枚徽章
Anthropic 用《Pokémon Red》測試「什麼值得記」。每個模型開局獲派一個可讀可寫的記憶資料夾,兩次跑到約 10,000 步的記錄對比如下:
| 模型 | 記憶檔案數 | 約略規模 | 取得徽章 |
|---|---|---|---|
| Claude Sonnet 3.7 | 413 個檔案,分佈於 225 個資料夾 | 逐場戰鬥、逐件道具、逐個非玩家角色都開檔 | 1 枚 |
| Claude Fable 5 | 9 個檔案加 1 個 global.md,共 10 個 | 約 4.3 萬字元 | 4 枚 |
原因不是節省空間,而是遊戲狀態一直在變。Sonnet 3.7 的詳細記錄不斷過期,Claude 要花愈來愈多時間翻查記憶而不是玩遊戲;到第 10,000 步左右,它開始第四套 master 記憶資料夾,之後 17 步內建立 6 個檔案、刪除 9 個檔案,但在遊戲本身完全沒有動作。Fable 5 反過來只記遊戲畫面讀不到的東西:策略、計劃、驗證過的規則。global.md 是儀表板,放當前目標、打道館的預寫計劃,以及自己的記憶使用規則——其中一條來自實戰:連續七個精靈球都捉不到鯉魚王之後,它寫下「若連續三個球以上失敗,改變時機,在選單步驟之間加按等待」。
Mt. Moon 案例:一個錯的地標足以令代理迷路
全文最有用的案例在 Mt. Moon。關卡入口在西、出口在東,入口附近有一道單向懸崖,掉下去就回到來路;Claude 以入口的 PokéCenter 作地標,所以會不會走落懸崖,取決於它認為 PokéCenter 在山的那一側。有一次 Claude 記錯,寫下 PokéCenter 在東側,走出 PokéCenter 時竟宣布「Mt Moon 在我後面」,並把筆記改成「Mt Moon DONE」——其實山正在前方。幾步之後它掉下懸崖,導航工具沒有顯示這次下墜,於是判斷「我走得太西」,並相信自己一直走對方向。
Anthropic 之後對這個含錯誤位置的記憶資料夾跑一次做夢:Claude 用 session 記錄核對筆記,發現錯誤並改寫,修正後直接再回到山洞,最終抵達 Cerulean City(第 1,935 個動作)。未修正的那次嘗試,Claude 三次掉回原路,第三次之後寫下「我寧願停下來,不再迴圈」,在自動回覆要求下繼續,一路退回 Pewter City,整場沒有到過 Cerulean City;完全沒有記憶的那次同樣到不了。這說明做夢的真正作用:對話記錄提供可核對的事實基礎,讓代理校對自己的筆記,雖不保證筆記正確,卻給了回頭查證的機制。
wiki 表徵:35 萬個檔案,答題由 13% 升到 48%
第二種用法是靠做夢建立記憶的表徵。Anthropic 以剛收購的軟件公司 Stainless 內部文件做測試:約 35 萬個檔案、約 4.2 億 token,另設 25 條問題的評測集。研究人員讓 Opus 5 代理分 128 個 session 建立自己的 wiki:探索檔案、撰寫或修正互相連結的頁面、合併重複項、核對來源,並用共享日誌協調進度。做夢由 2 個 session 增至 128 個之後,25 條問題的評分由 13% 躍升至 48%。
| 檢索方式 | 25 條問題評分 | 備註 |
|---|---|---|
| 純 wiki(2 個 session) | 13% | 103 頁、766 條連結 |
| 純 wiki(128 個 session) | 48% | 222 頁、12,893 條連結 |
| 只用搜尋工具 | 53% | 單靠 wiki 仍不及搜尋 |
| 搜尋加 wiki | 54% 升至 61% | 平均每題節省約 2 萬 token |
wiki 不是萬能:單一文件可答的題目沒有增益
Anthropic 另外用 Harvey LAB benchmark 測試一批文件。一組 24 條關於併購的問題中,超過一半需要跨文件找資料,部分需要判斷或計算;在這些題目上查 wiki 得 87%,只用搜尋得 73%。另一組 57 項評分標準大多可從單一文件(通常是交易摘要)以文字搜尋找到,wiki 相對搜尋沒有明顯增益。還有一種失敗模式值得記住:有一次 Claude 建的 wiki 竟然比原始文件還大,10 份文件共 115KB,長成 68 頁、203KB,是原檔的 1.77 倍,等於什麼都沒有抽取出來。
指示寫錯也會出事。同一批 LAB 測試中,一個模擬收購的任務要求簡報準確描述合約條款,最初的指示沒有講明條款最重要,幾個代理同時寫入同一個共享條款表、互相覆寫,最後 57 項評分標準只有 41 項(72%)達標。Anthropic 讓 Claude 反思失敗、提出修改指示、重建 wiki,改為每份合約一頁、由單一代理負責、逐字引用條款,結果 57 項全部達成。
Dreams 怎麼用:非同步工作,輸入庫永不修改
Dreams 目前在 Claude 平台屬研究預覽,需要向 Anthropic 申請使用。按官方文件,一個 dream 是非同步工作:輸入是一個既有記憶庫,加上 1 至 100 個 session 的對話記錄;輸出是一個新的記憶庫,重複項會被合併,過時或矛盾條目以最新值取代。輸入記憶庫永遠不會被修改,所以團隊可以先檢查輸出,不滿意就丟棄;失敗或取消時,輸出庫保留中斷前的內容供檢查。
給部署代理團隊的三個操作結論
- 注入層要小。做夢可以把筆記升到記憶階梯頂部,由代理框架在每次開場預載,但注入的記憶會佔用 token,錯的筆記會被帶進每一個 session。Anthropic 的 Claude Code 文件亦警告,指示檔愈長遵從度愈低;Claude Code 的 auto memory 因此只載入 MEMORY.md 的頭 200 行或 25KB,當成索引而不是全文。
- 只記推論出來的東西。畫面每回合都讀得到的(金錢、座標)不值得寫;策略、計劃、驗證過的規則不寫就會消失。把工單狀態、訂單欄位這類可重新查詢的資料抄進記憶,只會製造過期內容。
- 正式使用前用任務評測驗證 dreamed store。Dreams 的輸出是獨立記憶庫,這正是安全之處:先在評測集上跑一次,確認分數不低於現有記憶庫,才把它接上正式 session。
Anthropic 也把「何時寫記憶」、「如何保持記憶最新」、「錯誤累積」、「持續檢查所有記憶的算力成本」列為未解問題,建議把做夢集中在容易變的資訊,或按記憶被讀取的頻率調整節奏。研究同時提醒,對企業後台正在處理催收、客服與營運流程的代理而言,記憶出錯的代價是重複聯絡客戶或漏掉承諾——記憶治理會是代理落地時遲早要面對的一環。
Reference Link : it-square.hk




