在企业微信多模态交互场景中,客户发到外部群的诉求往往不仅是一段文字,还经常伴随着报错截图、付款凭证图片或是包含长篇诉求的 Word 文档。如果机器人只懂得处理纯文本,将流失大量高价值的业务线索。

要构建一个能“看懂图、读懂字”的全能机器人中台,核心在于建立一套基于 MsgType 的多模态分发流水线(Multi-modal Pipeline)。以下是纯逻辑架构的分层处理策略:

一、 统一拦截与 MsgType 第一级路由

当企业微信底层的回调数据包到达网关时,绝不能用一套逻辑去强行解析。网关的第一要务是抓取报文中的 MsgType 字段,并将其分发到不同的处理管道:

  • 识别为 text(文本): 直接放行至 NLP(自然语言处理)或正则表达式引擎。

  • 识别为 image(图片): 文本引擎无法解析图片,立刻将其路由至视觉提取模块。

  • 识别为 file(文件/附件): 路由至文件解析模块。

二、 文本类型(Text)的降噪与抽取

对于纯文本消息,处理重点在于“清洗”和“意图识别”。

  1. 脱水降噪: 利用正则剥离掉报文内容(Content)中包含的 @机器人昵称、多余空格以及无意义的语气词。

  2. 提取实体: 如果识别到“查单”意图,从文本中提取出由字母和数字组成的订单号参数;如果识别到“报修”,提取出故障描述文本,随后打包交由后台 ERP 或工单系统处理。

三、 图片类型(Image)的转存与视觉识别

当客户发来一张设备故障截图或转账凭证时,处理链路会更加复杂,必须实现“媒体资源与业务逻辑的桥接”。

  1. 资源定位: 从 image 类型的报文中,精准提取出图片的直链地址(如 PicUrl)或媒体资源标识(如 MediaId)。

  2. 异步下载与转存: 绝对不能在接收网关直接下载图片。必须将 PicUrl 推入后台队列,由专门的 Worker 进程负责下载图片,并将其转存到企业自己的 OSS(对象存储)中,以防微信临时链接过期。

  3. OCR 或大模型识别: 将存好的图片丢给 OCR 引擎提取发票税号,或者传给多模态大语言模型(如 GPT-4V、通义千问 VL)让其直接描述“设备红灯报错内容”。

  4. 业务收口: 将视觉识别出的“文字结果”转换回标准的业务意图标签,推入与普通文本相同的业务处理队列,实现殊途同归。

四、 统一上下文与结果下发

无论客户发的是文本还是图片,最终在系统内部都必须收敛为一个包含 RoomId(群号)、FromUserName(发言人)以及 BusinessIntent(业务意图)的标准任务包。内部 ERP 系统处理完该任务后,再将结果组装为合适的卡片格式下发回对应的群聊。

在对接多模态数据包时,图片、文件以及富媒体卡片的 JSON 嵌套层级与普通文本完全不同。为了精准抓取各类媒体字段(如 PicUrl、MediaId)以及回传精美图文卡片,请在开发前严格比对以下底层通道的数据字典与规范:

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐