4000字长文:使用dify搭建SOP检索问答Agent
SOP检索问答Agent正在让企业知识管理这件事变得真正"智能"起来——员工问一句就能拿到准确答案,操作中的各种错误率也随之大幅下降。这背后,其实是把静态文档变成可交互的智能引擎。
为什么需要SOP检索问答Agent?
标准化作业程序(SOP)是企业规范操作流程的核心资产,但传统管理方式一直有三个老大难:
- 检索太慢:员工得自己翻文档库,找一条关键步骤往往要花好几分钟,还容易漏;
- 上手太难:新员工面对复杂的SOP一脸懵,培训成本居高不下;
- 更新滞后:SOP修订了,执行端看到的还是旧版本,操作偏差就这么来的。
而SOP检索问答Agent通过智能语义理解加即时知识检索,能带来这些改变:
- :像"设备故障代码102如何处理?"这样的自然语言问题,自动匹配最新版SOP条款;
精准秒级响应
- :结构化输出操作步骤、安全规范以及关联案例,把疏漏风险压到最低;
降低人为错误
- :对接企业知识库,Agent回答的内容永远和实时更新后的SOP版本保持一致。
动态知识同步
说到底,这个Agent不只是效率工具,它把静态文档变成了可以问答的智能知识库,让操作合规性和团队协作效率都上了一个台阶。
效果演示
实现的具体流程
前期用户需求收集(这一步非常重要
)
大模型落地是为人服务的,一切工作都要从用户需求出发。所以首先要搞清楚:用户希望怎么交互?输出长什么样?底线要求是什么?
以我们构建的这个Agent为例,经过与用户沟通,确定了三点核心要求:
- :省略一切不必要的操作(通过问题预测减少用户的输入动作);
交互方便
- :避免因为错误指导而提高次品率(初期数据处理需要选对OCR工具);
回复准确
- :降低整体流程的耗时(不能盲目上超大参数模型)。
响应快速
整体架构搭建
下面分三个部分来讲:
一、原始文件处理
以生产工艺SOP为例。所有文件都是PDF格式,每个步骤以表格形式展示,有跨页表格和单页表格两种,如图1、图2所示。
针对原始文件特点,我们把PDF的每页转为PNG图片,然后使用多模态模型进行文字提取。这部分参考了开源项目 gptpdf——思路很相似:先把PDF转成单张PNG,再借助多模态模型提取文字。
但我们的PDF存在跨页表格的情况,所以转图片时增加了判断:如果当前页表格不包含表头,就视为"续表",与前一页合并,最终得到图3。
至此,原始PDF被处理成了图片和对应的步骤内容。每个机器的SOP存为一个Word文档,方便后续构建知识库。
(思考:我们真的需要把步骤的完整文字描述存到知识库中吗?)
同时,为了实现用户查询整体SOP步骤,我们用LLM抽取每个步骤,构建成一个txt文件,也上传到知识库中。
二、知识库的构建
Chunk
Embedding和reranker选择
检索设置上用了图6的配置。由于聚焦到具体SOP文档,且每个步骤各不相同,召回的top_k不宜过多,以免干扰后续生成。检索权重设为语义0.7、关键字0.3,召回阈值0.6。当然,迁移到不同项目时,权重和阈值还是需要一番调试才能找到最佳值。
元数据设置
三、Workflow的搭建
整体workflow思路参照RAG流程,包括:
用户查询内容处理
知识库检索
大模型整理检索内容和用户问题
用户查询内容处理
当前存在两种问答方式——全部流程步骤输出和单步骤输出,所以需要用if-else节点做判断,如图10。
从图中可以看到,dialogue_count作为判断条件:当dialogue_count==0(即第一轮问答)时,先检索该SOP的全部流程并存储到会话变量sop_total中。这用于将用户问题和SOP步骤匹配,并给出下一步骤。从演示视频中看到,回答具体步骤时会同时给出当前步骤名称和下一步骤。
后续将用户的问题和SOP文件名拼接起来,作为知识库检索的输入。
知识库检索
大模型处理
使用的模型是qwen3-30B-A3B。大模型主要做检索内容的整理输出,不需要太强的能力,所以30B是最具性价比的选择。
-
- 关于宇宙的好的网名有哪些
- 角色扮演 | 1
- 网名