dsh-self-memory: 本地離線的 DSH 經驗記憶閉環

在 DeepSeek Harness (DSH) 的開發與調試過程中,智能體經常會遇到重複性問題。如果每次都從零開始解釋背景,效率較低。我們需要一種機制,讓智能體能夠跨會話記住遇到的問題、解決方法以及腳本路徑,從而減少重複勞動。dsh-self-memory 旨在解決這一問題,通過結構化記錄和自動檢索,實現離線、零依賴的經驗記憶閉環。

插件簡介

dsh-self-memory 是一個由 cyanxi69-jpg 維護的 DSH 插件。它將會話中遇到的問題、多種解決方法、腳本文件路徑以及模型調用全過程進行結構化記錄。新會話啓動後,系統會自動檢索歷史方案並注入上下文,通過“先查、試、標命中/失敗、回寫”的流程,實現經驗的自動沉澱與複用。

核心能力

  • 結構化記錄:將問題、方案、腳本路徑與模型調用全過程結構化存儲。
  • 自動檢索與注入:新會話自動檢索歷史方案並注入上下文,支持命中與失敗反饋。
  • 零依賴與離線:純本地運行,無需外部服務,離線可用。
  • 外部導入:支持通過接口導入現有的解決方法。
  • 前提感知檢索:根據不同的前提條件返回不同的解決方案。
  • 泛化與規範化:自動生成泛化問題以增強檢索能力,支持關鍵詞規範化與同義詞表管理。

安裝與啓用

安裝該插件需要將本地目錄添加到 DSH 的插件配置中。

dsh plugin --profile web add <本目錄>

安裝後,可以通過免重啓熱掛載的方式生效:

dev_install_package {"dir": "<本目錄>"}

安裝完成後,可以通過以下命令驗證插件狀態:

selfmem_status

如果代碼更新,需要執行以下命令重載:

dev_reload_package dsh-self-memory

典型用法

1. 檢索歷史方案

當需要查找歷史經驗時,使用 selfmem_search。

selfmem_search {"query":"如何識圖"}

2. 記錄新的解決方案

記錄問題時,可以指定關鍵詞權重、適用前提以及方案內容。例如,記錄斷網時的安裝方案:

selfmem_record {"problem":"斷網時如何安裝插件","solution":"解壓本地包 → dsh plugin add <目錄> → pnpm install → dev_install_package 熱掛載","keywords":{"plugin":1,"network":0.6},"appliesTo":{"network":"no"}}

3. 標記方案結果

當智能體嘗試了歷史方案後,可以反饋結果。成功則標記命中,失敗則記錄根因。

selfmem_hit {"query":"斷網時如何安裝插件","solutionId":"s-…"}
selfmem_fail {"query":"斷網時如何安裝插件","solutionId":"s-…","rootCause":"…"}

4. 外部導入

如果有現成的知識庫,可以通過 selfmem_import 進行導入。

selfmem_import {"source":"examples/import-demo.json"}

限制與注意事項

  • 檢索方式:目前僅支持關鍵詞、泛化文本和倒排索引檢索,暫不支持向量語義檢索。
  • 數據提取:雖然會自動採集會話軌跡,但不會自動提煉爲記錄,通常需要手動調用 LLM 進行提取。
  • 存儲性能:記錄以 JSON 文件形式存儲,當記錄達到萬級後,性能可能會受到限制。

總結

dsh-self-memory 是一個專注於本地化、結構化經驗沉澱的工具。它通過簡單的命令交互,幫助 DSH 智能體構建自己的知識庫,減少重複性問題的排查成本。其開源許可證爲 MIT,項目地址見 GitHub。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜