DeepSeek+dify 本地知识库:高级应用Agent+工作流,收藏这一篇就够了!!

📅 2026/8/27 17:43:00
DeepSeek+dify 本地知识库:高级应用Agent+工作流,收藏这一篇就够了!!
前言dify的强大在于其灵活性主要体现在智能体和工作流上。它可以让一个没有编程能力的人通过简单学习快速搭建Agent和自动化流程。就像拼积木一样。我们可以通过智能体或工作流自定义工具完成很多我们好玩的功能。本文前面主要是介绍一些组件有编程能力的同学建议直接跳过。报文篇幅较长简单说下内容1dify面板功能的介绍重点知识库里的内容2dify工作流介绍包括主要节点3Agent的应用4工作流应用dify 主要功能dify的主要应用功能已经在导航上显示了。探索在这个模块里dify给我们内置了一些应用模板以降低我们的学习使用成本。按照分类已经帮我们罗列好了我们可以点击对应的分类查询看中哪个鼠标放上去点击添加到工作区即可。工作室1工作室主要是当前工作空间下所有应用。2包含了聊天助手、Agent、工作流等。通过3我们可以创建应用通过4我们可以以探索里的模板创建应用通过5我们可以导入在 Dify 中一个“应用”是指基于 GPT 等大语言模型构建的实际场景应用。通过创建应用你可以将智能 AI 技术应用于特定的需求。知识库我们可以在知识库中上传企业或个人的文件资料上传后通过设置分段格式向量化文档在2的位置我们可以创建知识库可以是选择文档也可以选择同步Notion或同步web站点通过3我们可以让dify使用外部知识库不过用外部知识库之前我们得先通过4配置这个需要一定研发能力。外部知识库的功能是我比较看中的一般有点规模的企业我建议自己建向量库然后都过暴露api给应用平台这样哪个平台好用我们就换哪个。个人上传文档的知识库重点在于分段。excel 分段excel 如果按照单元格分段需要把子分段设置为;pdf和word分段中文字分段以。作为分段标识符会比较好这个需要大家根据自己的文档结构不断地调整。使用默认\n句子都被截断了。召回测试当文档状态1变为可用我们可以进行召回测试验证文档的下效果。1我们输入测试问题2设置检索方式3我们可以看到匹配到的内容以及socre,点击查看详情4检索设置我们可以设置向量检索、全文检索、混合检索我们可以通过不断地测试看下哪种检索方式在这个知识库中效果比较好然后选择设置对应的方式。其中需要住下TopK和ScoreTopK 代表按相似分数倒排时召回分段的最大个数。TopK 值调小将会召回更少分段可能导致召回的相关文本不全TopK 值调大将召回更多分段可能导致召回语义相关性较低的分段使得 LLM 回复质量降低。召回阈值Score代表允许召回分段的最低相似分数。召回分数调小将会召回更多分段可能导致召回相关度较低的分段召回分数阈值调大将会召回更少分段过大时将会导致丢失相关分段。工具dify的工具是用来扩展LLM能力的是对外部功能的封装比如搜索、绘图、飞书、月缺等等。就是没有看到对mysql的调用工具。工具有dify内置的应用也有三方工具也可以自定义工具。工作流也可以发布为一个工具。dify工作流基础介绍工作流通过将复杂的任务分解成较小的步骤节点降低系统复杂度减少了对提示词技术和模型推理能力的依赖提高了 LLM 应用面向复杂任务的性能提升了系统的可解释性、稳定性和容错性。一个完整的工作流必须具备开始和结束两个节点。Dify 工作流分为两种类型Chatflow面向对话类情景包括客户服务、语义搜索、以及其他需要在构建响应时进行多步逻辑的对话式应用程序。Workflow面向自动化和批处理情景适合高质量翻译、数据分析、内容生成、电子邮件自动化等应用程序。变量在dify中变量一共有三种、分别是系统变量、环境变量和用户变量。系统变量系统变量指的是在 Chatflow / Workflow 应用内预设的系统级参数可以被其它节点全局读取。系统级变量均以sys开头。主要有sys.user_id:每个用户在使用工作流应用时系统会自动向用户分配唯一标识符用以区分不同的对话用户sys.app_id系统会向每个 Workflow 应用分配一个唯一的标识符sys.workflow_id用于记录当前 Workflow 应用内所包含的所有节点信息sys.workflow_run_id用于记录 Workflow 应用中的运行情况chatflow会额外多一些不做具体解释。环境变量环境变量用于保护工作流内所涉及的敏感信息例如运行工作流时所涉及的 API 密钥、数据库密码等。它们被存储在工作流程中而不是代码中以便在不同环境中共享。在流程编排的时候通过1的位置添加。用户变量当我们需要用户传入一些特定的信息的时候可以通过添加变量来实现在开始节点对应1的位置添加。节点节点是工作流中的关键构成通过连接不同功能的节点执行工作流的一系列操作。在dify的工作流中一共有下面几种类型的节点。我们可以通过画布左下角的1的位置添加节点和工具开始节点1所有的节点都可以通过这个位置修改名称建议改成对应的功能名称2通过号新增变量3我们可以选择变量的类型设置变量名称、长度、是否必填等。LLM 节点(重点)具备调用大语言模型的能力。这里面有下面这些操作模型选择 通过1可以选择使用哪个模型模型供应商配置参考前一篇模型参数 通过点击5弹出区域6我们可以配置模型的温度、TopP最大标记、回复格式 等。上下文 在2的位置我们想向LLM提供的背景信息内置固定的信息。提示词在3的位置默认只有一个SYSTEM提示词我们可以通过4添加消息来添加USR提示词和ASSISTANT提示词。提示词中我们可以通过{获取变量通过/获取上下文系统提示词我们可以通过7对应的位置自动生成填充。我们可以设置失败重试策略。知识检索重点使用已经创建的知识库。1通过1的位置设置查询知识库的变量2我们2的位置添加知识库3通过3的位置设置召回策略下图为召回策略可设置的参数。问题分类问题分类主要是通过大模型将用户的问题进行意图分类普通的条件分类为ax 走什么ay走什么都是具体的判断逻辑。比如我们通过这个是感知用户售后问题还是产品使用咨询。然后匹配到相关的知识库。通过1我们可以选择模型通过2我们选择用户输入的内容通过3我们设置分类类型通过4我们可以添加分类通过5我们可以填写分类提示词通过分类我们可以指向不同的知识库。条件分支重点主要用于流程节点中的逻辑判断。功能也很丰富自主性特别高。通过1我们可以选择条件的变量通过2我们可以选择逻辑条件中文意思很直白了通过3我们设置条件值通过4可以添加条件多个条件的时候可以通过5设置条件的逻辑关系通过6可以添加其他逻辑迭代一般用于多任务的处理每个任务的处理流程必须一样。1迭代内部可以认为是一个子流程2迭代的输入是一个多个任务数组形式3迭代的输出也是一个数组每个输出包含是哪个输入可以用于区分4可以开启并行同时执行几个5根据自己的需要错误了是终结还是继续代码执行代码执行给我们带来了很大的灵活性官方给的场景是结构化数据处理数学计算、拼接数据。代码的执行是有风险的为了确保安全dify使用sandbox执行代码不能使用消耗大量系统资源或引发安全问题的操作。比如访问文件系统、进行网络请求、执行操作系统级别的命令。也就意味着不能直接写代码连接数据库了。通过123可以添加输入变量每个节点内的通过4我们可以写PYTHON3或JAVASCRIPT代码来执行相应的逻辑通过5我们可以设置返回的数据类型通过6我们可以设置重试机制也就是失败以后可以重试几次以及每次重试之间的时间间隔模板转换这个是使用摸版引擎记性数据处理代码执行也能实现。变量聚合将多路分支的变量聚合为一个变量以实现下游节点统一配置。一般用于多个分支处理。比如我有两个知识库A和B我需要同时查A和B查到以后我需要将AB的数据整合然后给大模型这个就是这个作用。文档提取器重要用来提取用户上传上来的文档的内容然后将提取到的文本内容给LLM处理。参数提取从指定的地方获取数据后将数据结构化。HTTP请求重要这个让dify具备一切的可能性。举两个例子dify没有权限管理我们可以在我们的业务系统里给每个人生成一个密钥通过http调用来鉴权。dify不能直接连接数据库我们可以通过暴露接口实现Agent应用我们在工作室中通过从应用模板创建。通过1选择Agent通过2选择旅游改下应用名称即可。我通过kimi把原提示词翻译成了中文注意变量名不能翻译google搜索需要授权我没有换个其他的。通过1删除google搜索插件最后大家看提示词里只用了wikipedia_search,但是在跑的时候可以动态切换应该是有什么机制通过2添加插件选择3内置下面的4搜索里的5 ![](https://i-blog.csdnimg.cn/img_convert/199730c61fb15dfc50480fb90e62a887.png) 通过1、2、3切换下模型开场白是英文的我们通过点击1管理设置下。通过1我们可以设置开场白把英文转成中文这里也有一些其他的功能比如语音转文字、使用知识库或搜索的时候显式源文档的引用在wikipedia中没有搜索到它会自动切换到下一个。工作流应用使用场景梳理使用工作流首先我们要知道我们要用工作流解决什么问题。梳理出相应的流程然后再去落地。我当时想到两个场景1,用户输入问题- 大模型提炼关键词-然后查询数据库-将结果和问题给大模型-输出结果2,用户输入问题-同时搜索本地知识库联网搜索- 代码整合-大模型推理-输出结果在实验的过程中场景1因为沙箱的安全机制被拦截了找了下通过改源码可以解决这个问题不过沙箱以后就得自己本地打镜像了。场景2在搜索的时候没有google和bing的key用的searchapi遇到dns解析的问题这个大家在玩的时候只用知识库就行了。然后搜索到返回的几个url链接还得解析比较麻烦最后只连知识库了。创建工作流创建一个空白应用选择1工作流填写应用名称2和描述3,点击4创建添加查询入参因为我们要询问所以先在开始节点添加一个变量query用来接收我们的询问添加知识检索增加知识检索节点并把开始节点的query设置到查询变量1里,点击2的位置添加知识库通过3可以设置召回策略。LLM设置我们点击上下文然后可以看到知识检索1的的输出result2设置系统提示词添加结束节点最后流程如下试运行1点击左上角的运行,输入页签2填写问题3,点击开始运行4运行结束以后我们点击跟踪1,可以看到各个节点的执行明细2,可以看到大模型数据结果3。发布我们可以直接运行也可以发布为工具。直接运行直接把链接分享给同事就能共用。别忘了防火墙设置。最后为什么要学AI大模型当下⼈⼯智能市场迎来了爆发期并逐渐进⼊以⼈⼯通⽤智能AGI为主导的新时代。企业纷纷官宣“ AI ”战略为新兴技术⼈才创造丰富的就业机会⼈才缺⼝将达 400 万DeepSeek问世以来生成式AI和大模型技术爆发式增长让很多岗位重新成了炙手可热的新星岗位薪资远超很多后端岗位在程序员中稳居前列。与此同时AI与各行各业深度融合飞速发展成为炙手可热的新风口企业非常需要了解AI、懂AI、会用AI的员工纷纷开出高薪招聘AI大模型相关岗位。最近很多程序员朋友都已经学习或者准备学习 AI 大模型后台也经常会有小伙伴咨询学习路线和学习资料我特别拜托北京清华大学学士和美国加州理工学院博士学位的鲁为民老师给大家这里给大家准备了一份涵盖了AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频全系列的学习资料这些学习资料不仅深入浅出而且非常实用让大家系统而高效地掌握AI大模型的各个知识点。这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】AI大模型系统学习路线在面对AI大模型开发领域的复杂与深入精准学习显得尤为重要。一份系统的技术路线图不仅能够帮助开发者清晰地了解从入门到精通所需掌握的知识点还能提供一条高效、有序的学习路径。但知道是一回事做又是另一回事初学者最常遇到的问题主要是理论知识缺乏、资源和工具的限制、模型理解和调试的复杂性在这基础上找到高质量的学习资源不浪费时间、不走弯路又是重中之重。AI大模型入门到实战的视频教程项目包看视频学习是一种高效、直观、灵活且富有吸引力的学习方式可以更直观地展示过程能有效提升学习兴趣和理解力是现在获取知识的重要途径光学理论是没用的要学会跟着一起敲要动手实操才能将自己的所学运用到实际当中去这时候可以搞点实战案例来学习。海量AI大模型必读的经典书籍PDF阅读AI大模型经典书籍可以帮助读者提高技术水平开拓视野掌握核心技术提高解决问题的能力同时也可以借鉴他人的经验。对于想要深入学习AI大模型开发的读者来说阅读经典书籍是非常有必要的。600AI大模型报告实时更新这套包含640份报告的合集涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师还是对AI大模型感兴趣的爱好者这套报告合集都将为您提供宝贵的信息和启示。AI大模型面试真题答案解析我们学习AI大模型必然是想找到高薪的工作下面这些面试题都是总结当前最新、最热、最高频的面试题并且每道题都有详细的答案面试前刷完这套面试题资料小小offer不在话下这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】