工作流变量聚合节点能够将多路分支的输出变量整合为一个,方便下游节点统一配置。
工作流就像流水线,有时会分成几条支线同时处理不同任务。但最后要把所有支线的结果汇总时,如果其中某些支线没运行,就会出错。
这时候可以加个 "智能收集箱"(变量聚合节点)。这个箱子会自动忽略没运行的支线,只收集实际运行的那条支线的结果。比如:
-
用户说 "查天气",系统就会走天气查询的支线,其他订票、翻译等支线自动跳过
-
这个收集箱会把天气数据装好,传给后面的步骤使用
它还能分类收集:
-
比如同时收集温度(数字)和天气描述(文字),但要分开成两个变量
-
每个类别里的数据必须同类型,就像水果和蔬菜要分开装袋
这样设计的好处是不用担心漏掉哪条支线,后续步骤都能稳定拿到有效数据。
未使用变量聚合前:
需要在结束节点中,返回多个变量。
在分支较少时,这样做没问题。但在分支较多时,这样就会显得非常乱。
使用变量聚合后:
在结束节点中,仅需返回一个变量即可
配置节点
聚合策略:目前聚合策略仅支持设置为“返回每个分组中第一个非空的值”
你可以理解为:有三个候选答案(output1、2、3),选人规则是:
1️⃣ 先看第一个候选答案(output1)
2️⃣ 如果第一个没答案,就选第二个(output2)
3️⃣ 如果前两个都没有,才用第三个(output3)
就像选班长投票,第一候选人优先当选,只有他弃权才会轮到第二候选人,以此类推。
聚合变量
简单来说:
-
想合并多个数据时,必须选同类型的。比如只能合并文字和文字,数字和数字。
-
支持合并的类型很多:文字、数字、文件、对象、数组等。
-
每次合并只能处理一种类型。比如把 3 个文字合并成一句,或者把 5 个数字合并成一个总和。
举例:不能把文字和数字混在一起合并,但可以把多个地址文字合并成一个完整地址,或者多个金额数字合并成总金额。
聚合分组
你可以把分组想象成不同的收纳盒:
-
默认有一个叫 "Group1" 的盒子,里面只能放同类型的东西(比如全放苹果)
-
每个盒子最终只能拿出一样东西(输出变量)
-
如果你要同时拿出苹果和数字,就需要:
-
准备两个盒子:一个专门放苹果的盒子,一个专门放数字的盒子
-
每次分东西时,把苹果放进苹果盒,数字放进数字盒 这样最后就能同时得到两种不同的东西啦!
-
输出
假设我们要统计不同班级的学生平均分:
-
按班级分组后,"Group1" 就是存放每个班级计算结果的地方(比如一班平均分 90,二班 85)
-
如果同时按班级 + 性别分组,就会生成 Group1(班级结果)和 Group2(性别结果)
-
数据格式取决于你统计什么:算平均分会得到数字,统计人数可能得到整数,统计学生名单会得到文本列表
就像把水果分类装筐,每个筐(Group)有自己的统计方式(比如称重量 / 数个数),筐上会自动贴好 Group1、Group2 的标签。
文章转载自:https://gwl1554ppni.feishu.cn/wiki/G8YSwgk7MiW7rbkxCLcc35VjnPf
欢迎关注公众号【AI技术开发者】