前言¶
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