循环
简介
循环(Loop)节点用于执行依赖前一轮结果的重复任务,直到满足退出条件或达到最大循环次数。
循环节点与迭代节点有什么区别?
循环节点和迭代节点在任务处理上的定位不同:
循环(Loop)
轮次之间存在依赖关系的优化型任务。即任务的每一轮执行都依赖上一轮的结果。
需要前一轮的计算结果。
迭代(Iteration)
轮次之间无依赖关系的批处理任务。即每一轮任务可以独立运行,无需依赖前一轮。
每轮独立执行。
如何配置循环节点?
循环节点包含以下三个关键配置项和一个子节点:
循环终止条件(Loop Termination Condition)
设置循环何时停止。
例:当变量 x < 50
时,停止循环。
最大循环次数(Maximum Loop Count)
限制最多执行的轮次,避免无限循环。
例:最多执行 10 轮,不管是否满足退出条件。
循环变量(Loop Variables)
用于在循环的不同轮次间传递数据,并在循环结束后继续供下游节点使用。
例:变量 x < 50
在每轮循环中递增 1,循环体内部可以基于 x < 50
进行计算,循环结束后,x < 50
的最终值可用于后续流程。
退出循环节点(Exit Loop)
当循环体内运行到此节点后,循环终止。
例:最多执行 10 轮,不管是否满足退出条件。
示例一:如何使用循环节点?
需求:生成 1-100 的随机数,直到随机数小于 50 时停止。
实现步骤:
在 循环 节点中,配置 循环终止条件,为 模板转换 节点输出
done
。使用 代码执行 节点生成
1-100
的随机数。使用 条件分支 节点判断随机数是否大于
50
:
如果大于或等于 50,输出
当前数字
并继续循环,生成新的随机数。如果小于 50,输出
最终输出数字
,并经由 模板转换 节点输出done
,结束循环。
循环将在随机数小于
50
时自动停止。
示例二:如何使用循环变量与退出循环节点?
需求:通过一个循环工作流生成并逐步重写一首诗,每次输出都基于上一轮的结果。循环执行 4 次后自动停止。
实现步骤:
在 循环 节点中,配置 循环变量,用于在每次迭代中传递数据:
num(循环次数):初始值为 0,每次循环 +1。
verse(诗歌内容):初始值
I haven’t started creating yet
,后续每次循环更新。
使用 条件分支 节点判断循环次数是否大于
3
:
如果大于 3,则进入 退出循环 节点,结束循环。
如果小于或等于 3,则进入 LLM 节点继续循环。
使用 LLM 节点,要求模型根据用户的输入和过往的创作输出诗歌内容。
在第一次循环时,verse 为 I haven’t started creating yet
,之后每次循环根据上一轮的输出更新诗歌。每次模型生成的新诗歌都会覆盖 verse 变量,供下一次循环使用。
使用 变量赋值 节点,在每次循环后更新循环中的变量:
更新 num 变量,每次循环 +1。
更新 verse 变量为模型新生成的诗歌内容,直接覆盖前一轮循环的诗歌内容。
输入你的诗歌灵感,模型将输出四个版本的诗歌,每一篇诗歌都以前一篇为基础而产生。
Last updated