继上一篇文章,本次主要做了一些workflow和Agent的应用实现,供大家参考。主要目的是为了进行两个内部报告文件的内容对比,特别是报告中的各类审批表、申请表、推荐表和流程对比,本地数据通过知识库方式分别加载到两个知识库中,编制工作流针对同一个问题进行知识库检索,之后将查询结果进行合并,再一起提交给LLM进行对比,最终将对比分析结果以markdown方式返回显示。主要包括如何构建知识库,如何设计workflow、如何将工作流发布为工具、如何设计提示词、如何在agent中引入前面发布的工具,最终通过agent实现与用户友好的问答交互。具体如下。
一、知识库构建
这部分内容主要是准备两个markdown文件,用户构建两个知识库,分别为科技知识库和标准知识库,直接采用dify的知识库构建功能实现,知识选择embedding模型时尽量选择成熟的维度大一点的模型即可,比如bge-m3或nomic-embed-text等。
二、工作流设计
1.构建workflow流程:利用dify创建workflow应用,主要实现从用户输入问题到最终内容分析对比的结果反馈,将该任务进行步骤分解,主要包括用户问题输入接收、用户意图识别、分类知识检索、结合知识库的内容对比分析,分析结果回复等。详见下图。