dsh-neuron-memory:仿神經元分層記憶與 3D 記憶星雲面板

前言

在 DeepSeek Harness(DSH)裏做長會話或跨會話協作時,常見做法是把歷史整段塞進上下文,或依賴宿主壓縮後丟失細節。上下文越長,成本與噪聲越高;壓縮後,項目進度和事實也容易斷檔。下面介紹社區插件 dsh-neuron-memory(維護者 shadowRjh,GitHub shadowRjh/dsh-neuron-memory):本地分層記憶、按相關性注入,並帶 3D 星雲面板,數據落在 ~/.dsh/memories/.neuron/,不聯網、無遙測。

這是什麼

dsh-neuron-memory 是給 DSH 的「仿神經元記憶框架 + 3D 記憶星雲面板」插件(npm 包名 dsh-neuron-memory,當前資料中版本 2.7.0,MIT 許可證)。記憶不是全量進上下文,而是:對話片段先進海馬體緩衝,定時夜巡歸檔到可審計 JSONL 記憶庫,用戶開口時按關鍵詞(可選向量)打分,只注入前 N 條;命中會強化權重並重置衰減,模擬間隔重複。

記憶怎麼流轉

一輪對話結束後,插件會把原文歸類進海馬體(去重、過濾 system-reminder 等噪音)。默認每天 03:10 夜巡:按關鍵詞分池寫入記憶庫,並生成 patrol/YYYY-MM-DD.md 報告;也可隨時手動觸發。各池獨立配置寬限期、半衰期、歸檔天數,有效權重按艾賓浩斯公式衰減;超出單條 2KB、每池 200 條等硬上限時會裁剪或按權重歸檔。

用戶再次說話時,中文按二元組、英文按詞切分,用 相關度 × 0.75 + 有效權重 × 0.35 排序,默認只注入 6 條 / 900 字,不注入全量。注入在宿主側每輪重新計算,上下文被壓縮後仍可重新命中;所有會話共享同一記憶庫。

交接層(handoff):handoff.md 覆蓋寫、硬上限 4KB;v2.3 起每輪只注入「項目 / 下一步 / 卡在」三行(默認 ≤600 字),全量仍存盤,每 12 輪或超過 800 字可自動壓縮並重寫,舊版留檔。

核心能力(資料已列)

  • 海馬體緩衝:(role + 文本) 去重,可配置是否收錄 assistant、緩衝條數與單條字數上限。
  • 夜巡歸檔:定時或 neuron_patrol 立刻執行;patrol 段可設 autoArchive、maxArchivePerRun 等。
  • 工具面:neuron_status、neuron_recall、neuron_remember、neuron_archive、neuron_touch、neuron_patrol、neuron_forget、neuron_handoff、neuron_search(多幀 zstd 歷史會話關鍵詞搜原文)。
  • 翻舊賬:解壓歷史會話歸檔,找回被壓縮掉的對話細節(neuron_search;Node.js ≥22.15 用於 zstd,資料寫明 DSH 0.2.1 自帶 Node 24)。
  • 生態橋(可選):讀 dsh-feiyu-mood 的 ~/.dsh/feiyu-mood/state.json 注入心情;讀 dsh-fish-memory 的 JSON,首次啓動或 neuron_import_fish 導入長期事實進「核心」池。
  • 情緒層:心情變化 ≥5 可落情緒記憶;與召回加權、面板時間線等相關行爲見 README。
  • 向量檢索(可選):retrieval.vector.enabled 開啓後用本地 embedding(Ollama bge-m3 或 OpenAI 兼容接口),與關鍵詞混合;服務不可用則退回關鍵詞。
  • 3D 星雲面板:中心 DSH → 記憶池 / 交接 / 心情 → 條目;外圈會話、思維鏈、服務、花費、插件、系統等;多套主題(星雲 / 皮層 / 矩陣 / 極簡),條目被想起時有任務信號脈衝。
  • 遷移:首次啓動若存在舊 dsh-chain 的 ~/.dsh/memories/.chain-shared/chains.jsonl,會一次性遷入記憶庫。

安裝與啓用

安裝命令以 README 爲準:

# 從 npm(發佈後)
dsh plugin --profile <profile> add dsh-neuron-memory

# 本地源碼
dsh plugin --profile desktop add link:/path/to/dsh-neuron-memory

重啓 DSH 後,會話界面會出現 「神經元」 標籤。

兼容性(README):DSH >=0.2.0-rc.2 <0.3.0-0;Node.js >=22。

配置要點

改 ~/.dsh/memories/.neuron/config.json,下一輪生效。示例結構如下(字段以倉庫 README 爲準):

{
  "capture":   { "enabled": true, "includeAssistant": true, "maxHippocampus": 400, "maxChars": 1200 },
  "injection": { "budgetChars": 900, "maxItems": 6, "minWeight": 0.08 },
  "patrol":    { "hour": 3, "minute": 10, "autoArchive": true, "maxArchivePerRun": 24 },
  "limits":    { "maxEntryChars": 2000, "maxPerPool": 200, "handoffMaxChars": 4000 },
  "handoff":   { "enabled": true },
  "pools": {
    "core":    { "label": "核心", "halfLifeDays": 60, "graceDays": 20, "archiveDays": 180 },
    "fact":    { "label": "事實", "halfLifeDays": 45, "graceDays": 10, "archiveDays": 120 },
    "skill":   { "label": "技能", "halfLifeDays": 90, "graceDays": 20, "archiveDays": 365 },
    "daily":   { "label": "日常", "halfLifeDays": 20, "graceDays": 5,  "archiveDays": 90  },
    "emotion": { "label": "情緒", "halfLifeDays": 3,  "graceDays": 1,  "archiveDays": 14  }
  }
}

本地目錄概覽:

~/.dsh/memories/.neuron/
  hippocampus.jsonl      原始片段(待歸檔)
  entries.jsonl          記憶庫
  handoff.md             交接層
  handoff-history.jsonl  舊交接留檔
  config.json
  patrol/YYYY-MM-DD.md   夜巡報告

典型用法

  1. 安裝並重啓後,正常對話即可自動寫入海馬體;需要總覽時讓 Agent 調用 neuron_status。
  2. 要主動記下事實:neuron_remember(默認進海馬體,可指定池)。
  3. 跨會話前先寫交接:neuron_handoff 覆蓋更新 handoff.md,新會話會固定注入精簡三行摘要。
  4. 上下文裏已經找不到的原話:用 neuron_search 或 neuron_recall 按關鍵詞回想(命中會 touch,權重 +0.15)。
  5. 不想等夜巡:執行 neuron_patrol 立刻歸檔並生成當日報告。

適用場景與注意

適合需要 本地、可審計、有遺忘曲線 的長期記憶,又不想每輪全量灌上下文的 DSH 用戶。面板與可選向量檢索會讀本機文件或 localhost 服務;記憶內容是對話原文,分享數據前需自行脫敏。

插件以 當前 DSH 進程權限 讀寫 ~/.dsh/ 下文件。DSH 社區目錄(如 SkillHub 插件頁)是獨立站點,與 DeepSeek / 幻方無官方從屬關係;安裝前建議閱讀源碼與 MIT 許可證,確認符合你的安全與合規要求。

結尾

dsh-neuron-memory 把「捕獲 → 歸檔 → 相關性注入 → 遺忘與強化」做成可配置流水線,並用 3D 面板把池、交接與心情可視化。目錄與詳情見 SkillHub:dsh-neuron-memory,源碼與完整工具表見 GitHub:shadowRjh/dsh-neuron-memory。

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

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

小夜