Sim

循环

循环块是一个容器,用于重复执行块。可以迭代集合、重复操作固定次数,或在满足条件时继续执行。

循环块是容器节点,内部包含其他块。根据您的配置,内部块会多次执行。

配置选项

循环类型

选择以下四种循环类型之一:

For 循环(迭代) - 一个执行固定次数的数字循环:

带有迭代的 For 循环

当需要重复操作特定次数时使用此方法。

Example: Run 5 times
- Iteration 1
- Iteration 2
- Iteration 3
- Iteration 4
- Iteration 5

ForEach 循环(集合) - 一个基于集合的循环,迭代数组或对象中的每一项:

带有集合的 ForEach 循环

当需要处理一组项目时使用此方法。

Example: Process ["apple", "banana", "orange"]
- Iteration 1: Process "apple"
- Iteration 2: Process "banana"
- Iteration 3: Process "orange"

While 循环(基于条件) - 当条件为真时继续执行:

带有条件的 While 循环

当需要循环直到满足特定条件时使用此方法。条件在每次迭代的之前进行检查。

Example: While {"<variable.i>"} < 10
- Check condition → Execute if true
- Inside loop: Increment {"<variable.i>"}
- Inside loop: Variables assigns i = {"<variable.i>"} + 1
- Check condition → Execute if true
- Check condition → Exit if false

Do-While 循环(基于条件) - 至少执行一次,然后在条件为真时继续执行:

带有条件的 Do-While 循环

当需要至少执行一次,然后循环直到满足条件时使用此方法。条件在每次迭代的之后进行检查。

Example: Do-while {"<variable.i>"} < 10
- Execute blocks
- Inside loop: Increment {"<variable.i>"}
- Inside loop: Variables assigns i = {"<variable.i>"} + 1
- Check condition → Continue if true
- Check condition → Exit if false

如何使用循环

创建循环

  1. 从工具栏中拖动一个循环块到画布上
  2. 配置循环类型和参数
  3. 将其他块拖入循环容器内
  4. 根据需要连接这些块

访问结果

循环完成后,您可以访问聚合结果:

  • <loop.results>:所有循环迭代结果的数组

示例用例

处理 API 结果 - ForEach 循环处理来自 API 的客户记录

API (Fetch) → Loop (ForEach) → Agent (Analyze) → Function (Store)

迭代内容生成 - For 循环生成多个内容变体

Loop (5x) → Agent (Generate) → Evaluator (Score) → Function (Select Best)

带计数器的 While 循环 - While 循环使用计数器处理项目

Variables (i=0) → Loop (While i<10) → Agent (Process) → Variables (i++)

高级功能

限制

容器块(循环和并行)不能嵌套在彼此内部。这意味着:

  • 您不能将一个循环块放入另一个循环块中
  • 您不能将一个并行块放入循环块中
  • 您不能将任何容器块放入另一个容器块中

如果您需要多维迭代,请考虑重构您的工作流以使用顺序循环或分阶段处理数据。

循环是按顺序执行的,而不是并行执行。如果您需要并发执行,请使用并行块。

输入和输出

  • 循环类型:选择 'for'、'forEach'、'while' 或 'doWhile'

  • 迭代次数:执行的次数(for 循环)

  • 集合:要迭代的数组或对象(forEach 循环)

  • 条件:布尔表达式(while/do-while 循环)

  • loop.currentItem:当前正在处理的项目

  • loop.index:当前迭代编号(从 0 开始)

  • loop.items:完整集合(forEach 循环)

  • loop.results:所有迭代结果的数组

  • 结构:结果保持迭代顺序

  • 访问:在循环后的块中可用

最佳实践

  • 设置合理的限制:保持迭代次数在合理范围内,以避免长时间的执行
  • 对集合使用 ForEach:在处理数组或对象时,使用 ForEach 而不是 For 循环
  • 优雅地处理错误:考虑在循环中添加错误处理,以实现更健壮的工作流程
On this page

On this page

Start building today
Trusted by over 60,000 builders.
Build Agentic workflows visually on a drag-and-drop canvas or with natural language.
Get started