前言¶
DeepSeek Harness(DSH)把能力拆成可插拔插件,agent 在羣聊、評論區裏經常會碰到用戶發的表情包。對模型來說,這類輸入往往只是一條本地路徑或一張圖,缺乏「什麼意思、什麼語氣、現在還能不能跟」的上下文。人可以用圈層經驗補全,agent 若沒有專門能力,就容易誤讀或硬接梗。
下面介紹維護者 whatif146 發佈的 dsh-memelens(分類:模型推理)。它在宿主上註冊工具,用你自配的視覺模型(BYOK)解讀圖片,並在本地用帶衰減的記憶複用結論,同時給出玩梗與不玩梗兩版回覆建議。本文事實均來自 GitHub 倉庫 README 與 SkillHub 目錄頁。
這是什麼¶
dsh-memelens 是一個 DSH 插件(@deepseek-ai/cordis 生態,main 爲 src/index.js),目標不是「幫人認表情包」,而是讓 agent 在用戶貼圖時 能拿到:含義、語氣、出處、新鮮度、可搭配的梗、不宜混用的組合、場合邊界,以及 玩梗版 / 不玩梗版 回覆草稿。
插件本身不含模型與 API 密鑰:圖片只發往你在配置裏指定的 OpenAI 兼容視覺端點。同一張圖再次命中本地記憶時,可複用結構化結論而不再外發圖像。
核心能力與流水線¶
處理路徑¶
README 給出的流水線如下:
圖片 → 指紋 → 記憶檢索
├─ 想得起來 → 直接複用(0 成本),並加深記憶
└─ 想不起來/過期 → 視覺模型(你的 key)→ 結論 → 寫回記憶
當前指紋爲 sha256;轉發壓縮後可能失配,路線圖中提到擬用感知哈希(pHash)改進,狀態爲待接入。
記憶:間隔效應與漸進遺忘¶
本地記憶顯式建模了三條規則:
- 間隔效應:同一梗被回想越多,衰減越慢(README 表示見過一次約 30 天淡化,見過五次可支撐更久)。
- 漸進遺忘:強度連續衰減,分清晰 / 模糊 / 想不起來;想不起來時會重新走視覺解讀,查完強度回升。
- 忘掉舊梗是預期行爲:避免把多年前的梗以滿強度用在當前對話裏。
可選配置項 memory.halfLifeDays(默認 30)與 README 中的半衰期示例表對應。
梗的組合與共現¶
兩個梗在 5 分鐘內 被先後問到,會在本地庫累加共現計數。後續解讀時,這些統計作爲參考證據交給模型,並區分「能一起用」與「不能混着用」。
界限與兩版回覆¶
每條回覆建議強制兩版:玩梗版 與 不玩梗版。卡片側包含 boundary(場合與對象)、risk(冒犯風險;high 時不建議順着玩)。置信度低時,規則傾向「別玩,說人話」。
宿主工具¶
README 標明已註冊宿主工具 meme_explain(實現見 src/index.js)。具體調用參數以你當前 DSH / Cordis 環境下的工具 schema 爲準。
當前限制(README 狀態表)¶
| 能力 | 狀態 |
|---|---|
| 以字搜梗(來源實證檢索) | 待接入 |
| 抗壓縮的感知哈希指紋 | 待接入 |
| 純畫面梗(圖上無字) | 已知短板,依賴模型自身知識 |
冒煙測試可在不聯網、無真實 key 的情況下運行:
node scripts/smoke.mjs
安裝與啓用¶
README 給出的安裝方式爲 本地開發鏈接(需將佔位符換成本倉庫在你機器上的絕對路徑):
dsh plugin --profile desktop add "link:<本倉庫絕對路徑>"
安裝前建議自行閱讀倉庫源碼與 MIT 許可證;插件以當前 dsh 進程權限運行,並會讀寫 $DSH_HOME 下的本地數據。
運行環境:package.json 要求 Node ^22.19.0 || >=24.0.0,並對 @deepseek-ai/cordis、@deepseek-ai/dsh-tools、@deepseek-ai/schemastery 有 peer 依賴。
配置說明¶
vision 下三項 baseURL、apiKey、model 缺一,插件會 關閉 而非拋錯,調用時提示去配置。apiKey 支持 ${env:VAR} 插值。
- id: dsh-memelens
name: dsh-memelens
config:
vision:
baseURL: https://ark.cn-beijing.volces.com/api/v3 # 或任何 OpenAI 兼容端點
apiKey: ${env:ARK_API_KEY} # 建議走環境變量
model: doubao-1.5-vision-pro
timeoutMs: 45000 # 可選,默認 45s
maxImageBytes: 4194304 # 可選,默認 4MB
jsonMode: true # 可選,服務端不支持 response_format 就設 false
memory:
halfLifeDays: 30 # 可選,記憶半衰期,見上表
典型可選環境變量示例:爲方舟等端點設置 ARK_API_KEY,並與 baseURL、model 指向同一廠商。
本地數據與隱私¶
- 本地庫路徑:
$DSH_HOME/memelens/index.jsonl,追加寫入,每行一條 JSON(含kind、card、fingerprints、reinforcements、combos等字段)。 - 圖只發往你配置的端點,插件不經第三方中轉;不落盤用戶原圖,庫中存結構化結論與指紋。
- 同一張圖第二次調用走記憶,不再外發圖像。
- 不宜整張聊天截圖直接傳入:應先裁到表情包本體;超過
maxImageBytes會被拒絕並提示。
適用誰、注意什麼¶
適合在 DSH 上開發 需要理解中文語境表情包 的 agent:客服輔助、社羣機器人、評論分析等,且你能接受 自備視覺模型密鑰 與 本地記憶文件 的運維方式。
不適合期待「零配置、內置模型」或「純畫面梗穩定識別」的場景——後者在 README 中仍標爲短板。
社區目錄 SkillHub 與 GitHub 倉庫獨立維護;DSH 生態理念是「一切皆插件」,該目錄站點與 DeepSeek / 幻方無官方從屬關係。
小結¶
dsh-memelens 把「看圖解讀梗」做成可複用的 DSH 插件:BYOK 視覺調用、帶衰減的本地記憶、共現組合與雙軌回覆建議,並通過 meme_explain 暴露給宿主。若要試用或貢獻,可從倉庫 README 的安裝與配置節按步驟接入。
- 目錄頁:https://www.skillhub.cn/plugins/whatif146/dsh-memelens
- GitHub:https://github.com/whatif146/dsh-memelens