作者:杨雨虹  历史版本:1  最后编辑:杨雨虹  更新时间:2025-06-04 13:50

概述

文件列表变量支持同时上传文档文件、图片、音频与视频文件等多种文件。应用使用者在上传文件时,所有文件都存储在同一个 Array[File] 数组类型变量内,不利于后续单独处理文件。 列表操作节点可以在数组变量内提取单独的元素,便于后续节点处理。

列表操作节点可以对文件的格式类型、文件名、大小等属性进行过滤与提取,将不同格式的文件传递给对应的处理节点,以实现对不同文件处理流的精确控制。
例如在一个应用中,允许用户同时上传文档文件和图片文件两种不同类型的文件。需要使用列表操作节点进行分拣,将不同的文件类型交由不同流程处理。

节点配置

  • 输入变量:列表操作节点仅接受Array[string]Array[number]Array[file]数据结构变量。
  • 过滤条件:处理输入变量中的数组,添加过滤条件。从数组中分拣所有满足条件的数组变量,可以理解为对变量的属性进行过滤。
  • 取第N项:可以在 1-20 中选值,目的是为了选中数组变量的第 n 项。
  • 取前N项:可以在 1-20 中选值,目的是为了选中数组变量的前 n 项。
  • 排序:支持根据文件属性进行排序,常用于配合输出变量中的 first_record 及 last_record 使用。
  • 输出变量:满足各项过滤条件的数组元素。

过滤条件

举例:文件中可能包含多重维度的属性,例如文件名、文件类型、文件大小等属性。过滤条件允许设置筛选条件,选择并提取数组变量中的特定文件。

支持提取以下变量:

  • type:文件类别,包含图片,文档,音频和视频类型。
  • size:文件大小。
  • name:文件名。
  • url:指的是通过 URL 上传的文件,可填写完整 URL 进行筛选。
  • extension:文件拓展名。
  • mime_type:MIME 类型是用来标识文件内容类型的标准化字符串。示例: “text/html” 表示 HTML 文档。
  • transfer_method:文件上传方式,分为本地上传或通过 URL 上传。

输出变量

过滤条件、排序和限制可以单独开启。如果同时开启,则返回符合所有条件的数组元素。

  • Result,过滤结果,数据类型为数组变量。若数组中仅包含 1 个文件,则输出变量仅包含 1 个数组元素;
  • first_record,筛选完的数组的首元素,即 result[0];
  • last_record,筛选完的数组的尾元素,即 result[array.length-1]。

示例说明

说明:在文件交互问答场景中,用户同时上传图片和文档,由于LLM不支持读取文档,因此需要列表操作节点将图片与文档类型文件进行分流。

  1. 开启文件上传功能

  2. 列表操作节点,分别过滤图片和文档

  3. 文档提取器节点,将过滤出的文档文件内容提取出来

  4. LLM节点,处理图片以及提取出的文档内容,并通过直接回复输出

  5. 预览效果: