习得贴纸:贴纸识别流水线 + search_stickers 检索 #70

Closed
opened 2026-07-25 02:18:25 +00:00 by KumaAgent · 0 comments
Member

Parent

#66 [PRD] arise 长尾记忆与感知增强(mood_congruence + 环境遥测 + 记忆深度搜索 + 习得贴纸 + 跨平台资料拉取)落地

What to build

机器人能记住群里常用的一些贴纸/表情包是什么意思,供它自己之后发贴纸时用得上。识别流水线独立于两级门控异步跑,不会因为识别一张贴纸拖慢当轮回复速度,per-chat 默认关闭(opt-in,采集他人内容默认保守)。

Acceptance criteria

  • MediaKind 新增 "sticker" 取值(现有仅 "image"/"video"/"audio" 三态),只有 kind="sticker" 的媒体才进入识别流程,普通图片("image")不触发这条流水线
  • 触发点为 fire-and-forget 异步识别:收到带 kind="sticker" 媒体引用、且发送者非机器人自己的消息时,立即异步发起一次无工具 VLM 描述请求(复用既有"新鲜上下文、无工具旁路请求"调用模式,目标是产出"这个贴纸的含义/使用场景"而非"描述画面内容"),不阻塞当轮门控评估/回复延迟,即便这轮机器人最终选择沉默不回应,识别本身也照常发生
  • per-chat 默认关(opt-in,心智模型同 /settool),未开启的 chat 完全不触发识别流程,不产生任何 VLM 调用
  • 按贴纸文件标识(平台稳定 ID/hash,由 host 在 MediaRef 里提供)精确去重,同一贴纸已识别过则跳过,不重复调用、不重复落库
  • 写入治理复用 Knowledge 形状:sensitivity fail-closed 打标、per-chat_id 作用域、落库前过人设漂移守护否决闸
  • 新增工具 search_stickers(query)(同 search_memory 先例,不经工具港,不整份注入),供 send_message 发贴纸时按需查询;与资源 port 的 host 静态贴纸目录并存不合并
  • 这个学习是持续增量的,只做功能开启后的实时增量识别,不做历史消息回顾批量重新分析
  • 纯函数测试(去重判定/sensitivity 打标)
  • 异步识别流水线测试(用假 VLM 客户端驱动,验证不阻塞回复延迟、门控判沉默时识别依然发生)
  • 写入治理测试(复用 Knowledge 测试模式验证人设漂移守护拦截路径)
  • search_stickers 工具测试(仿 search_memory
  • per-chat 开关关闭时零 VLM 调用的测试

Blocked by

None — can start immediately

## Parent #66 [PRD] arise 长尾记忆与感知增强(mood_congruence + 环境遥测 + 记忆深度搜索 + 习得贴纸 + 跨平台资料拉取)落地 ## What to build 机器人能记住群里常用的一些贴纸/表情包是什么意思,供它自己之后发贴纸时用得上。识别流水线独立于两级门控异步跑,不会因为识别一张贴纸拖慢当轮回复速度,per-chat 默认关闭(opt-in,采集他人内容默认保守)。 ## Acceptance criteria - [ ] `MediaKind` 新增 `"sticker"` 取值(现有仅 `"image"`/`"video"`/`"audio"` 三态),只有 `kind="sticker"` 的媒体才进入识别流程,普通图片(`"image"`)不触发这条流水线 - [ ] 触发点为 fire-and-forget 异步识别:收到带 `kind="sticker"` 媒体引用、且发送者非机器人自己的消息时,立即异步发起一次无工具 VLM 描述请求(复用既有"新鲜上下文、无工具旁路请求"调用模式,目标是产出"这个贴纸的含义/使用场景"而非"描述画面内容"),不阻塞当轮门控评估/回复延迟,即便这轮机器人最终选择沉默不回应,识别本身也照常发生 - [ ] per-chat 默认关(opt-in,心智模型同 `/settool`),未开启的 chat 完全不触发识别流程,不产生任何 VLM 调用 - [ ] 按贴纸文件标识(平台稳定 ID/hash,由 host 在 `MediaRef` 里提供)精确去重,同一贴纸已识别过则跳过,不重复调用、不重复落库 - [ ] 写入治理复用 Knowledge 形状:sensitivity fail-closed 打标、per-chat_id 作用域、落库前过人设漂移守护否决闸 - [ ] 新增工具 `search_stickers(query)`(同 `search_memory` 先例,不经工具港,不整份注入),供 `send_message` 发贴纸时按需查询;与资源 port 的 host 静态贴纸目录并存不合并 - [ ] 这个学习是持续增量的,只做功能开启后的实时增量识别,不做历史消息回顾批量重新分析 - [ ] 纯函数测试(去重判定/sensitivity 打标) - [ ] 异步识别流水线测试(用假 VLM 客户端驱动,验证不阻塞回复延迟、门控判沉默时识别依然发生) - [ ] 写入治理测试(复用 Knowledge 测试模式验证人设漂移守护拦截路径) - [ ] `search_stickers` 工具测试(仿 `search_memory`) - [ ] per-chat 开关关闭时零 VLM 调用的测试 ## Blocked by None — can start immediately
Yushu closed this issue 2026-07-27 02:31:01 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ProjectKuma/arise#70
No description provided.