要让智能体在实际应用中表现出色,掌握工作流的使用至关重要。今天,我们将深入探讨Dify平台中的各个节点的功能,了解它们的使用方法以及常见的应用场景。通过对这些节点的全面了解,将能够高效地设计和优化智能体的工作流流程。好了,言简意赅,直接进入正题。
节点概览
首先,我们创建一个工作流或者是chatflow应用都可以。里面的节点都是一样的。我们还是以工作流为主来讲解。
大模型
让我们先来详细讲解一下最常用的大模型节点。大模型承载着类似于人脑思考的复杂过程,通常被用来处理各种复杂的任务。可以说,如果你没有涉及到大模型节点的相关流程,那么基本上你也无法真正接触到像Dify这样的智能体平台。
这里的大模型节点有两种功能,一种就是常见的逻辑推理,即我们写好提示词和用户的问题,大模型就会直接推理回答。
还有一种,就是视觉功能,因为现在多模态模型遍地都是,图片理解场景用到的也不少。所以如果有图片理解问题,交给大模型节点也是可以的。如图所示:
知识检索
所谓的市面流行的知识库叫法。之所以将其称为“知识库”,主要是因为现代许多可视化平台已经为用户提供了文本和图片的向量化处理功能。简单来说,这些平台的底层架构是基于向量数据库来进行数据的存储和检索操作。
对于那些并不精通技术的普通用户来说,操作这些平台并不复杂,他们只需要具备类似记事本的基础使用能力,就可以轻松掌握如何进行知识检索。正如下图所示,这种平台通过简化界面和操作步骤,使得即使是技术小白也能高效地进行知识的查询和管理。如图所示:
问题分类
问题分类其实就是我们常说的意图识别。仍然是大模型来思考,如果我们的每个场景流程是不一样的,那么用户的问题是无法通过条件节点来控制的,就是因为你永远无法预知用户的问题到底是啥,只能给一个范围,那么问题分类节点就有用处了。如图所示:
条件分支
这里就是我们所说的条件分支,他主要用来判断固定内容走的分支逻辑。如果条件已经很明确了,就不要使用问题分类器了,毕竟每调用一次大模型都会进行扣费。如图示:
迭代节点
就是一个循环节点,如果有一些流程化需要重复执行,就需要这个迭代节点。比如我有10个链接需要大模型进行分别汇总,那么这场景就很适用。如图所示:
代码执行
代码节点目前支持两种编程语言:Python和JavaScript。为什么智能体还是需要编程语言来处理?就是因为有一些逻辑节点无法满足,比如数据加密、解密等等,有人说有人开发插件了,我们直接调用插件节点就可以了。但是总有一些个性化的定制需求,别人的插件终究不能满足。
模版转换
模版转化可以简单理解为一个文本处理节点,比如你可以写一段固定的话传给下游节点,比如搜索等。还可以用来润色一下或者为用户的问题加一个限制条件。如图所示:
变量聚合器
它的用法也很简单,只是单纯为了好看将上游节点的输出变量归纳到一起后,这样我们的工作流节点变得越来越复杂的时候,就不用再看前面的节点了。直接使用聚合器里的变量即可。如图所示:
文档提取器
用户除了和智能体正常对话,还会上传一些图片、文档以及表格文件,但是大模型是不可能直接去解析的,所以这里与文件上传功能配套的就是文档解析器。先解析成正常的文字后,大模型即可理解文档内容从而回答用户问题。如图所示:
参数提取
参数提取就是为了让大模型结构化输出一些内容。比如我要从用户的问题识别出一本书的名字和书籍作者。如果单纯使用大模型节点的花,输出变量是一段话,你无法在后续的节点正常使用。所以参数提取器就是简化这种操作。直接赋值给两个变量给下游节点使用。
HTTP请求
该节点主要就是模拟一次网页浏览器搜索。如果你需要冲特定的网页才能获取内容,那么这个节点必不可少。如图所示:
列表操作
列表操作也是很简单的。我们只需要将数组里面的内容过滤或者我只要第一个。那么直接使用列表节点即可完成,如图所示:
小结
在智能体应用中,掌握工作流节点的使用至关重要。通过Dify平台中的各类节点,用户能够高效设计和优化工作流流程。从大模型节点的复杂任务处理,到知识检索和问题分类的智能化管理,再到条件分支、代码执行和模板转换等功能的灵活运用,每个节点都有其独特的应用场景。
通过对这些节点的全面了解,用户能够提升智能体的表现,实现更精准、更高效的工作流设计。掌握这些工具,是提升智能体应用性能的关键。
我是努力的小雨,一个正经的 Java 东北服务端开发,整天琢磨着 AI 技术这块儿的奥秘。特爱跟人交流技术,喜欢把自己的心得和大家分享。还当上了腾讯云创作之星,阿里云专家博主,华为云云享专家,掘金优秀作者。各种征文、开源比赛的牌子也拿了。
💡 想把我在技术路上走过的弯路和经验全都分享出来,给你们的学习和成长带来点启发,帮一把。
🌟 欢迎关注努力的小雨,咱一块儿进步!🌟