DeepSeek Harness (DSH) 的核心設計理念是「一切皆插件」。在構建需要長期上下文記憶的智能體時,如何在對話輪次間保持狀態一致是關鍵難點。yushenghai1106/dsh-memory-plugin 旨在解決這一問題,爲 DSH 提供一個可插拔的持久記憶方案。
插件定位¶
這是一個面向 DeepSeek Harness 的持久記憶插件,由開發者 yushenghai1106 維護,採用 MIT 許可證。它不依賴外部服務,直接利用 Harness 的存儲後端,爲智能體提供記憶能力。
核心功能¶
該插件提供以下能力:
- 記憶維護:支持項目事實與用戶偏好的人工維護。
- 自動保留:已完成對話的自動保留,轉化爲動態事實。
- 收件箱處理:收件箱異步預取,提升響應速度。
- 上下文召回:針對當前問題進行召回,獲取相關記憶。
- 高級檢索:支持可選的語義向量排序與本地實體共現圖。
安裝與啓用¶
安裝命令如下:
dsh plugin --profile default add @yushenghai/dsh-memory-plugin
安裝完成後,使用以下命令檢查配置是否生效:
dsh --profile default --dump-config
在配置文件中,啓用 provider: local 即可使用內置的持久化提供者。
配置說明¶
插件默認補丁了 ysh-memory 配置項,覆蓋了人工記憶、動態事實限制、自動保留策略等。在配置文件的 ysh-memory 條目中,可以覆蓋這些默認值。
以下是部分關鍵配置項:
| 配置項 | 默認值 | 作用 |
|---|---|---|
memoryCharLimit |
2200 | 會話開始時注入的項目記憶最大字符數。 |
userCharLimit |
1375 | 會話開始時注入的用戶偏好最大字符數。 |
recallLimit |
4 | 每次召回返回的最大事實數量。 |
recallMaxChars |
6000 | 加入模型請求的召回參考上下文最大字符數。 |
maxFactCount |
1000 | 保留的動態事實最大數量。 |
prefetchTtlMs |
30000 | 收件箱預取結果的緩存時長(毫秒)。 |
autoRetain |
true | 是否將已完成的對話自動保留。 |
在配置排序權重時,至少應有一個權重大於零,建議總和接近 1。
兼容性與注意¶
- 版本要求:本插件面向 DeepSeek Harness
0.1.2-alpha.2及更高版本。 - 依賴服務:所選 Profile 需要包含
@deepseek-ai/dsh-base提供的常規存儲、Agent、LLM 與工具服務。 - 存儲隔離:本地提供者使用獨立的
ysh_memory存儲域,不會與其它記憶插件共用記錄。 - 使用建議:修改權重時,建議讓它們的總和接近 1,便於理解相對排序效果。
總結¶
通過上述步驟,可以在 DSH 中接入持久記憶能力。關於該插件的詳細文檔、源碼或提交問題,可訪問插件目錄或GitHub 倉庫。