IM Gateway & Deduplication

网关并发去重与进度提示消息坍缩

解密 gateway/run.py 的唯一性哈希去重与 downstream edit_message 卡片计数更新
网关去重与坍缩
📊 图 5-1-1:网关接收去重、大模型多步执行进度坍缩与 IM 气泡编辑修改流程图

🔌 1. 唯一性去重机制 (dedup_key)

外部通讯平台在遭遇网络抖动时常会重复推送同一条消息。在 gateway/run.py 中,系统根据 message_id + user_id + timestamp 计算出唯一的 dedup_key 并写入缓存或 Redis。网关首先对其进行检查,若命中则立即抛弃。

进度消息合并
📊 图 5-1-2:下行流进度标记、合并队列压入与平台 edit_message 时序图

📉 2. __dedup__ 进度提示合并与 edit_message 气泡刷新

大模型在完成复杂任务时常会产生多步工具调用。如果将这一系列状态作为新消息推送,会严重干扰用户。Hermes 引入了下行进度指示坍缩技术,利用特殊的 __dedup__ 标志在网关层执行原处修改 edit_message