免费POC,零成本试错

AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


4000字长文:使用dify搭建SOP检索问答Agent

发布日期:2025-08-15 20:21:01 浏览次数: 1512
作者:算力领跑者老王

微信搜一搜,关注“算力领跑者老王”

推荐语

SOP检索问答Agent让企业知识管理更智能,精准响应员工疑问,降低操作错误率。

核心内容:
1. 传统SOP管理的三大痛点与智能解决方案
2. Agent实现效果:自然语言交互与上下文预测
3. 从需求收集到架构搭建的具体实施流程

杨芳贤
53AI创始人/腾讯云(TVP)最具价值专家

背景介绍

为什么需要SOP检索问答Agent

标准化作业程序(SOP)是企业规范操作流程、保障服务质量的核心知识资产。但在实际应用中,传统SOP管理面临三大痛点

  • 检索低效员工需手动翻阅文档库,定位关键步骤耗时且易出错;

  • 应用门槛高复杂SOP对新员工理解困难,培训成本激增;

  • 动态更新滞后修订版SOP无法实时同步至执行端,导致操作偏差。


SOP检索问答Agent通过智能语义理解+即时知识检索技术,赋予企业以下能力:

✅ 精准秒级响应自然语言提问(如“设备故障代码102如何处理?”),自动匹配最新SOP条款;

✅ 降低人为错误结构化输出操作步骤、安全规范及关联案例,规避疏漏风险;

✅ 动态知识同步对接企业知识库,确保Agent响应与实时更新的SOP版本一致。

Agent不仅是效率工具,更是将静态文档转化为可交互式智能知识引擎,显著提升操作合规性与组织协同效能。



效果演示

SOP检索问答agent的整体实现效果是:用户通过下拉框选取文档之后点击获取全部步骤,也可以选择某个步骤进行问答,同时会根据本轮上下文信息推理用户的“下一步问题”。

下面的视频是我们SOP检索问答agent的使用方法:


实现的具体流程

前期用户需求收集(这一步非常重要哦)

大模型落地是为人服务的,一切工作都是从用户需求的出发。所以首先是知悉用户的需求,例如:如何交互?输出效果?底线要求?

以我们构建的agent为例,经过与用户沟通我们确定了以下三点要求:

  • 交互方便:省略一切不必要的操作(使用问题预测减少输入的动作)

  • 回复准确:避免因错误指导提高次品率(初期数据处理选取合适的OCR工具)

  • 响应快速:降低整体流程的耗时(避免盲目all in超大参数模型)


整体架构搭建

下面我们将分三个部分来讲解:

一、原始文件处理

本文示例以生产工艺SOP为例进行讲解。我们所有处理的文件都是pdf格式,每个步骤以表格的形式展示,包含跨页表格和单页表格,如图1、图2所示。

图1 (a)跨页表格

图1 (b)跨页表格-续

图2 单页完整表格

针对原始文件的特点,我们将pdf的每页转化为png图片,然后使用多模态模型进行处理,这部分我们参考使用的项目为 https://github.com/CosmosShadow/gptpdf

gptpdf和我们的文档处理思路很相似,先将pdf文件转化为单张png图片,然后借助多模态模型的能力进行文字提取。

虽然思路与我们完美契合,但由于我们的pdf存在跨页表格的情况,所以我们在pdf转化为图片的这一步时增加了判断,即根据当前页面表格是否包含表头为条件,将不包含表头的表格视为“续表”,与前一页进行合并,最终得到图3。

图3 拼接之后的图片

至此我们将原始pdf处理得到了图片和步骤内容。我们将每个机器的SOP存储在一个word文档内,方便后续知识库构建。(思考:我们真的需要将步骤的完整文字描述存储到知识库中吗?)

同时,为了实现用户查询整体SOP步骤,我们抽取(使用LLM)出SOP的每个步骤构建成一个txt文件,也上传到知识库中。

二、知识库的构建

Chunk:dify知识库提供的chunk方法包括两种,通用方法:按照标识符进行分块,对每个chunk进行字符长度限制,为了保证语义的连贯性,每个chunk设置重叠字符数量;父子分块:设置参考图4。

图4 分块设置

Embedding和reranker选择:因为SOP检索问答对于语义的检索较少,所以我们使用bge-reranker-large和bge-large-v1.5-zh可以满足检索需求,如图5

图5 Embedding的选择

在检索设置上我们使用了如图6的设置。因为我们会聚焦到具体的SOP文档同时每个步骤各不相同,所以召回的top_k不用过多,以免扰乱后续的生成。检索的权重设置为语义0.7、关键字0.3,召回阈值设置为0.6,但是迁移到不同的项目中,权重和阈值还是要经过一番调试才能找到最适合你项目的。

图6 检索设置

元数据的设置:为了精确定位到具体的SOP文件中,我们在知识库中设置了一个元数据model_name。如图7,同时在知识库中的每个文件中给元数据赋值,如图8.

图7 新建元数据

图8 元数据赋值

三、workflow的搭建

整体的workflow的搭建思路参照RAG的流程,包括:用户查询内容的处理知识库检索大模型整理检索内容和用户问题

用户查询内容的处理

我们在开始节点增加了一个下拉框选项(如图9),包含了全部的SOP文件名称。目的是为了增加后续知识库检索的精准性。

图9 开始节点文件名参数设置

因为当前存在两种问答方法即全部流程步骤输出和单步骤输出。所以我们需要用if-else节点做一个判断,如图10所示。

图10 判断节点

可以从图中看到,我们将dialogue_count作为一个判断条件,当dialogue_count==0,即第一轮问答时我们会先检索该SOP的全部流程并存储到会话变量sop_total中。这主要是用于用户问题和SOP步骤的匹配,给出下一个步骤。从我们的演示视频中可以看到,回答具体步骤时我们会给出当前步骤名称和下一个步骤。

图11 会话变量

后续我们将用户的问题和SOP文件名进行拼接作为知识库检索的输入。

知识库检索

将用户拼接问题作为query传输到知识库节点,同时设置元数据过滤条件,精确检索。

图12 知识库节点

大模型处理

我们将检索到的内容和用户问题作为prompt内容输入到大模型中。大家可以看到我们在prompt中要求模型只输出图片,不输出文字。这也是解答了我们预留的问题:是否需要将完整的步骤文字上传到知识库中?不需要,因为我们输出的图片中包含了完整的步骤。同时,只输出图片也节省了用户阅读文字的时间。

我们使用的模型是qwen3-30B-A3B,因为大模型只涉及对检索内容的整理输出,不需要太多大模型的能力,所以30B是最具性价比的选择。

图13 LLM节点


以上就是有关SOP检索问答工作流搭建的分享,如果有疑问或者有dify工作流搭建的问题的话欢迎留言讨论。对今天的分享感觉有帮助的话还请点赞支持!

53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询