一、 快速上手:创建你的第一个智能体 1
二、 基础界面与操作 5
(一) 界面布局 5
(二) 基本操作 7
三、 节点说明 8
(一) 开始 8
(二) 全局变量 19
(三) 结束 21
(四) 子流程 24
(五) 插件 25
(六) 大模型 25
(七) MCP 30
(八) 知识库 31
(九) QA知识库检索 36
(十) 网页内容 37
(十一) 数据库连接 40
(十二) 向量库 41
(十三) HTTP请求 42
(十四) 文档提取器 45
(十五) 意图识别 46
(十六) 条件分支 49
(十七) 参数提取器 53
(十八) 自定义组件 57
(十九) 变量赋值 58
(二十) 长期记忆 59
(二十一) 知识库写入 60
(二十二) 临时知识库写入 62
(二十三) 图生文 63
(二十四) 小程序 64
(二十五) 外部智能体 67
(二十六) 循环 69
(二十七) 变量聚合器 72
(二十八) 列表操作 75
我们将创建一个简单的“文本扩写”智能体,让你快速熟悉整个流程。
目标:接收用户输入的一句话,让智能体帮你扩写成一段更丰富的描述。
所需节点:开始→大模型→结束
操作步骤:






恭喜!你已经成功创建并运行了你的第一个智能体。
这个界面是用来搭建高级智能体的工作台。

所有节点的摆放、连接都在这里完成,默认有一个开始节点。

若配置问题清单已为空,可以点击右下角的蓝色图标,进入调试页面,系统会模拟智能体的运行过程,你可以查看智能体在接收输入(比如开始节点中的用户名、用户问题等变量)后,各个节点是不是都按计划走,该做的都做了没,输出是否符合要求。

从左侧功能组件区用鼠标选中所需节点,按住鼠标左键,将其拖拽至中间工作区合适位置。
鼠标放在节点右侧的连接点上(输出点),待出现黑色十字架后,点击并拉出一条虚线,拖向并连接至目标节点左侧的连接点(输入点)。
点击节点名称右边的修改按钮,重命名。

“开始”节点是整个智能体流程的起点,在这里可以设置流程需要的输入信息,作为后续节点处理的基础数据。
在开始节点的设置页,你可以看到两部分,分别是预设的“系统变量”和可添加的“高级变量”。

系统变量
| 变量名称 | 数据类型 | 说明 | 备注 |
|---|---|---|---|
| 用户名 | String | 用户在系统中的名称标识 | |
| 用户ID | String | 分配给每个应用用户的唯一标识符,用以区分不同的对话用户 | |
| 用户角色 | String | 标识用户在系统中所具有的角色,如管理员、普通用户等 | |
| 应用ID | String | 区分不同的应用,并通过此参数记录当前应用的基本信息 | |
| 用户问题 | String | 用户所提出的问题内容 | |
| 文件列表 | Array[File] | 存储用户初始使用应用时上传的图片 | 点击 “文件列表” 右侧的齿轮形状设置图标,会弹出 “上传设置” 弹窗 |
| 图片列表 | Array[File] | 存储相关图片文件的列表 | 点击 “图片列表” 右侧的齿轮形状设置图标,会弹出 “上传设置” 弹窗 |


高级变量
点击 “+ 添加高级变量” 按钮。

弹出 “高级变量” 配置界面。左侧是控件区域,用鼠标选中所需控件,按住鼠标左键,将其拖拽至中间使用。放置后右侧控件属性区域显示对应控件的属性调整项,可对每个控件进行精细化的设置与管理。

共有控件属性
控件和控件特有属性











然后是右侧表单属性区域:

最后,点击预览,点击保存。

全局变量是用户存储所需要的上下文信息,如用户偏好、对话历史等。它是可读写的。支持定义String、Number、Object,以及这三种类型的数组。
全局变量在会话过程中不会被清空,直至新增会话。
点击蓝色“fx”图标,进行添加全局变量,定义好中文名、英文名、变量类型、默认值等。


标记一个流程的结束,后续不再有其他节点的执行。

“结束” 节点可以接收来自前面节点(比如这里的 “大模型_1” 节点)的输出内容(如 “大模型_1 / 模型输出”),将其作为整个流程最终的结果载体。

在长工作流中,结束节点配置的变量为上游代码节点的输出。


将一段常用的、复杂的逻辑的工作流发布封装成一个节点,方便在多个主流程中复用,让主流程更简洁。

用于扩展流程的功能,通过添加不同类型的插件(比如计算器、代码执行器、搜索插件等),来实现数学计算、代码运行、网络搜索等特定操作。

调用大语言模型,让模型根据输入内容生成相应的输出,比如回答问题、生成文本等。

比如与“开始”节点连接,获取用户的输入信息,作为模型处理的原始数据。
点击“模型”下拉框 ,从列表里选择适合业务场景的 AI 模型。不同模型在功能、性能、适用领域等方面存在差异,有些模型擅长文本生成,有些在专业知识问答方面表现出色。
大模型的“温度”是一个控制生成文本随机性的参数,可以理解为调节模型“脑洞大小”的旋钮,一般取值在 0-1 之间:
在“提示词”输入框中,输入引导模型生成期望回答的文本。
提示词的编写其实很简单,下面是一张提示词的通用模板:

“用户问题” 输入框可以关联上游节点(如“开始”节点)传递过来的向模型询问的问题,这样模型就能基于用户的实际问题进行回答。正常情况下就是选择用户问题,也可以自由选择其他变量作为问题,也可以手动输入文字固定用户问题。

用于控制模型的输出方式。
若开启(如左图),模型会边生成回答边返回结果,用户可以更快看到部分内容,提升交互体验,适用于对响应及时性要求较高的场景,如实时对话;若关闭(如右图),模型会在完整生成回答后一次性返回结果,适用于对回答完整性要求高,不追求实时反馈的场景。

配置好大模型节点后,可以进行测试。模拟几个用户会提的问题,观察模型的输出结果是否符合预期。如果结果不理想,可尝试调整模型选择、温度值、提示词内容等,重新测试,直到获得满意的结果。
大模型节点通常需要继续与其他节点配合使用。
例如,需要对一段文本内容进行扩写。


MCP 是 Anthropic 提出的开源标准协议。支持在工作流中进行配置。


从预设的知识库中检索信息,匹配用户提出的问题并生成回答。

在 “用户问题” 输入框右边,点击”添加“按钮,选择需要查询的用户问题。这是知识库检索的核心依据,系统会基于这个问题去知识库中寻找匹配的信息。

点击知识库区域的 “+” 按钮,添加所需的知识库,可以添加多个。只有添加了对应的知识库,系统才能从该知识库中检索信息。

设置从知识库中引用内容的上限值(例如最大值为 14000),这个值决定了从知识库中获取的内容量的上限,避免获取过多或过少的内容,主要取决的于大模型的长下文长度限制,如果大模型的长下文长度越大,知识库的引用上限数值可相应扩大。
通过拖动 “最低相关度” 的滑块,调整检索结果与用户问题的最低相关程度。滑块数值范围在 0.01 到 1 之间,数值越高,要求检索结果与用户问题的相关度越高,检索出的结果会更精准,但可能数量更少;数值越低,检索出的结果范围会更广,但精准度可能降低。
拖动 “Top K” 的滑块,设置返回的最相关结果的数量。滑块范围在 0 到 50 之间,比如设置为 5,就会返回与用户问题最相关的 5 条结果。
例如,需要从指定知识检索相关内容并返回。


从专门的问答(QA)类型知识库中检索信息,匹配用户提出的问题并生成回答。

具体步骤同知识库节点。
具体步骤同知识库节点。
具体步骤同知识库节点。
具体步骤同知识库节点。
用于精准提取指定网页的数据并输出。

填写需要提取数据的网页地址。如果有多个不同网址,通过换行来分隔。
根据需求选择网页内容的更新频率,可选项有“每天”“每 3 天”“每 7 天”“每 30 天” 和 “不更新”。若选择 “不更新”,则仅提取一次网页内容;选择其他频率,会按照设定的时间间隔定期更新提取的网页数据。
选择抓取网页内容的深度,比如 “抓取当前网页内容”,确定要提取的网页范围。
例如,需要从下面两个网页捕获数据并输出,可以使用网页内容插件编排工作流。


需要捕获的网页一:https://top.baidu.com/board?platform=pc&sa=pcindex_entry
需要捕获的网页二:https://news.baidu.com/

配置网页内容节点
输入:在网址链接文本框输入需要捕获的网址,作为该节点的输入。
输出:为了快速查看捕获网页的输出效果,将该节点的输出作为结束节点的输入内容。


如果需要将捕获的数据整理成更清晰的结构,可以在网页内容节点后面添加一个数据整理大模型,大模型接收网页捕获的数据并进行整理,然后输出给结束节点作为返回内容。


用于连接指定数据库,选择通过大模型,将用户输入的内容转为sql查询语句,查询数据库中的数据,并输出。

填写数据库类型、数据库名称、主机地址、端口号、用户名和密码等。
配置sql语句:通过填写各种参考的sql语句,让大模型参考学习,提高大模型编写sql的准确度。
配置DDL:即建表语句,能够让大模型理解每张表每个字段的含义,提高大模型编写sql的准确度。
配置描述:通过文本描述,提供额外的信息,供大模型进行参考,让大模型更易理解表的数据结构等,提高大模型编写sql的准确度。
向量库节点是通过在工作流中配置对应知识数据源连接信息,根据语义查询知识数据源中相似片段数据。

{"url":"http://IP地址:端口号"}
{"type":"bywin","host_base_url":"xxx","model":"bge-m3"}
集合名称。就是向量数据库中用来逻辑隔离不同数据集合的“名字”,是最上层的数据划分单位,相当于传统数据库里的“库名”。
HTTP 请求节点支持用户通过 HTTP 协议调用外部服务,以实现数据获取、提交与接口交互。该节点涵盖多种 HTTP 请求方法,并支持对请求参数、请求头、鉴权信息及请求体进行灵活配置,满足多样化的数据交互场景。此外,节点还提供超时设置等控制选项,有效保障请求的可靠性与数据处理的准确性。
该节点支持常见的 HTTP 请求方法:
GET:用于请求服务器返回指定资源。
POST:用于向服务器提交数据,通常用于创建资源或执行操作。
在使用 HTTP 请求节点实现数据获取、提交等功能时,通常需要配置 API、请求参数、请求头、鉴权、请求体等参数
| 配置项 | 说明 |
| API | 配置 API 请求地址和方法,支持以下请求方法: GET:用于请求从外部服务获取数据,例如调用 API 获取用户信息、天气数据等。 POST:用于向服务器提交数据,例如提交表单。 |
| 请求参数 | 请求参数是附加在 URL 后面的键值对,用于向服务器传递额外的信息。例如,在搜索请求中,可以通过请求参数传递搜索关键词。 |
| 请求头 | 请求头包含客户端的信息,如 User-Agent、Accept 等。通过配置请求头,可以指定客户端的类型、接受的数据格式等信息。 |
| 请求体 | 请求体是 POST 请求中包含的数据,可以是表单数据、JSON 数据等。根据不同的请求类型和数据格式,可以选择相应的请求体格式,例如 form-data、x-www-form-urlencoded、raw text、JSON 等。 |
| 超时设置 | 通过配置超时设置,可以避免长时间等待,提高系统的响应速度。 |
| 输出 | 输出变量包括响应体、状态码和响应头。 |

大模型自身无法直接读取或解释文档的内容。因此需要将用户上传的文档,通过文档提取器节点解析并读取文档文件中的信息,转化文本之后再将内容传给大模型以实现对于文件内容的处理。
在“输入变量”下拉框中,选择包含用户上传文件的变量,这里选择的是“文件列表”,该变量存储着需要解析的文档文件。


自动分辨用户问的是什么问题,然后走不同的处理流程。

在 “模型”下拉框中,选择合适的意图识别模型。
在 “背景知识” 输入框中,填写有助于意图识别的背景信息,比如相关领域的定义、概念等,为模型识别用户意图提供更多参考依据。
在 “用户问题” 输入框中,填写需要进行意图识别的用户问题。
在 “分类 1”“分类 2”“分类 3” 等输入框中,分别填写不同的分类内容,让模型能根据用户问题将其归类到对应的分类中,进而执行不同的操作路径。可以添加、删除分类。
常见的使用情景包括客服对话意图分类、产品评价分类、邮件批量分类等。
例如,需要搭建一个智能导服智能体,通过接收用户问题,后台自动判断用户意图并进行意图分类。


根据设定的IF/ELSE IF/ELSE条件逻辑,将流程拆分成多个分支,走不同处理流程。
条件分支的运行机制包含以下六个路径:
条件类型
支持的条件类型取决于变量的数据类型
数字变量:
字符串/数字/对象变量:
布尔值变量:
布尔值数组变量:

在 “IF” 区域,通过选择 “变量”(可从流程中的变量里选取,比如 “用户名”“用户 ID” 等)、“操作”(如等于、大于、包含等逻辑操作)以及填写 “值”,来定义条件。例如,设置 “如果用户角色等于‘教职工’” 这样的条件。
点击 “+ 添加条件”,可以添加多个条件。
在 IF 条件满足时,可在对应的分支下添加后续的操作节点。
在 “ELSE” 区域,点击 “添加分支”,设置当 IF 条件不满足时执行的操作路径,同样可以添加相应的操作节点。
例如,在校园智能服务场景中,需要根据用户角色(教职工或学生),为其查询不同的知识库内容,教职工可查询教学资源、教职工福利等相关知识库,学生可查询课程安排、校园活动等相关知识库。只有当用户角色为“教职工”时,系统回复“已为您查询教职工知识库,您可查看教学资源、教职工福利等相关信息:...”;否则,回复“已为您查询学生知识库,您可查看课程安排、校园活动等相关信息:...”。

IF部分引用开始节点的“用户角色”变量,设置如上图条件,当用户角色=“学生”,链接一个学生知识库,再链接一个结束节点,ELSE部分直接链接另外一个结束节点作为返回内容。


参数提取器可以将用户的自然语言转换为工具可识别的参数,方便工具调用。工作流内的部分节点有特定的数据格式传入要求,参数提取器可以从流程中抽取参数,方便的实现结构化参数的转换,进行处理或用于其他操作。

在 “变量” 下拉框中,选择需要从中提取参数的变量,这些变量包含了流程中的相关数据。
在 “模型” 下拉框中,选择合适的模型。
在 “提取参数” 区域,可选择 “整体” 或 “拆分” 方式。
“整体” 是对变量整体进行参数提取相关操作;“拆分” 则是将变量拆分为部分来提取参数。点击 “+” 按钮可以添加具体的提取参数。
在 “指令” 输入框中,输入相关指令,用于指导参数提取的具体逻辑或操作。
例如,需要从指定的文本内容中提取姓名、手机号等信息。





自定义组件节点支持通过编写代码来生成返回值。支持在节点内使用 IDE 工具,编写自定义代码逻辑,来处理输入参数并返回响应结果

声明代码中需要使用的变量。添加输入参数时需要设置参数名和变量值,其中变量值支持设置为固定值或引用上游节点的输出参数。
直接使用输入参数中的变量,通过return一个对象来输出处理结果
代码运行成功后,输出的参数。你可以根据实际需求,在输出结构中只保留必要的参数。
对全局变量进行变量赋值操作。通过变量赋值节点,可以将工作流内的全局变量进行,并可以在后续对话中持续引用。

覆盖:将流程中的变量赋值给全局变量;
设置:输入任意内容,将全局变量设置为该值;
清空:将全局变量的值清空;
追加:(仅支持数组类型的数据)将设置的变量的值添加至数组中进行累计,不清除原有内容。
加减乘除:(仅支持数字类型的数据)支持对数字类型的全局变量,进行加减乘除操作,填对应的数字,即代表在原来全局变量数值上进行增加、乘以、除以、减去对应输入的数字。
用于记录聊天页面的聊天内容。

点击 “输入” 区域的 “+ 添加” 按钮,你可以把想长期记住的东西加进来。
在 “记忆轮次” 输入框中,输入记忆的轮次数值,这个数字决定了智能体能记住之前多少轮对话的内容,会影响到它怎么存和怎么用这些记忆。
在 “模式” 下拉框中,选择 “记忆模式” 或 “总结模式”。
“记忆模式” 主要是对聊天内容进行常规的记忆存储;“总结模式” 则可能会对聊天内容进行总结后再存储,更便于后续快速获取核心信息。
用于将数据文件写入指定知识库。
在 “输入” 区域,引用要写入知识库的变量值,作为知识库的新增知识来源。
点击 “知识库” 区域的 “+” 按钮,添加要写入的目标知识库。
智能分段:平台自动智能切割。简单有效,固定大小分段上下文,适合内容不复杂的场景。
递归分段:适用于结构清晰的文档,先按文档的自然分隔(比如段落或章节)分成大块,如果某块太大(超过限额大小),就再细分成一段。
语义分段:适用于需要上下文语义相同但是不在同一个段落内的文档。将根据内容的“意思”来切,如果内容相似,就合并成一段;如果差异较大,就分不同段进行切割。
自定义切割:灵活定制,支持自定义分段规则,分段长度及预处理规则

若有需要,可勾选 “解析图片内容” 等选项,让节点在处理数据时,能解析图片中的内容并纳入知识库;也可根据需求选择是否 “替换掉连续的空格、换行符和制表符”“删除文档中的链接和电子邮箱地址”等。
对文档进行分段并进行向量化处理,转为临时知识库,需要通过知识库节点对临时知识库内容进行召回。
由于大模型长下文长度限制,当文档字数超过长下文长度限制的时候,无法使用文档提取器,需要使用临时知识库。
具体步骤同知识库写入节点。
具体步骤同知识库写入节点。

具体步骤同知识库写入节点。
使用临时知识库,只是将文档内容分块并转为向量,临时存起来,需要该节点后方连接“知识库”节点,通过语义检索、关键词检索及混合检索召回相关的片段。
利用多模态模型,输入图片变量,结合提示词生成文本内容。

在 “模型” 下拉框中,选择合适的多模态模型。
通过拖动 “温度” 滑块,调整生成文本的创造性等特性,温度越高,生成的文本越具创造性;温度越低,生成的文本越趋于保守、稳定。
在 “提示词” 输入框中,输入用于引导文本生成的提示词,提示词越详细、精准,生成的文本越符合需求。
在 “用户问题” 输入框中,输入用户的问题,作为文本生成的参考依据之一。需要加工处理的图片变量,也要放在用户问题这边。
用于设计并且将设计好的小程序功能与其他业务流程或系统对接起来。

在 “输入变量” 区域,点击 “+” 按钮添加输入变量,为每个输入变量设置变量名和变量值,这些输入变量可作为小程序运行时的参数来源。
点击 “去设计” 按钮,进入小程序的设计界面(如第二张图),在该界面中可以编写 HTML、CSS 和 JavaScript 代码,用于定制小程序的页面结构、样式和交互逻辑。

在设计界面中,可通过 “预览” 区域查看小程序的效果,调整代码直到满足需求,然后点击 “确定” 按钮保存设计。
例如,输入修改密码,展示修改密码的小程序页面。




对接外部平台的智能体服务。

在 “来源平台” 下拉框中,选择外部智能体所在的平台,例如图中选择 “Dify 平台”。

输入项


用于重复执行一段流程,直到满足退出条件或达到最大循环次数。

在 “循环类型” 下拉框中,可选择 “使用数组循环”(基于数组元素数量进行循环,数组有多少个元素就循环多少次)或 “指定循环次数”(手动设置具体的循环次数)。

在 “输入变量” 区域,点击 “+” 添加输入变量,设置变量名、变量类型,并选择变量值(通常为要循环处理的数组),数组中的每个元素会触发一次循环执行。

在 “循环次数” 输入框中,输入具体的循环次数数值,确定流程要重复执行的次数。

在 “输出变量” 区域,设置变量名和选择变量值的来源等,用于存储循环执行过程中或执行后的相关数据,方便后续节点使用。
在循环节点的流程区域内(“开始”和“结束”之间),添加需要重复执行的节点,这些节点会按照设定的循环次数重复运行。

把多个分支的变量合并成一个,这样后面节点用起来就方便多了。变量聚合节点(原变量赋值节点)是工作流程中的一个关键节点,它负责整合不同分支的输出结果,确保无论哪个分支被执行,其结果都能通过一个统一的变量来引用和访问。这在多分支的情况下非常有用,可将不同分支下相同作用的变量映射为一个输出变量,避免下游节点重复定义。

通过变量聚合,可以将诸如问题分类或条件分支等多路输出聚合为单路,供流程下游的节点使用和操作,简化了数据流的管理。
未添加变量聚合,分类1 和 分类 2 分支经不同的知识库检索后需要重复定义下游的 LLM 和直接回复节点。
添加变量聚合,可以将两个知识检索节点的输出聚合为一个变量。

变量聚合器支持聚合多种数据类型,包括字符串(String)、数字(Number)、文件(File)对象(Object)以及数组(Array)。
若第一个添加至变量聚合节点内的变量数据格式为String,后续连线时会自动过滤可添加变量为String类型。
开启聚合分组后,变量聚合器可以聚合多组变量,各组内聚合时要求同一种数据类型。

对数组内容进行过滤或排序等操作。文件列表变量支持同时上传文档文件、图片、音频与视频文件等多种文件。应用使用者在上传文件时,所有文件都存储在同一个数组类型变量内,不利于后续单独处理文件。列表操作节点可以在数组变量内提取单独的元素,便于后续节点处理。

列表操作节点可以对文件的格式类型、文件名、大小等属性进行过滤与提取,将不同格式的文件传递给对应的处理节点,以实现对不同文件处理流的精确控制。例如在一个应用中,允许用户同时上传文档文件和图片文件两种不同类型的文件。需要使用列表操作节点进行分拣,将不同的文件类型交由不同流程处理。
列表操作节点一般用于提取数组变量中的信息,通过设置条件将其转化为能够被下游节点所接受的变量类型。它的结构分为输入变量、过滤条件、排序(可选)、取前 N 项(可选)、输出变量。
输入变量
列表操作节点仅接受以下数据结构变量:
过滤条件
处理输入变量中的数组,添加过滤条件。从数组中分拣所有满足条件的数组变量,可以理解为对变量的属性进行过滤。举例:文件中可能包含多重维度的属性,例如文件名、文件类型、文件大小等属性。过滤条件允许设置筛选条件,选择并提取数组变量中的特定文件。支持提取以下变量:

排序
提供对于输入变量中数组的排序能力,支持根据文件属性进行排序。

取前 N 项
可以在 1-20 中选值,用途是为了选中数组变量的前 n 项。
输出变量
满足各项过滤条件的数组元素。过滤条件、排序和限制可以单独开启。如果同时开启,则返回符合所有条件的数组元素。