跳转到内容

Loop(循环)

节点概述 ​

节点英文名: Loop
节点中文名称: 循环
支持场景: Chatflow Agent(支持), Workflow Agent(支持)

功能说明 ​

Loop 节点按设定的循环次数或条件反复执行同一段逻辑,常用于批量处理或多次迭代。它提供了强大的循环控制能力,支持条件循环和计数循环两种模式。

节点展示内容 ​

循环节点在画布上的展示:容器内为 Home 起点与添加节点入口

1. 基本信息展示 ​

  • 图标: 节点专用图标
  • 名称: 节点名称
  • 循环内的工作模块:
    • 循环内的初始节点为 Home
    • 循环内支持添加节点(除了 Start 和 End 外,都可以添加)
    • 循环内节点的操作逻辑和循环外相同
    • 循环中有特殊节点(结束循环)
  • 注释: 用户添加的说明文字

2. 操作按钮 ​

  • 更多按钮: 点击后展示右键菜单内容
  • 运行按钮: 点击进入试运行界面

节点编辑区域 ​

循环节点编辑面板:循环变量、循环中止条件、最大循环次数 (滑杆) 与下一步

1. 循环变量配置 ​

  • 用途: 用于循环中止条件的计算
  • 变量管理: 支持添加多个循环变量
  • 数据生产: 每个循环变量在循环的过程中进行数据生产
  • 输出变量: 在循环结束时作为输出变量

2. 循环中止条件 ​

  • 条件配置: 支持多个循环条件项,详细逻辑同条件分支的"条件项"
  • 条件类型: 支持各种条件判断
  • 逻辑关系: 支持 AND/OR 逻辑关系

3. 最大循环次数 ​

  • 范围: 最小 1 次,最大 100 次
  • 安全控制: 防止无限循环
  • 性能考虑: 平衡循环次数和性能

4. 下一步配置 ​

  • 支持添加下一个节点

运行逻辑 ​

1. 循环执行流程 ​

  1. 运行循环: 开始执行循环逻辑
  2. 条件判断: 判断循环是否符合中止条件或者达到次数上限
  3. 继续/停止: 符合条件就停止,不符合条件就继续
  4. 日志记录: 每个循环的过程记录循环的输出条件到日志
  5. 输出结果: 循环结束时,循环变量的最终状态作为输出变量

2. 循环控制 ​

  • 条件控制: 基于条件判断控制循环
  • 计数控制: 基于循环次数控制循环
  • 混合控制: 同时使用条件和计数控制

右键操作 ​

右键菜单包含以下选项:

  1. 更改节点: 修改节点类型
  2. 拷贝: 复制节点
  3. 复制: 复制节点内容
  4. 删除: 删除节点
  5. 帮助链接: 跳转到帮助文档
  6. 运行节点: 测试运行当前节点

测试运行 ​

  • 支持状态: 支持测试运行
  • 更改节点: 支持更改节点类型
  • 复制功能: 支持复制、剪贴、删除操作

使用场景 ​

1. 批量处理 ​

  • 数据处理: 批量处理大量数据
  • 文件处理: 批量处理多个文件
  • API 调用: 批量调用多个 API
  • 任务执行: 批量执行多个任务

2. 迭代计算 ​

  • 数值计算: 迭代计算数值结果
  • 算法实现: 实现迭代算法
  • 优化问题: 解决优化问题
  • 收敛计算: 计算收敛结果

3. 状态检查 ​

  • 状态监控: 监控系统状态
  • 条件等待: 等待特定条件满足
  • 轮询检查: 轮询检查状态变化
  • 超时处理: 处理超时情况

4. 工作流控制 ​

  • 流程循环: 控制流程循环执行
  • 重试机制: 实现重试机制
  • 批量操作: 执行批量操作
  • 条件执行: 基于条件执行

循环类型 ​

1. 条件循环 ​

基于条件判断的循环:

WHILE 条件满足:
    执行循环体
    更新循环变量
    检查中止条件

2. 计数循环 ​

基于循环次数的循环:

FOR i = 1 TO 最大次数:
    执行循环体
    更新循环变量
    检查中止条件

3. 混合循环 ​

同时使用条件和计数:

FOR i = 1 TO 最大次数:
    IF 条件满足:
        执行循环体
        更新循环变量
        检查中止条件
    ELSE:
        提前退出

最佳实践 ​

1. 循环设计 ​

  • 中止条件: 设计清晰的中止条件
  • 循环变量: 合理管理循环变量
  • 性能考虑: 考虑循环性能影响
  • 错误处理: 添加适当的错误处理

2. 条件配置 ​

  • 条件清晰: 使用清晰的条件逻辑
  • 覆盖完整: 确保覆盖所有情况
  • 性能优化: 优化条件判断性能
  • 可维护性: 保持条件易于维护

3. 变量管理 ​

  • 初始化: 正确初始化循环变量
  • 更新逻辑: 设计合理的变量更新逻辑
  • 类型安全: 确保变量类型正确
  • 作用域: 合理管理变量作用域

4. 错误处理 ​

  • 异常捕获: 捕获循环中的异常
  • 错误恢复: 提供错误恢复机制
  • 日志记录: 记录循环执行过程
  • 用户提示: 提供友好的错误提示

配置步骤 ​

1. 基础配置 ​

  1. 配置循环变量
  2. 设置循环终止条件
  3. 设置最大循环次数

2. 循环体配置 ​

  1. 在循环内添加节点
  2. 配置循环逻辑
  3. 设置变量更新

3. 条件配置 ​

  1. 配置终止条件
  2. 设置条件逻辑
  3. 验证条件正确性

4. 测试验证 ​

  1. 使用试运行功能测试
  2. 检查循环执行结果
  3. 验证终止条件

常见问题 ​

Q: 如何设置循环终止条件? ​

A: 可以设置多个条件,使用 AND/OR 逻辑关系,当条件满足时循环终止。

Q: 最大循环次数如何确定? ​

A: 根据业务需求和性能考虑设置,范围是 1-100 次。

Q: 循环变量如何管理? ​

A: 循环变量在循环过程中更新,循环结束时作为输出变量。

Q: 如何避免无限循环? ​

A: 设置合理的终止条件和最大循环次数,确保循环能够正常结束。

Q: 循环性能如何优化? ​

A: 优化循环体逻辑,减少不必要的操作,合理设置循环次数。

注意事项 ​

  1. 终止条件: 确保循环有明确的终止条件
  2. 性能考虑: 考虑循环对系统性能的影响
  3. 资源管理: 注意循环中的资源使用
  4. 错误处理: 添加适当的错误处理机制
  5. 日志记录: 记录循环执行过程便于调试