当前位置: 首页 > backend >正文

RAGFlow 接入企业微信应用实现原理剖析与最佳实践

背景

近期有医美行业客户咨询我们智能客服产品,期望将自己企业的产品、服务以及报价信息以企微应用的方式给到客户进行体验互动,提升企业运营效率。关于企业微信对接,我们分享下最佳实践,抛砖引玉。效果图如下:

这里也给大家说下我们产品 KnowFlow 企业知识库产品背景:KnowFlow 企业知识库是基于 RAGFlow 深度定开的产品,在原 RAGFlow 产品基础上,我们围绕真实客户落地后的需求反馈,迭代了一些必要的功能,实现企业知识库落地到企业的最后一公里服务。包括不限于以下产品功能点:

  • 用户和团队管理

  • 全新的 UI 交互体验

  • 回答结果支持图文混排

  • 支持 MinerU 等 OCR 引擎增强文档解析能力

  • 增强三方接入能力

关于三方接入,近期经过调研,其实目前整个行业产品形态处于特别初期的阶段,有很大的提升空间,后续 KnowFlow 将会进一步增强三方接口的能力以及配套产品体验。

企业微信应用

企业微信的应用共分为基础应用、三方应用、自建应用。

基础应用:企业微信平台默认提供的一些基础功能和应用。包括像【打卡】、【审批】、【会议】、【微文档】、【邮箱】、【日程】等;

三方应用:第三方服务商(如钉钉打卡宝、OA系统开发商等)为多个企业提供服务所开发的应用,由软件服务商开发,企业在应用市场中选择安装;

自建应用:企业自身开发并使用,仅为自己公司服务的应用。企业开发人员或外包开发,仅面向本企业内部用户

图片

对于智能客服场景,我们选择的自建应用,因客户期望自己能维护知识库,并可以进行校正标注,自建应用可以很方便承载客户需求。

实现原理

要想实现企微的对接,核心的流程如下:

 1.收到消息 ---> 2.产生回复 ---> 3.包装回复 ---> 4.发送回复

要想收发企业微信的消息,比较关键的问题是如何将已有的企业知识库产品和企业微信进行打通。因考虑到产品的扩展性和可维护性,需要持续适配微信、公众号、飞书、钉钉等应用。经过评估,我们选择了 chatgpt-on-wechat 项目对接三方。该项目的优势核心在于开放性,已封装好和各大平台的收发信息接口。我们通过他提供的插件能力迅速的个性化开发。

图片

在上述包装回复阶段,基于 RAGFlow 已开放的 API 能力,我们可以很方便的获取到调用 RAGFlow 的 API。

图片

产品细节

众所周知,企微里支持文本、图片、语音、图文混排等消息类型。如需要全面对接企业微信,是需要花很大精力进行产品设计。

  • 如给客户发节假日祝福,此时如用图文信息,可能会更加适合。

图片

  • 如知识库内容包含图片,是否需要把图片信息发到企业微信

  • 如文档中存在敏感词,是否需要进行过滤

  • 企业微信不支持 MarkDown 语法格式,知识库文本格式如何适配等等

上述问题我们经过不断地调优和迭代,最终实现了现在的产品效果。我们站在客户视角来看, 就会发现诸多产品的瑕疵和问题,但正也是因为这些问题,倒逼着我们的产品朝着更好的方向持续演进。

总结

受制于篇幅,本文着重介绍了企微应用该场景,事实上企业微信近期还推出了「智能机器人」产品,可以在群聊里提供智能机器人能力。这里就不再展开,有兴趣的同学可以深入交流交流。另外 KnowFlow 发布了 v0.2.0 版本,图文混排能力再度升级,支持自定义分块以及坐标溯源在保障文档解析和分块效果的前提下准确定位分块在原文档的位置。

上述所有源码均已开源,欢迎关注「KnowFlow 企业知识库」获取源码和相互交流。

未来展望

RAG 系统最核心的无非是准确性和回复速度,后续将会专注解决 KnowFlow 实战场景下的专项问题,如 Excel 解析MCP 对接提速回复速度等。

http://www.xdnf.cn/news/3846.html

相关文章:

  • IP 协议
  • 性能优化实践:内存优化技巧
  • iview 老版本合并单元格
  • 基于Hive + Spark离线数仓大数据实战项目(视频+课件+代码+资料+笔记)
  • Linux环境部署iview-admin项目
  • gitblit安装教程,搭建一个属于自己的Git版本仓库
  • Python读取comsol仿真导出数据并绘图
  • 【操作系统】哲学家进餐问题
  • 【前缀和】和为 K 的连续子数组
  • 软件检测价格受多种因素影响,你了解多少?
  • 【SAP】FISL的应用
  • 2023华为od机试C卷【跳格子3】
  • 高维亚空间超频物质变压缩技术 第27次CCF-CSP计算机软件能力认证
  • 《应用开发突围指南:敏捷开发的实战精髓》
  • 2001-2021年各城市平均风速数据(可作工具变量)
  • INP指标
  • 【C++贪心 图论】P7903兜心の顶|普及
  • 【算法刷题笔记day one】滑动窗口(定长基础版)
  • Java 反序列化
  • Mybatisplus:一些常用功能
  • ReentrantLock
  • C语言-回调函数
  • 大客户销售大客户营销50个常见概念及其英文表达。AI大客户销售B2B大客户营销关键概念集合
  • 全参数解读Qwen 3 系列模型 + 本地部署实操 + 多维度能力深度测评
  • 计算机总线系统入门:理解数据传输的核心
  • 动态功耗与静态功耗
  • 从零开始理解 C++ 后端编程中的分布式系统
  • Runnable组件重试机制降低程序错误率
  • 深度解析ComfyUI的使用
  • Linux常用命令29——delgroup删除组