UStackUStack
ReasoningBank icon

ReasoningBank

ReasoningBank 是一個 agent 記憶框架,從成功與失敗經驗萃取可重用的推理策略,協助已部署 agent 在測試時學習改進,適用於網頁瀏覽與軟體工程。

ReasoningBank

什麼是 ReasoningBank?

ReasoningBank 是一個新型的 agent 記憶框架,能幫助已部署的 agents 從成功與失敗經驗中學習。它專為需要隨時間持續改進、而不是把每個任務都視為獨立嘗試的長期運作 agent 所設計。

這個框架會儲存結構化記憶,捕捉可泛化的推理策略,而不只是記錄完整的行動軌跡。這些記憶會在行動前被檢索、在 agent 完成任務後更新,並用來支援 agentic 工作流程中的測試時自我演化。

主要功能

  • 結構化記憶項目:每則記憶都包含標題、簡短描述與提煉內容,讓儲存下來的經驗比原始軌跡更容易重用。
  • 行動前檢索:agent 會在採取行動前查詢 ReasoningBank,讓相關的過去策略影響下一次嘗試。
  • 同時從成功與失敗中萃取:這個框架會把成功執行轉化為可重用技巧,也把失敗執行轉化為警示性教訓與反事實訊號。
  • 檢索、萃取與整合的閉環流程:ReasoningBank 被設計成一個持續運作的記憶工作流程,會在每次互動後更新。
  • 搭配 LLM-as-a-judge 的自我判斷:即使判斷不完全準確,系統仍可評估軌跡並萃取洞見。
  • 具備記憶感知的測試時擴展:ReasoningBank 可利用多條探索軌跡,從推論時搜尋與自我對照中提煉出更強的記憶。

如何使用 ReasoningBank

典型流程是先將 ReasoningBank 接到執行網頁瀏覽或軟體工程等任務的 agent 上。在每次行動前,agent 會從記憶庫中檢索相關記憶,並將其作為上下文使用。

任務結束後,agent 會評估軌跡、萃取有用策略或失敗反思,並將其新增為結構化記憶。隨著時間推進,這會形成一個可供 agent 在後續任務中重用的一般性經驗庫。

使用情境

  • 網頁瀏覽 agent:利用過去的瀏覽經驗避免重複導航錯誤,並重用有效的搜尋或頁面互動策略。
  • 軟體工程 agent:從程式碼庫探索、除錯與任務完成中萃取教訓,讓 agent 在重複指派中更有效率地工作。
  • 持久型任務自動化:支援持續運作、且需要隨著遇到新工作流程與邊緣案例而改進的 agents。
  • 推論時探索:在使用測試時擴展方法時,將多條候選軌跡提煉成記憶。
  • agent 的失敗分析:把失敗嘗試轉化為防護措施,例如避免導致迴圈或漏步的陷阱。

常見問題

ReasoningBank 儲存的是什麼樣的記憶?
它儲存的是結構化記憶,總結推理策略、決策理由與操作洞見,而不只是保留完整的行動紀錄。

它只從成功執行中學習嗎?
不是。ReasoningBank 的核心之一,是它也會分析失敗經驗,並將其轉化為預防性教訓。

這個系統需要完美的自我評估嗎?
不需要。來源指出,即使基於 LLM 的判斷不完全準確,這個框架仍然具有韌性。

它在哪些任務上評估過?
來源說它是在網頁瀏覽與軟體工程基準上進行評估。

ReasoningBank 是獨立模型嗎?
不是。它被描述為一個 agent 記憶框架,會在測試時與 agent 搭配運作。

替代方案

  • 軌跡記憶系統:這類系統會儲存詳細的行動歷史,能保留更多原始上下文,但未必能直接提煉較高層次的策略。
  • 專注成功執行的工作流程記憶系統:這類系統只摘要成功的工作流程,可能更簡單,但會錯過來自失敗的學習訊號。
  • 通用 agent 記憶層:更廣泛的 agent 記憶系統可能著重於檢索過往互動,但不一定會同時從成功與失敗中結構化萃取推理。
  • 無記憶的 agent 架構:沒有持久記憶的 agents 實作較簡單,但無法在任務之間累積可重用的經驗教訓。
ReasoningBank | UStack