当前位置: 首页 > news >正文

3️⃣ Coze工作流基础教学(2025年全新版本)

目录

一、什么是工作流

二、为什么用工作流

三、工作流使用场景

四、怎么学习工作流

五、工作流功能概述

六、制作工作流基础流程

6.1 创建工作流

6.2 配置工作流

6.3 调试工作流

6.4 发布工作流

6.5 使用工作流

6.6 复制工作流

6.7 删除工作流

6.8 设置工作流异步运行

七、工作流节点简单介绍

7.1 工作流各个节点

八、节点详细使用说明

8.1 开始和结束节点

8.2 大模型节点

8.3 插件节点

8.4 工作流节点

8.5 HTTP请求节点

8.6 代码节点

8.7 选择器节点

8.8 意图识别节点

8.9 循环节点

8.10 变量赋值节点

8.11 变量聚合节点

8.12 输入节点

8.13 输出节点

8.14 知识库写入节点

8.15 知识库检索节点

8.16 批处理节点

8.17 SQL自定义节点

8.18 问答节点

8.19 文本处理节点

8.20 长期记忆节点

8.21 创建会话

8.22 清除上下文

8.23 查询消息列表


 

Coze 工作流作为扣子平台的重磅工具,利用可视化节点,如大语言模型、插件、条件判断等,把复杂任务巧妙拆解成多步骤流程。它不仅支持自动化编排,还能实现跨系统协同,有效提升处理效率与输出稳定性。在那些对准确性或格式有严格要求的场景中,比如报告生成、旅行规划,Coze 工作流更是发挥着关键作用。

一、什么是工作流

在开启工作流的学习之旅前,不妨先了解一下,究竟什么是工作流?​

瞧,下面这张图呈现的就是一个工作流。在工作流里,每一个方框都代表一个节点,而节点与节点之间的连线,则清晰展示了数据的流动方向。​

这便是我们对工作流的初步认知。

工作流采用将复杂任务细分为多个子任务的方法,以此提高输出结果的精准度。倘若目标场景繁多,逻辑错综复杂,那么选择借助工作流来处理任务不失为明智之选。​

使用工作流的优势十分显著,它能够将目标场景的任务逻辑进行细致拆分,保证逻辑清晰明了,进而提升输出结果的精准度。然而,其弊端也不容小觑,配置工作流颇为耗时,而且对开发者有较高要求,需要熟练掌握各类工作流节点的使用方法。​

用大白话来说,工作流其实就是为了达成预设目标而组合在一起的一系列任务。

0️⃣大家都知道曹冲称象的故事,那曹冲称象究竟分几步呢?​

1️⃣首先,把大象赶到船上,沿着水面在船身上做好标记。​

2️⃣接着,将大象赶下船,往船上放石头,直至水面与先前的标记重合。​

3️⃣然后,称出船上石头的重量。​

4️⃣最后,石头的重量便是大象的体重。​

若将这些步骤逐个拆解为子任务,再组合起来按顺序执行,便形成了为实现预设目标【大象的重量】的工作流。

二、为什么用工作流

智能体,可以近似看作是工作流的具象呈现。而工作流呢,就如同用节点来搭积木一般。

对于工作流的运用,我们不妨简单理解为:将大模型视作一个 “人”,使其依照既定流程去完成一项任务,进而收获特定成果。​

在使用过程中,工作流的应用能够显著提升准确性与可靠性。​

工作流的基本原理在于,我们将知识体系与流程进行固化,然后借助编排的方式来落地实施。​

打个比方,要是把炒鸡蛋的工作流固定下来,就能制造出一台炒蛋机器人。如此一来,我们就无需每次都亲自下厨炒蛋了。机器人按照固定流程操作,每次都能做出分毫不差的美味炒鸡蛋。​

这正是工作流的核心目标:通过固化流程,提升达成预设目标的准确性与可靠性。

三、工作流使用场景

入门场景:​这里要介绍的,是仅添加一个节点就能构建起来的简单工作流。​

在实际应用中,存在多种场景。​

1️⃣场景1,我们可以借助插件节点里的插件能力来自定义工作流。就拿获取新闻插件来说,利用它就能构建出一个专门用于获取新闻列表的工作流。​

2️⃣场景2,运用大模型节点来接收并处理用户提出的问题。​

3️⃣场景3,则是使用代码节点来生成随机数。

接下来看看进阶场景。​

在这个阶段,我们可以通过多节点组合,构建出逻辑更为复杂的工作流。​

1️⃣场景1,实现搜索并获取指定信息的详情。具体操作是,先借助插件能力展开关键词搜索,接着通过代码节点对指定信息进行过滤,最后再凭借插件能力获取信息详情。​

2️⃣场景2,通过条件判断来精准识别用户意图。比如,利用大模型节点对用户消息进行处理,将这些消息划分成不同类型,随后借助条件节点针对不同类型的用户消息分别展开处理。

四、怎么学习工作流

学习一项技能的基本模式,便是进行拆解与模仿。​

学习 Coze 工作流同样如此,也不例外。​

将下面这些模版进行拆解模仿并从中创新,基本上就达到入门级别了。

五、工作流功能概述

工作流是由多个节点共同构建而成的,节点作为组成工作流的基础单元,其重要性不言而喻。​

默认情况下,工作流中包含开始节点与结束节点:

1️⃣开始节点 作为工作流的起始之处,能够容纳用户输入的信息。​

2️⃣结束节点 位于工作流的末尾,主要作用是返回工作流运行后所产生的结果。

不同的节点或许会需要不一样的输入参数,输入参数大体可分为 “变量名” 和 “变量类型” 这两类。​

这里所说的 “变量名”,指的是是能够支持设定自定义的参数值。​

“变量类型” 呢,则是引用前面节点的参数数值。​

输出参数亦是如此。

六、制作工作流基础流程

6.1 创建工作流

在左侧的导航栏中,选择打开个人空间或者某个团队空间。​

接着点击 “资源库”。​

随后点击右上角的 “资源” 选项。​

最后,在弹出的框中点击 “工作流” 即可。

对工作流的名称和描述进行设置,设置完成后点击 “确认”。​

为工作流设定清晰、准确的名称与描述,能帮助大语言模型更精准地理解工作流具备的功能。

创建成功后,页面将会呈现如下内容。​

创建完成后,页面会自动跳转到工作流的编辑页面。​

在初始状态时,工作流包含 “开始节点” 与 “结束节点”。​

“开始节点” 的作用是启动工作流。​

“结束节点” 则用于返回工作流的运行结果。

6.2 配置工作流

当成功创建工作流后,你能够通过简单的添加节点操作,将节点添加至画布之中,并依据任务的执行先后顺序,把各个节点连接起来。​

工作流本身为你准备了基础节点以便使用。不仅如此,你还能够添加插件节点,借此来执行特定的任务。

从下方【添加节点】按钮中进行选择需要使用的节点,只需要点击对应的节点即可出现在画布中,并将此与其它节点相连接,比如我这个大模型节点与开始和结束相结合。

点击开始节点,然后对节点的输入进行配置。

点击大模型节点,随后对输入输出参数进行配置。​

输入参数请引用开始节点的 input 参数。​

将输出参数命名为 output。​

填好系统提示词与用户提示词。

接下来,点击结束节点,着手对其输入参数进行配置。​

在这一步,结束节点的输出参数需引用大模型节点的 output 参数哦。

6.3 调试工作流

在发布工作流之前,我们务必要确保其可运行,所以 Coze 严格要求在发布前完成试运行功能。​

点击下方的 “试运行” 按钮即可开启。

点击 “试运行” 后,输入测试变量,待运行结果出现即可。

当节点运行成功时,其边框会呈现绿色。在各节点的右上角点击 “展开运行结果”,就能查看节点的输出。而在最右侧的运行结果区域,可看到整条工作流的输出结果哦。

6.4 发布工作流

一定要确保【试运行】才发布工作流喔!!!​

当完成工作流的测试后,如果希望在 Bot 中使用它,那就需要进行发布操作。​

只需点击右上角的 “发布” 按钮即可。

成功发布后,就能在资源库中看到啦~

6.5 使用工作流

首先前往工作空间,选定当前的团队或个人空间,接着点击 “项目开发”,随后选择进入指定的 Bot。

在 Bots 编排页面的工作流区域里,点击右侧的加号图标。

“添加工作流” 对话框中,于 “资源库工作流” 页面选择自建的工作流【test_demo】,然后点击 “添加”。​

添加完成过后会在工作流区域出现刚刚添加好的工作流。

在 Bot 的人设与回复逻辑区域内,通过引用工作流的名称来调用工作流。

6.6 复制工作流

在资源库的页面上,点击某个工作流右侧的【···】图标,点击【复制】,就能把该工作流复制到你的资源库当中。复制成功后,在资源库中便可看到。​

副本最大的作用在于,当你需要修改工作流时,它能作为备份留存。​

(副本无需发布,仅作备份保存即可)

6.7 删除工作流

同样的,若有不再需要使用的工作流,可在工作流列表中找到它,于操作列点击删除图标。进入资源库的工作流列表后,点击要删除工作流右侧的三个小点,随后点击删除即可。

6.8 设置工作流异步运行

工作流默认同步运行,也就是说智能体只有在工作流运行结束后,才会把工作流的输出传递给智能体用户。当任务既复杂又耗时(像生成图片、多模型调用、大量数据处理等情况),又不想让用户干等着的时候,就能够使用异步模式。​

要是工作流或节点运行超时,智能体可能无法给出符合预期的回复。

各场景的超时时间说明如下:​

1️⃣未开启工作流异步运行时:​

        🔢工作流整体超时时间是 3 分钟,模型节点 3 分钟,其他节点 1 分钟。部分插件节点超时时间可能是 3 分钟。​

        🔢用户问题和智能体回复的时间间隔最长为 2 分钟,要是智能体回复耗时超过 2 分钟,智能体可能会判定工作流超时。要是工作流运行耗时超过 2 分钟,建议添加消息节点用于输出中间消息,或者通过结束节点开启流式输出,以此保持对话状态。​

2️⃣开启工作流异步运行后:工作流整体超时时间为 24 小时,模型节点 3 分钟,其他节点 1 分钟(个别插件 3 分钟)。​

3️⃣工作流异步运行,仅在调试智能体或与商店中的智能体对话时才生效,飞书、豆包等渠道暂时不支持工作流异步运行。​

4️⃣工作流开启异步运行后,模型节点无法查看 Bot 对话历史。

于 Bot 编排界面的工作流区域,轻点设置⚙️按钮。在弹出的设置界面中,开启异步运行按钮,设置好回复内容后,点击保存即可。

七、工作流节点简单介绍

7.1 工作流各个节点

不难发现,当下 Coze 工作流节点已然能够涵盖插件、大模型与代码、知识库、工作流、图像流、选择器、循环、意图识别、文本处理、消息、问答、变量、数据库以及长期记忆等内容。

☑️大模型:调用大语言模型,使用变量和提示词生成回复。​

☑️插件:通过添加工具访问实时数据和执行外部操作。​

☑️工作流:集成已发布工作流,可以执行嵌套子任务。​

☑️代码:编写代码,处理输入变量来生成返回值。​

☑️选择器:连接多个下游分支,若设定的条件成立则仅运行对应的分支,若均不成立则只运行“否则”分支。​

☑️意图识别:用于用户输入的意图识别,并将其与预设意图选项进行匹配。​

☑️循环:用于通过设定循环次数和逻辑,重复执行一系列任务。​

☑️批处理:通过设定批量运行次数和逻辑,运行批处理体内的任务。​

☑️变量聚合:对多个分支的输出进行聚合处理。​

☑️输入:支持中间过程的信息输入。​

☑️输出:节点从“消息”更名为“输出支持中间过程的消息输出,支持流式和非流式两种方式。​

☑️创建会话:用于创建会话。​

☑️清除上下文:用于清空对话历史,清空后LLM节点看到的对话历史为空。​

☑️查询消息列表:用于查询消息列表。​

☑️SQL自定义:基于用户自定义的 SOL完成对数据库的增删改查操作。​

☑️新增数据:向表添加新数据记录,用户输入数据内容后插入数据库。​

☑️更新数据:修改表中已存在的数据记录,用户指定更新条件和内容来更新数据。​

☑️查询数据:从表获取数据,用户可定义查询条件、选择列等,输出符合条件的数据。​

☑️删除数据:从表中删除数据记录,用户指定删除条件来删除符合条件的记录。​

☑️知识库写入:写入节点只可以添加 文本类型 的知识库,仅可以添加一个知识库。​

☑️知识库检索:在选定的知识中,根据输入变量召回最匹配的信息,并以列表形式返回。​

☑️长期记忆:用于调用长期记忆,获取用户的个性化信息,智能体必须打开长期记忆。​

☑️变量赋值:用于给支持写入的变量赋值,包括应用变量、用户变量。​

☑️图像生成:通过文字描述/添加参考图生成图片。​

☑️画板:自定义画板排版,支持引用添加文本和图片。​

☑️抠图:保留图片前景主体,输出透明背景(.png)。​

☑️提示词优化:智能优化图像提示词。​

☑️画质提升:提升图像清晰度。​

☑️问答:支持中间向用户提问问题,支持预置选项提问和开放式问题提问两种方式。​

☑️文本处理:用于处理多个字符串类型变量的格式。​

☑️HTTP请求:用于发送API请求,从接口返回数据。

八、节点详细使用说明

8.1 开始和结束节点

开始节点的作用是开启并触发一个工作流,而结束节点则负责输出工作流的最终结果。​

开始节点作为工作流的起始之处,主要用于设定启动工作流所需的输入信息。需要注意的是,开始节点仅有输入参数,不存在输出等其他参数。在开始节点中,默认设有一个输入参数 BOT_USER_INPUT,它代表着用户在本轮对话里输入的原始内容。当然,你也能够根据实际需求添加别的参数。​

下面为大家详细介绍开始节点的配置:​

1️⃣数据类型:开始节点能够支持配置如 String、Number 等多种类型的输入参数。特别要说明的是,Object 类型的参数最多允许 3 层嵌套。​

2️⃣参数设置方式:既支持直接添加参数并设定参数名称,也支持导入 JSON 数据来批量添加输入参数。

结束节点作为工作流的收尾环节,承担着返回工作流运行结果的重要职责。它为整个工作流的运作画上句号,并且支持两种不同的返回方式,分别是返回变量和返回文本。​

在返回变量的模式下,当工作流运行完毕,系统会以 JSON 格式输出所有的返回参数。这种方式尤其适用于工作流绑定卡片,或者作为子工作流的场景。值得一提的是,如果工作流直接与智能体进行了绑定,当在对话过程中触发该工作流时,大模型会自动对 JSON 格式的内容进行总结,然后以自然流畅的语言向用户做出回复。​

而在返回文本的模式下,工作流运行结束后,智能体中的模型会直接运用指定的内容来回复对话。在回答内容里,不仅支持引用输出参数,还能够设置流式输出,让信息传递更加灵活高效。

8.2 大模型节点

大模型节点具备强大功能,能够调用大型语言模型,依据输入参数以及提示词生成相应回复。在实际应用中,它常常被用于执行各类文本生成任务,像是文案创作、文本提炼总结、文章内容扩写等等。​

大模型节点充分借助大语言模型卓越的语言理解与生成能力,能够妥善处理复杂的自然语言处理任务。基于此,你能够按照业务场景的具体需求,灵活挑选不同的模型,并精心配置提示词,以此来明确模型的 “人设” 以及回复风格。为了更为精确地把控模型生成的结果,你还能够在大模型节点中对模型的参数进行设置,进而对模型回复的文本长度、内容丰富多样程度等方面产生影响。

模型:需要挑选要使用的模型。要知道,此节点输出内容的质量,在很大程度上会受到模型能力的左右。所以,建议根据实际的业务场景来挑选模型。可选的模型范围由当前的账号类型决定,基础版账号能使用默认的几种模型,不过会存在对话数量的限制;专业版账号则可以使用火山引擎方舟平台的模型。

技能:大模型节点支持配置技能,通过添加插件、工作流或者知识库,能够有效拓展模型能力的边界。在大模型节点运行期间,它会依据用户给出的提示词,自动调用插件、工作流或知识库,在综合各类信息输入之后,输出相应回复。​

在完成技能配置后,大模型节点的能力愈发趋近于一个独立运行的智能体。它能够自动识别用户意图,精准判断调用技能的时机与方式。这不仅大幅提升了该节点的文本处理能力和文本生成效果,还能让工作流的节点编排更加简便。【举个例子】当用户需求为获取某地区的穿搭推荐时,以往往往需要先借助插件节点查询当地天气,然后再由模型节点依据天气状况生成穿搭建议。而现在,只需直接在大模型节点添加查询天气的插件,大模型便会自动调用插件,完成天气查询并给出穿搭推荐。

输入:需要添加到提示词里的动态内容。无论是系统提示词还是用户提示词,都支持引用输入参数,以此达成动态调整的效果。在添加输入参数的时候,需要对参数名以及变量值进行设置,这里的变量值既能够设置成固定值,也能够引用上游节点的输出参数。​

在多轮对话的场景里,你还能够开启智能体对话历史。当执行此节点时,扣子会把智能体与当前用户近期的多条对话记录,连同提示词一同传递给大模型。这样一来,大模型就能参考上下文语境,生成契合当前对话场景的回复。不过在一问一答的场景下,一般不需要开启这项功能。

系统提示词:模型的系统提示词作用可不小,它主要用于明确人设以及回复风格。在使用方面十分灵活,既支持直接插入提示词库中的提示词模板,也能插入团队资源库下已经创建好的提示词,当然,你要是有想法,还可以自己动手编写提示词。

用户提示词:源自用户在本轮对话时的输入内容,其关键作用在于向模型传达最新的指令或提出问题。值得一提的是,用户提示词同样能够引用输入参数里的变量。

输出:指定此节点输出的内容格式与输出的参数。​

输出格式有多种选择:​

1️⃣文本格式:即纯粹的文本呈现形式。在这种情况下,大模型节点仅有一个输出参数,该参数的值就是模型回复的文本内容。​

2️⃣Markdown 格式:以 Markdown 规范的格式输出。同样,此时大模型节点只有一个输出参数,参数值为模型给出的文本回复内容。​

3️⃣JSON 格式:采用标准的 JSON 格式。您有两种操作方式,既可以直接导入一段 JSON 样例,系统会依据样例的格式自动设定输出参数的结构;也能够直接添加多个参数,并对参数类型进行设置。​

需要注意的是,参数的名称与描述对于模型在参数中精准返回匹配内容很有帮助。当存在多个输出参数时,建议为各个输出参数赋予有意义的名称,并设置对应的描述信息。比如用于改写 Query 的模型节点,可将输出参数设置为 new_query,描述为 “改写后的 Query”;再设置另一个参数为 reason,描述为 “改写原因”

大模型节点具备一项实用的异常忽略功能。一旦开启该功能,在试运行工作流期间,倘若此节点运行出现失败情况,工作流并不会就此中断,而是会持续运行后续的下游节点。若下游节点引用了此节点的输出内容,那么将使用此节点预先设定好的默认输出内容。

8.3 插件节点

在工作流里,插件节点承担着重要职责,它能够调用插件来运行特定工具。​

插件并非单一存在,而是一系列工具的集合体,每一个工具实际上都是一个可调用的 API。无论是商店里已经上架的插件,还是个人或团队自行创建的插件,都能够以节点形式被轻松集成到工作流当中,从而有效拓展智能体的能力范围。

8.4 工作流节点

在工作流的奇妙世界里,你会发现一个强大的功能 —— 可以把另一个工作流当作其中的一个步骤或者节点来使用,这能轻松实现复杂任务的自动化处理。

想象一下,把那些常用的、已经标准化的任务处理流程,精心封装成一个个不同的子工作流。然后,在主工作流的各个不同分支里,随时调用这些子工作流去执行相应的操作。

工作流的嵌套就像是一场神奇的魔法,它能将复杂任务进行模块化的拆分与处理。如此一来,工作流的编排逻辑变得更加灵活多变、一目了然,管理起来也更加轻松便捷。

8.5 HTTP请求节点

HTTP 请求节点为用户开启了与外部服务沟通的便捷通道,借助 HTTP 协议,它能够向外部服务发送请求,实现数据的获取、提交及交互。此节点支持多种 HTTP 请求方法,用户还能对请求参数、请求头、鉴权信息以及请求体等进行灵活配置,从而满足各类数据交互需求。不仅如此,HTTP 请求节点贴心设置了超时与重试机制,全方位保障请求的可靠性以及数据的准确处理。

配置项说明
API

配置 API 请求地址和方法,支持以下请求方法: ​

1️⃣GET:用于请求从外部服务获取数据,例如调用 API 获取用户信息、天气数据等。 ​

2️⃣POST:用于向服务器提交数据,例如提交表单。 ​

3️⃣HEAD:类似于 GET 请求,但服务器不返回请求的资源主体,只返回响应头。 ​

4️⃣PATCH:用于在请求-响应链上的每个节点获取传输路径。 ​

5️⃣PUT:用于向服务器上传资源,通常用于更新已存在的资源或创建新的资源。 ​

6️⃣DELETE:用于请求服务器删除指定的资源。 ​

配置API请求地址时,可以使用变量来动态指定参数,通过输入{{即可唤出并使用该变量。

请求参数请求参数是附加在 URL 后面的键值对,用于向服务器传递额外的信息。例如,在搜索请求中,可以通过请求参数传递搜索关键词。
请求头请求头包含客户端的信息,如 User-Agent、Accept 等。通过配置请求头,可以指定客户端的类型、接受的数据格式等信息。
鉴权

通过配置鉴权信息,可以确保请求的安全性,防止未授权的访问,支持 Bearer Token 和自定义鉴权: ​

1️⃣Bearer Token:输入 Token 值,通常用于 OAuth2 等认证方式。 ​

2️⃣自定义鉴权:配置自定义的认证信息,包括: ​

        Key:认证键。 ​

        Value:认证值。 ​

3️⃣Add To:选择将认证信息添加到请求头(Header)或查询参数(Query)。

请求体请求体是 POST 请求中包含的数据,可以是表单数据、JSON 数据等。根据不同的请求类型和数据格式,可以选择相应的请求体格式,例如 form-data、x-www-form-urlencoded、raw text、JSON 等。
超时设置通过配置超时设置,可以避免长时间等待,提高系统的响应速度。
重试次数重试次数设置允许在请求失败时自动重试,提高请求的成功率。
输出输出变量包括响应体、状态码和响应头。
异常忽略支持异常忽略功能。开启此功能后,如果试运行工作流时此节点运行失败,工作流不会中断,而是继续运行后续下游节点。如果下游节点引用了此节点的输出内容,则使用此节点预先配置的默认输出内容。

8.6 代码节点

代码节点赋予了用户通过编写代码生成返回值的能力。扣子更是为代码节点提供强大支持,在其中可使用 IDE 工具,借助 AI 自动生成代码,或是编写自定义代码逻辑,以此处理输入参数,进而返回响应结果。(代码节点支持 JavaScript 和 Python 两种语言)

8.7 选择器节点

选择器节点,本质上是一个 if-else 节点,它在工作流内分支流程的设计中扮演着关键角色。​

当参数输入到这个节点时,它会迅速判断是否契合 “如果” 区域设定的条件。一旦符合,便会执行与之对应的工作流分支;若不满足,就会转而执行 “否则” 对应的工作流分支。​

值得一提的是,每个分支条件都支持添加多个判断条件,无论是 “且” 关系还是 “或” 关系皆可。而且,还能添加多个条件分支。用户只需通过简单地拖拽分支条件配置面板,就能轻松设定分支条件的优先级。

8.8 意图识别节点

意图识别(Intent Recognition),旨在让智能体精准洞悉用户通过自然语言所表达的意图与目的。作为智能助手的一项核心能力,比如当用户在对话里输入 “我想查看今天的 AI 新闻”,这里面 “查看新闻” 便是用户意图,即用户期望智能体执行的操作。扣子工作流引入意图识别节点,能对用户意图进行有效归类,无需再借助大模型节点搭配选择器节点来实现意图识别,大大提升了工作流的运行效率。​

意图识别节点的应用场景十分广泛:​

1️⃣客户服务领域:准确识别用户问题的类别,将其转交给对应的各类知识库处理。要是在知识库中未能找到匹配问题,便会转交给人工客服。​

2️⃣医疗咨询场景:对用户咨询的医学问题合理归类,对于非医学问题的咨询则不予回复。​

3️⃣综合类智能体方面:对于功能丰富多样的智能体,可先由意图识别节点对用户咨询做初步分类,再转交给各个 Agent 分支进行处理。​

意图识别节点提供两种运行模式:​

1️⃣极速模式:能以较快速度对用户意图进行分类,适用于那些注重工作流运行效率的场景。在极速模式下,使用的是扣子预设的极速模型来开展意图识别,既不支持对模型进行修改,也不允许通过高级设置来指定模型分类的提示词。​

2️⃣完整模式:将意图识别效果放在首位,不过响应速度可能相对较慢,适合需要进行复杂逻辑判断的场景,像剧情类游戏中依据情节发展切换剧情。完整模式通常需要挑选意图识别能力突出的模型,并配合细致、严谨的提示词。

8.9 循环节点

循环是一种常见的控制机制,用于重复执行一系列任务,直到满足某个条件为止。扣子工作流提供循环节点,当需要重复执行一些操作,或循环处理一组数据时,可以使用循环节点实现。​

1️⃣知识库写入节点仅允许向文本类型的知识库上传文本类文档。​

2️⃣每次运行该节点,只能往知识库上传一个文件。不过,你可以借助批处理或循环节点,多次执行写入操作。​

3️⃣需要注意的是,知识库写入节点属于异步节点,在工作流执行过程中,无需等待文档上传完毕。

8.10 变量赋值节点

借助变量赋值节点,把特定的值赋予变量,就能达成数据的动态更新与传递,让工作流依据实时数据做出恰当处理与决策。变量赋值节点应用场景极为丰富,下面为您举例说明:​

1️⃣存储中间结果:在工作流运行过程中,可将中间计算或处理得出的结果,借助变量赋值节点存入变量,方便后续节点调用。就拿智能医疗诊断应用开发来说,对患者病历数据进行预处理时,像提取关键症状、检查结果等信息,这时设置变量 patient_info,通过变量赋值节点把患者病历数据存储其中,后续疾病诊断时,就能直接从 patient_info 变量获取患者详细信息。​

2️⃣记录用户输入:在涉及与用户交互的工作流里,用户输入的信息是后续处理的关键依据。通过变量赋值节点,可将用户输入存储至变量。例如开发智能客服机器人,当用户向客服机器人咨询产品问题,机器人提取用户所关心问题的关键词,随后把这些关键词通过变量赋值节点存入名为 user_query 的变量。在后续处理节点,机器人会依据 user_query 变量内容,从知识库检索相关答案或解决方案,并生成回复文本。​

3️⃣控制流程分支:工作流常常要依据不同条件决定执行不同的分支流程。变量赋值节点可用于设置控制流程分支的条件变量,通过赋予变量不同值,引导工作流进入相应分支。比如开发个性化推荐系统,需收集用户基本信息与行为数据,如年龄、性别、浏览历史等,分析用户兴趣偏好后,将结果通过变量赋值节点存入名为 user_preference 的变量。生成推荐内容时,依据 user_preference 变量值确定推荐策略。

8.11 变量聚合节点

在工作流设计包含多个分支的情况下,通常需要一个节点来汇总所有分支的输出结果,以此作为工作流的最终输出。然而,如果有任何一个分支未运行,负责汇总输出的节点就会从该分支读取到空值,进而致使工作流运行报错。针对这一情况,变量聚合节点便派上了用场,它能够聚合多路分支的输出变量。变量聚合节点会读取多路分支中第一个非空值,提供给流程下游的节点使用和操作,无需额外处理未运行分支的输出结果,极大地简化了数据流管理。​

举例来说,选择器或意图识别节点会把工作流拆分成多路分支,每次执行时,工作流会依据选择器条件或用户意图来决定运行其中某一个分支,如此一来,未执行的其他分支输出变量即为空。此时,可将多路分支都连接到变量聚合节点,并设定一个输出变量。不管执行的是哪条分支,其结果都能够通过这个变量被引用和访问,有效避免了下游节点对相同语义输出变量的重复定义。​

值得一提的是,变量聚合节点支持分组聚合,每组变量会被聚合为一个输出变量,且分组组内的数据类型必须保持一致。

8.12 输入节点

输入节点用于在工作流运行期间收集用户输入。​

在比较复杂的工作流场景中,某些节点的执行往往需要额外的用户输入。如果上游节点中没有获取到这些信息,你可以添加一个输入节点来主动收集信息。工作流执行到输入节点时会暂时中断,直到此节点收集到必要的用户输入。

8.13 输出节点

一般而言,工作流在执行结束后,会借助结束节点输出最终的执行成果。不过,当工作流的处理流程较为冗长、运行耗时较久时,开发者能够在工作流里添加输出节点,临时输出一则消息,防止用户因等待时间过长而放弃对话。比如向用户提示任务正在执行,建议他们耐心等候。​

输出节点具备流式与非流式两种模式,并且支持绑定卡片,能够呈现丰富多样的交互效果,进而提升对话过程中的用户体验。

8.14 知识库写入节点

在工作流的执行进程中,用户所拥有的权限可不只是从已上传的知识库里检索信息哦,还能够借助知识库写入节点主动对知识库进行更新,上传全新的文档内容。知识库写入节点作为智能体或应用的用户上传知识库的不二之选,其本质在于向一个已然创建好的知识库上传文件,而文件内容的切片策略会延用知识库的分段策略。

8.15 知识库检索节点

知识库是智能体专属的私有知识集合。通过知识库检索节点,能够依据用户输入,对指定的知识库展开查询,进而召回最为匹配的信息,并将匹配结果以列表形式呈现。​

1️⃣输入与输出​

知识库节点的输入参数固定为 Query,它代表着用户期望在知识库中检索的关键信息,此参数需要引用上游节点的输出参数。输入参数格式为 String,能引用任何格式的数据。​

输出参数固定为名为 outputList 的数组,其中含有多条召回结果,默认按照匹配度和相关性从高到低排序。​

2️⃣添加知识库​

在知识库区域右上角点击 + ,就能将知识库添加到节点中,支持添加多个文档、表格以及照片类型的知识库。​

3️⃣知识库检索配置​

知识库的检索配置在极大程度上会对召回结果的准确性与相关性产生影响。

8.16 批处理节点

批处理节点的作用在于实现部分操作的批量执行。​

在工作流执行过程中,每个节点会按顺序依次运行一次。要是你有一次性运行多次的需求,比如一次性查询多个城市的天气,这种情况下使用批处理节点,就能有效提升工作流的效率。批处理节点会对除批处理和循环节点之外的任何节点进行批量运行,直至达到次数限制或者列表的最大长度。​

批处理节点非常适合大量数据并行处理的场景。相较于添加多个相同节点来执行任务,批处理节点的效率更为出众。就像在批量根据故事生成绘本的场景里,需要依据每个故事片段生成对应的图片,此时你便可以借助批处理节点来执行文生图的工作流,一次性生成多张图片。

8.17 SQL自定义节点

SQL 自定义节点主要用于针对指定数据库开展常见的 SQL 操作。此前的数据库节点现已正式更名为 SQL 自定义节点。​

SQL 自定义节点能够与智能体或应用里指定的数据库建立连接,进而对数据库执行新增、查询、编辑、删除等常见操作,助力实现动态的数据管理。使用 SQL 自定义节点时,需要明确指定待操作的数据库表以及相应的 SQL 语句,而且该节点还支持通过自然语言智能生成 SQL 语句。

8.18 问答节点

在工作流里,你能够设计问答节点,以此主动收集用户信息、洞悉用户意图。​

工作流里的部分节点,其运行依赖于用户输入的信息或明确的意图。问答节点会通过自然语言表述的问题或选项,来收集特定信息,从而让对话进行得更为流畅。倘若在对话过程中触发了包含问答节点的工作流,智能体就会按照指定问题向用户发问,并等待用户给出回答。

8.19 文本处理节点

文本处理节点可对多种类型的输入数据开展字符串处理操作,在内容二次总结、文本拼接、文本转义等场景中发挥重要作用。比如,将多轮对话里的关键字拼接成 prompt 后用于文生图。​

文本处理节点支持字符串拼接与字符串分隔这两种处理方式。

8.20 长期记忆节点

长期记忆节点旨在工作流里召回长期记忆所储存的用户个性化信息。​

在诸如用户喜好推荐这类个性化场景中,往往需要依据用户画像、关键记忆点等个人数据来开展推荐与筛选工作,从而使智能体的服务更契合用户需求,提升用户体验。​

一般而言,我们能够借助多轮会话的上下文收集这些信息。然而,鉴于上下文轮数存在限制,个性化信息难以长期留存。​

在这种情况下,开启长期记忆功能就显得尤为必要,它能够记录并调用用户的个性化信息。​

在工作流中,同样可以通过长期记忆节点调用智能体的长期记忆,查询智能体已经记录的用户喜好、用户画像等信息,让工作流的成效更具个性化特色。

8.21 创建会话

会话,是用户与模型围绕同一主题展开的一连串连续对话交互,其中储存着用户输入的消息以及模型回复的消息。而创建会话节点,其作用在于工作流或对话流里创建一个空白的会话。​

对话流依靠会话来存储用户与模型之间的对话消息。每个对话流都必须绑定一个会话,将其作为开始节点的默认会话。在执行对话流时,产生的所有消息都会自动写入到这个会话之中。创建会话节点能够在工作流或对话流里生成全新的会话,新生成的会话初始时默认没有任何消息记录,只有在它被绑定到对话流并运行一次之后,才会有消息接入。​

在某些需要在运行过程中创建会话的特定场景下,可以借助会话节点创建会话,之后把新创建的会话作为对话流的入参,进而运行对话流并写入消息。

8.22 清除上下文

清除上下文节点的作用是清除指定会话里存储的上下文消息。​

会话里的历史消息也被称作上下文,它对大模型的性能以及文本生成效果起着关键作用。较长的上下文能够为模型提供更多信息参考,助力模型生成与上下文语义相符的文本片段,让模型输出的内容更加连贯且逻辑性更强。​

在多轮对话开启新话题时,过时的上下文同样会对模型的生成效果产生影响。比如,模型可能会召回一些过时的知识或记忆。此时,就可以运用清除上下文节点,将会话中已存储的上下文清除。成功清除后,对话流中的大模型节点读取到的对话历史将为空,后续的对话也不会受到之前历史消息的干扰。​

就像下面这段对话,清除上下文后,模型的回复会更为准确:​

用户:最近看了几个恐怖电影。​

模型:真是特别刺激、紧张的观影感受!你看了哪些恐怖电影?​

用户:你有什么别的好电影推荐吗?​

模型:当然!恐怖电影《闪灵》你感兴趣吗?​

【清除上下文】​

用户:你有什么别的好电影推荐吗?​

模型:依据最新搜索结果,这里有一些 2024 年备受期待与推荐的电影。

8.23 查询消息列表

查询消息列表节点,能够让你查看指定会话里的所有历史消息。​

每个对话流都得绑定一个会话,将其作为开始节点的默认会话。在执行对话流时,所产生的消息,无论是用户输入的,还是对话流输出的,都会自动写入到这个会话之中。查询消息节点具备展示指定会话中已记录的全部历史消息的功能。在工作流或对话流里添加此节点,并绑定一个列表组件,你就能在用户界面实时展示对话消息。

 

相关文章:

  • 学习MySQL第七天
  • 使用Pholcus编写Go爬虫示例
  • 高数 | 用简单的话讲考研数学知识点(二重积分)
  • 是德科技KEYSIGHT校准件85039B
  • Kubernetes 集群搭建(二):搭建k8s集群 (1.28版本)
  • rustdesk折腾手记
  • Git 仓库在内网与 Gitee 间迁移及同步记录
  • 2025年客运从业资格证考试真题分享
  • laravel update报In PackageManifest.php line 122:Undefined index: name 错误的解决办法
  • 浅谈微信视频号推荐算法
  • LLM面试题八
  • 如何在大型项目中有效使用TypeScript进行类型定义?
  • [ctfshow web入门] web18
  • vue3+element-plus多个多选下拉框并搜索
  • 多线程代码案例(定时器) - 3
  • 19. 删除链表的倒数第 N 个结点
  • OpenCv(七)——模板匹配、打包、图像的旋转
  • 在Unity中实现《幽灵行者》风格的跑酷动作
  • Linux 递归查找并删除目录下的文件
  • HTML基础教程:创建双十一购物狂欢节网页
  • 网站开发的售后 维保/免费html网站制作成品
  • WordPress 收款方案/搜索引擎优化的方法
  • 股票分析网站可以做推广吗/谷歌优化的网络公司
  • 网站日志分析教程/销售怎么找客户源
  • 枣庄市住房和城乡建设局网站/宁波百度快照优化排名
  • 网站开发 岗位职责/seo系统培训