Y-Agent Studio

分批处理节点

分批处理节点的详细配置和说明

什么是分批处理节点?

分批处理是一个可以将数组进行拆分处理的节点。

每批大小

假设由5条数据,需要将这5条数据,每次取2条数据,进行处理。那么就可以使用分批处理节点。

拆分后的结果如下:2+2+1

上面的例子里,2 代表每批大小,最后1条会被当单独一分批处理。所以一共有3批数据。

并发数

并发数代表同时处理的批次数量。因为有的接口有并发限制,为了防止超过限制,可以设置并发数。

如果需要每批数据,按顺序处理,可以将并发数设置为1。

如果需要一起处理,可以将并发数设置为大于等于总批次数量的数值。例如这里可以设置为3,这样就可以同时处理3批数据。

分批处理节点的具体用法

在上面我们已经学会了如何将数据拆分成批次,那么如何使用这些数据呢?

其实分批处理内可以创建流程,和流程图的使用方式一样。

只不过是这里的开始节点没有任何入参。

作为默认入参,有系统保留的关键字 batch, 代表当前批次的数据。

以上面的例子为例,假设我们有一个分批处理节点,并设置批次大小为2。

那么在分批处理节点内,我们可以使用 {{ batch }} 来获取当前批次的数据。

如果当前批次是 [1, 2],那么 {{ batch }} 就会返回 [1, 2]。可以通过 {% for doc in batch.item %} 来遍历当前批次的数据。

具体例子如下:

# 假设这里有5条数据
data = [
    {"id":1,"title":"标题1","content":"内容1"},
    {"id":2,"title":"标题2","content":"内容2"},
    {"id":3,"title":"标题3","content":"内容3"},
    {"id":4,"title":"标题4","content":"内容4"},
    {"id":5,"title":"标题5","content":"内容5"}
]

假设通过分批处理节点拆分数据,设置批次大小为2


# 以下提示词代码用来取出每批里面的每个item的json数据
{% for doc in batch.item %}
doc
{% endfor %}

# 以下提示词代码用来取出每批里面的每个item的值
{% for doc in batch.item %}
编号:{{doc.id}}
标题:{{doc.title}}
内容:{{doc.content}}
{% endfor %}

How is this guide?

最后更新

京ICP备2025145222号-1     © Copyright 向量感知(北京)智能科技有限公司 YAFO 2025.