itr-del/dsh-cue-bank0

@local/dsh-cue-bank

Cross-session memory cue bank for DeepSeek Harness: builds a persistent event-cue library (keywords, user language idiosyncrasies) and re-activates remembered event details on topic switches, mirroring human episodic recall.

包名
@local/dsh-cue-bank
版本
0.1.0
最近更新
2026年8月18日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:itr-del/dsh-cue-bank

2. 触发时机可配置

配置默认说明
topic.switchDetectiontrue开启话题切换检测
topic.switchThreshold0.25关键词重合度低于此值视为切换(0~1)
topic.scanEveryTurnfalse每轮都扫描(灵敏但开销大);false 时只在切换时扫描

3. 匹配算法:双模式可配置

模式成本/次唤醒效果适用
keyword(TF 加权穷举)0(纯本地)词面重合准确,语义弱无外部 key
vector(向量余弦)≈ ¥0.000025(见下)语义匹配强有 embedding key
auto(默认)有 key 用向量,否则降级关键词推荐

⚠️ DeepSeek 官方 API 不提供 embedding 端点(见 issue #806),向量模式走 OpenAI 兼容接口(默认 SiliconFlow BAAI/bge-m3)。库向量在写入时预计算并缓存,唤醒时只编码 1 条 query,不重复计费。

成本估算(bge-m3 / SiliconFlow,2026-08 行情):

  • 单次唤醒:编码 query ~50 tokens ≈ ¥0.000025(每 1 万次话题切换约 ¥0.25)
  • 写入时:每轮 1 次嵌入(可忽略)
  • 关键词模式:零外部成本

完整配置项

默认说明
storageRoot''空 = $DSH_HOME/storages/cue-bank
matchModeautoauto | keyword | vector
embedding.baseURLhttps://api.siliconflow.cn/v1OpenAI 兼容端点
embedding.apiKeyEnvSILICONFLOW_API_KEYAPI key 环境变量名
embedding.modelBAAI/bge-m3嵌入模型
embedding.dimensions1024向量维度
embedding.timeoutMs5000嵌入超时
topic.switchDetectiontrue话题切换检测开关
topic.switchThreshold0.25切换阈值(关键词重合度)
topic.scanEveryTurnfalse每轮扫描
topic.maxKeywords10每轮提取关键词数
inject.enabledtrue唤醒注入开关
inject.maxCues3最多注入几条记忆
inject.maxDetailChars400单条细节截断长度
extract.enabledtrue建库开关
extract.maxKeywordsPerTurn12每轮入库关键词数
extract.keywordMinLen2关键词最小长度
extract.userIdiomWindowTurns10惯用词统计窗口(轮)
extract.maxIdiomHints5唤醒时最多提示几个惯用词
dbgfalse调试日志

向量模式离线验证(未配置真实 key)

用本地 mock OpenAI 兼容 embedding 服务器验证代码路径,未调用任何真实 API

  • ✅ API 调用契约(POST /embeddings、Bearer auth、OpenAI 兼容格式)
  • ✅ 余弦相似度算法:相关文本 0.68 vs 无关文本 0.12,阈值 0.3 命中/不误报判定正确
  • ✅ 无 key 时 available=falsematchMode: auto 自动降级 keyword
  • ✅ 超时中止(AbortController)错误处理

启用向量模式只需设置 SILICONFLOW_API_KEY 环境变量(或配置 embedding.apiKey),无需改代码或配置。