以下是对 dify 工作流节点及相关功能的整理

一、基础与流程控制类节点
-
开始节点
-
功能:工作流的起点,用于初始化变量或接收用户输入数据(如文本、文件、下拉选项等),支持系统变量(如用户ID、应用ID)记录全局信息。 -
配置:可定义输入字段类型(文本、段落、文件等)和系统参数。
-
结束节点
-
功能:工作流终点,汇总关键结果输出。需声明输出变量,支持多分支不同结束节点。 -
条件分支节点
-
功能:根据条件(如文本包含、数值比较)决定执行路径,支持 IF/ELIF/ELSE
逻辑。 -
应用场景:客服意图分类、动态流程切换。 -
迭代节点
-
功能:对数组数据(如文本片段列表)批量处理,避免大模型单次处理限制。例如拆分长文本翻译。 -
循环节点
-
功能:依赖前序结果的递归处理,需设置终止条件(如变量阈值)和最大循环次数,适用于优化任务。
二、数据处理与转换类节点
-
参数提取节点
-
功能:从用户输入或数据中提取结构化参数(如日期、关键词)。
模板转换节点
-
功能:格式化数据输出,例如将JSON转换为自然语言描述。
变量赋值/聚合节点
-
功能:动态更新变量值或整合多变量信息。
代码执行节点
-
功能:运行 Python/JavaScript 脚本,处理复杂逻辑(如JSON解析、数学计算)。
问题分类节点
-
功能:识别用户意图,支持多标签分类(如邮件归类为咨询/投诉)。
三、AI与外部交互类节点
-
LLM节点
-
功能:调用大模型(如GPT-3.5、LLaMA)生成文本、分类、翻译或代码生成。 -
配置:需选择模型、设置提示词(如角色指令)和参数(温度、最大生成长度)。
知识检索节点
-
功能:从知识库检索相关内容,作为LLM上下文输入,提升问答准确性。
HTTP请求节点
-
功能:调用外部API获取数据(如天气查询、网页抓取),支持GET/POST方法和参数配置。
Agent节点
-
功能:通过策略(如Function Calling、ReAct)自主调用工具,实现多步推理。例如结合搜索工具解答复杂问题。
工具节点
-
功能:集成第三方服务(如数据库查询、发送消息),支持内置工具授权或自定义工具开发。
四、典型工作流案例
-
文章仿写流程
-
节点链:开始节点(输入原文)→ LLM节点(改写指令)→ 结束节点(输出结果)。 -
进阶:可整合HTTP节点抓取网页内容或知识库节点补充专业术语。
多轮对话系统
-
节点链:开始节点(用户输入)→ 知识检索 → LLM生成回复 → 直接回复节点(流式输出)。