循环数组节点
循环数组节点
【循环数组】节点用于对数组变量中的每个元素依次执行相同的一组步骤,直到为所有元素都产出结果。
它本质上是一个“批处理器”:当上游输出为数组(如分段文本、文件列表、检索结果集等)时,可将每一项送入同一套子流程中逐个处理,最后统一输出结果数组。



何时使用
- 长文拆分处理:将长文先切成多个片段,再对每个片段翻译/校对/摘要,避免单次上下文过长或超出模型限制。
- 批量文件处理:对
Array[File]中每个文件执行文档提取、识别或分类。 - 检索结果重写/重排:对知识检索返回的分段逐条摘要、打分、去噪、重排。
- 批量调用外部接口:对一组 ID / URL / 任务参数逐个发起 HTTP 请求、聚合响应。
- 结构化生成拼装:对一组主题/要点逐条生成段落,最后合并为完整文档。
节点结构
循环数组节点由三个核心单元组成:
输入变量
- 仅接受 Array 类型(如
Array[string]、Array[object]、Array[file])。 - 若当前数据不是数组,请先使用“代码执行节点/参数提取节点/知识检索节点”等产出数组。
- 仅接受 Array 类型(如
循环子流程
- 在节点内部编排一段“针对单个元素”的处理链路(可包含 LLM、模板转换、文档提取、HTTP 请求、代码执行等节点)。
- 系统会为数组中的每个元素按相同流程运行一遍。
输出变量
- 固定输出为一个数组,类型取决于子流程的产出(如
Array[string]/Array[object]等)。 - 若需要得到字符串,请参见下文“将数组转换为文本”。
- 固定输出为一个数组,类型取决于子流程的产出(如
内置循环变量
在循环数组节点内部,可直接使用以下内置变量(名称可能在可视化界面展示为更友好的别名):
items(当前元素对象/值):每轮循环的输入条目index(number):从 0 开始的当前轮次索引
建议
典型用法:将 items 作为 LLM/模板输入,或用 index 为输出打标签/排序。
配置步骤(示例:长文逐段翻译)
准备数组输入
- 在「开始」节点获取长文本;
- 使用「代码执行」节点将长文切片为
Array[string]。
添加循环数组节点
- 选择
sections作为“输入变量”; - 在循环子流程内放入 LLM 节点,对
items执行翻译; - 可选:在子流程末尾加“直接回复节点”做流式中间输出(顺序模式下更稳妥,见并行说明)。
- 选择
产出结果
- 循环数组节点输出
Array[string](每个元素是对应片段的翻译结果)。 - 如需合并,请见“将数组转换为文本”。
- 循环数组节点输出


高级功能
1. 并行模式
开启并行可显著提升整体处理速度:
- 最大并行度:10(同一时间最多并行 10 个子任务)。
- 超出部分将队列等待前一批完成后继续执行。
注意
- 不推荐在并行模式下于子流程中放置:直接回复、变量赋值、外部工具状态读写 等对时序一致性/共享状态敏感的节点,以免出现竞态或乱序。
- 若必须使用,请确保其幂等且无共享副作用,或改为顺序模式。


2. 错误响应策略
针对单个元素处理失败时的行为,可在“错误响应方法”中选择:
- 错误时终止:一旦其中一个元素出错,立刻终止并返回错误。
- 忽略错误并继续:错误元素在输出中以
null占位,其他元素正常产出。- 例如输入
[1,2,3]→ 输出[result-1, null, result-3]
- 例如输入
- 移除错误输出:错误元素直接从结果中剔除,仅返回成功项。
- 例如输入
[1,2,3]→ 输出[result-1, result-3]
- 例如输入
选择策略时请考虑下游对结果长度的假设:
- 需要与输入一一对应:选择“忽略错误并继续”;
- 允许条目数减少:选择“移除错误输出”。
将数组转换为文本
循环数组的输出通常是 Array[string],若需要合并为一个字符串,可选择以下方式:
方式 A:代码执行节点
def main(articleSections: list) -> dict:
return {"result": "\n".join(articleSections)}方式 B:模板转换节点(Jinja)
{{ articleSections | join("\n") }}注意
若数组元素为对象,请先在模板/代码中选取并拼接需要的字段。
生成数组输入的常见方式
代码执行节点 :对字符串切分、解析列表/CSV、批量参数构造知识检索节点 :自然返回Array[Object]的命中分段参数提取器节点 :从 LLM 输出中抽取Array字段HTTP 请求节点 :解析外部接口返回列表工具节点 :返回文件列表、记录列表等
小结
循环数组节点让你用“一套流程”批量处理“多条数据”。通过顺序/并行、错误策略与结构化输出的合理搭配。 你可以在 AI Center 中构建高效、稳健、可扩展的批处理流水线:从长文分段翻译,到检索命中重写,再到批量文件解析与外部接口编排,都能优雅完成。
