FastGPT工作流的节点

《玩转FastGPT:像搭积木一样构建智能体》(李振强,叶彦辛,等)【摘要 书评 试读】- 京东图书

本文用于理解FastGPT工作流的一个概念——节点,建议读者登录FastGPT官网对照阅读。

什么是节点?节点是工作流中执行具体任务的最小、最核心的功能。每个节点都是构建工作流的“智能积木”,是一个各司其职的功能单元。它们就像一块块功能各异的智能乐高积木,有的负责对话,有的负责搜索,有的负责判断,通过将它们拼接在一起,就能搭建出强大的应用。每个节点包含三个核心部分,输入、输出、触发器。为了更好地理解,我们可以将常见的节点分为两大类,系统节点和功能节点。

1. 系统节点(System Nodes)

用户引导(配置一些对话框信息)、用户问题(流程入口)这类节点是工作流的出入口,它们定义了流程的起点、终点以及与用户的基本交互界面,是每个工作流都不可或缺的基础设施。系统节点配置页面如图4-1所示

图4-1  系统节点配置页面

2. 功能节点(Functional Nodes)

功能节点是工作流的主体,负责实际的思考、查询和逻辑判断。这些节点都有明确的输入和输出,可以自由组合,创造出强大的能力。

(1)AI对话:调用大语言模型进行思考、分析和内容生成。调用底层的大语言模型(如 GPT、文心一言等),根据输入的上下文(如用户问题、知识库片段、历史记录)和设定的提示词(Prompt),进行深度加工和内容生成,最终产生自然流畅的回答。详细的提示词撰写技巧在第4章中有所体现。AI对话配置页面如图4-2所示。

图4-2  AI对话节点配置页面

(2)知识库搜索:在正式执行搜索或对话前,根据输入的问题,从你指定的私有知识库中,利用向量检索技术,快速、准确地找出最相关的文本片段作为上下文。例如,用户询问“公司的报销政策是什么?”,此节点会从你上传的《员工手册》知识库中,找到关于报销制度的段落,并将其输出给“AI 对话”节点作为回答依据。知识库搜索节点配置页面如图4-3所示。

图4-3  知识库搜索节点配置页面

(3)知识库搜索引用合并:当工作流中存在多个“知识库搜索”节点时(例如,同时搜索了“产品库”和“FAQ库”),此节点可以将它们的搜索结果合并成一个统一的引用列表,方便后续节点统一处理。例如,一个电商客服应用,用户问题可能同时与“产品规格”(在产品库)和“售后政策”(在售后库)相关。通过两个搜索节点分别搜索,再用此节点合并,可以让“AI 对话”获得更全面的信息。知识库搜索引用合并节点配置页面如图4-4所示。

图4-4  知识库搜索引用合并节点配置页面

(4)问题优化:在正式执行搜索或对话前,对用户的原始问题进行“净化”和“增强”。使用问题优化功能,可以提高知识库连续对话时搜索的精度。使用该功能后,会先利用 AI根据上下文构建一个或多个新的检索词,这些检索词更利于进行知识库搜索。该模块已内置在知识库搜索模块中,如果仅进行一次知识库搜索,可直接使用知识库内置的补全功能。问题优化节点配置页面如图4-5所示。

图4-5  问题优化节点配置页面

(5)工具调用/终止:在更复杂的Agent 场景中,此节点可以决定调用哪个预设的“工具集”(可以是一个复杂的工作流模块)。强制结束当前工作流的运行。当某个条件明确满足,且无需任何后续操作和回复时,可以使用此节点来提前终止流程,节省资源。工具调用/终止页面如图4-6所示。

图4-6 工具调用/终止节点配置页面

(6)文档解析:允许在对话过程中,直接解析用户在本轮对话中上传的文件(如 PDF,Word,TXT等),将其内容转换并返回对应文档内容,以供工作流中的其他节点使用。文档解析页面如图4-7所示。

图4-7  文档解析节点配置页面

(7)HTTP请求:调用任何标准的第三方API接口。它可以发送GET、POST等请求,并能处理请求头、请求体和参数,接收并输出API的返回结果。例如,用户需要查询实时信息,可以调用天气API获取实时天气;用户还可以调用企业内部的CRM系统API,在系统中创建一条新的销售线索。HTTP 请求节点配置页面如图4-8所示。

图4-8  HTTP请求节点配置页面

(8)判断器:判断器是实现条件逻辑的核心,根据一个或多个输入变量,进行逻辑条件判断(如等于、不等于、包含、大于、为空等)。它有多个出口(如“满足条件”和“不满足条件”),可以根据判断结果,将流程引导至完全不同的分支。判断器节点配置页面如图4-9所示。

图4-9  判断器节点配置页面

(9)问题分类:问题分类相当于“意图识别专家”,专门用于理解用户问题的意图。你可以预设几个问题类别(如“售前咨询”“订单查询”“技术支持”),此节点会判断用户问题最符合哪个类别,并输出该类别名称。在开发实战中,通常作为流程的前置步骤,首先对用户问题进行分类,然后将输出的类别交给“判断器”进行判断,从而实现智能路由。问题分类节点配置页面如图4-10所示。

图4-10  问题分类节点配置页面

(10)变量更新:用于创建、修改或删除工作流中的变量。可以将某个节点的输出赋值给一个新变量。变量更新节点配置页面如图4-11所示。

图4-11  变量更新节点配置页面

(11)代码运行:直接在工作流中安全地执行一小段 Python 或 JavaScript 代码。可以进行复杂的数据处理、自定义计算。代码运行节点配置页面如图4-12所示。

图4-12  代码运行节点配置页面

(12)批量运行:接收一个数组(列表)作为输入,然后对其的每一个元素,都完整地执行一遍其内部嵌套的子工作流。批量运行节点配置页面如图4-13所示。

图4-13  批量运行节点配置页面

(13)用户选择:暂停工作流,并向用户展示一个或多个预设的选项(按钮)。工作流会根据用户的点击,从对应选项的出口继续向下执行。用户选择节点配置页面如图4-14所示。

图4-14  用户选择节点配置页面

(14)表单输入:向用户展示一个包含多个输入框的表单,并可以对每个输入框设置标签、类型(文本、数字等)和是否必填。只有当用户填写完表单并提交后,流程才会继续。表单输入节点配置页面如图4-15所示。

图4-15  表单输入节点配置页面

(15)文本拼接:将多个输入(可以是固定文本,也可以是来自其他节点的变量)按照你设定的顺序和格式,拼接成一个单一的字符串。文本拼接节点配置页面如图4-16所示。

图4-16  文本拼接节点配置页面

3. 输入与输出(Input & Output)

输入与输出是驱动流程的“数据血脉”。每个节点都拥有明确的输入和输出接口。节点的输入可以接收来自用户问题、全局变量或其他节点输出的值。节点的输出则可以作为后续节点的输入,实现数据的流动和处理。新的上下文和AI回复内容为输出,输出可以被之后任意节点变量引用。

节点的上下左右有四个“触发器”可以被用来连接,被连接的节点按顺序决定是否执行。

例如“流程开始”节点是所有任务的入口,负责接收用户的提问和会话历史;而“指定回复”或“AI对话”中的最终输出,则是流程的出口。如图4-17所示,这是一个最简单的AI对话。它由流程开始和AI对话节点组成。

图4-17  最简化AI对话页面

4. 触发器(Trigger)

触发器是指挥流程的“控制信号”,用于连接不同节点,控制工作流的执行顺序。当一个节点执行完毕后,会激活其后置触发器,进而启动下一个连接的节点。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值