dify可通过构建iso标准知识库与结构化工作流自动识别文档是否符合iso条款。需下载并清洗标准pdf为txt,上传至dify知识库分块处理;工作流包含文档解析、条件路由、rag检索及合规审查llm节点,输出带依据的json修正建议,并通过审计中间件校验标准有效性与可追溯性。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要让Dify自动识别上传的行业文档是否符合ISO标准条款(如ISO 9001:2015第8.5.1条“生产和服务提供的控制”),而非依赖人工逐条比对——这要求工作流能精准定位条款位置、匹配最新版标准原文、并输出带依据引用的修正建议。
准备ISO标准知识底座
从ISO官网或国家标准化管理委员会(SAC)下载目标标准的正式中文版PDF,仅保留“范围”“规范性引用文件”“术语和定义”及核心条款章节;【必须删除页眉页脚、修订说明、附录非强制性内容,否则RAG会召回无关段落】
用PDF转纯文本工具(推荐pdfplumber)提取文字,手动校对OCR错字,尤其注意数字编号(如“8.5.1”不能误为“8.51”)和英文缩写(如“PDCA”);保存为UTF-8编码的TXT文件,文件名格式为“ISO_9001_2015_条款正文.txt”。
在Dify知识库中新建知识集→选择“本地文件”→上传该TXT文件→勾选“启用分块”→分块大小设为256,重叠长度设为32;【分块过大会导致条款边界模糊,过小则丢失上下文语义】
构建条款定位与匹配工作流
在Dify工作区创建新Workflow应用→添加第一个节点:文档解析器→输入类型选“PDF”,务必勾选“保留原始段落编号结构”;该选项决定后续能否准确定位“第8.5.1条”而非笼统返回“第8章”。
第二节点接“条件路由”→设置判断逻辑:若文档标题含“质量管理体系”或“Quality Management System”,则进入“ISO9001审查流”;若含“环境管理体系”,则进入“ISO14001审查流”;其余直接终止流程并提示“未识别标准类型”。
第三节点为“RAG检索器”→连接前述ISO知识库→设置Top-K=1,相似度阈值调至0.75;低于此值视为无匹配条款,不触发LLM审查。
配置结构化合规审查LLM节点
方法一:使用Qwen2.5-72B-Instruct模型
系统提示词必须包含三要素:
①你是一名持有CNAS认可资质的ISO审核员,专注制造业质量体系认证;
②仅输出严格JSON格式,字段为{“条款位置”:“ISO 9001:2015 第8.5.1条”, “原文依据”:“组织应在受控条件下进行生产和服务”, “偏差描述”:“未规定具体受控条件如作业指导书、设备校准记录”, “修正建议”:“补充《生产过程控制程序》明确作业指导书编号及设备校准频次”};
③若完全符合则返回空数组[]。
方法二:使用DeepSeek-VL多模态模型(适用于含图表的ISO标准)
启用“图像理解”开关→在提示词中追加:“若条款涉及流程图或表格,请同步分析图示要素是否与文字描述一致”;此模式可识别标准中“图1:PDCA循环示意图”与文本描述的逻辑冲突。
注入合规性审计中间件
第一步:在Dify插件目录plugins/下新建iso_compliance_hook.py,实现validate_output()方法:
第二步:读取LLM输出JSON中的“条款位置”字段,正则匹配标准编号(如ISO\s+\d+:\d+)→若匹配失败则标记compliance_flags为“STANDARD_REF_INVALID”;
第三步:调用Dify内置的法规时效性检查API(/v1/compliance/validity?standard=ISO9001:2015)→若返回status=“deprecated”则强制拦截并返回“该标准版本已废止,建议升级至ISO 9001:2025草案版”;
第四步:将audit_id、input_hash、kb_source_refs写入审计日志表,确保每条审查结论可追溯至原始标准文本哈希值。











