Dify工作流节点-列表操作

点击上方蓝字关注我们 | AI时代 你不是一个旁观者

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

Array数据类型意味着该变量的实际值可能为 [1.mp3, 2.png, 3.doc],大语言模型(LLM)仅支持读取图片文件或文本内容等单一值作为输入变量,无法直接读取数组变量,通常需要配合列表操作节点一起使用。

节点功能

列表操作节点可以对文件的格式类型、文件名、大小等属性进行过滤与提取,将不同格式的文件传递给对应的处理节点,以实现对不同文件处理流的精确控制。

例如在一个应用中,允许用户同时上传文档文件和图片文件两种不同类型的文件。需要使用列表操作节点 进行分拣,将不同的文件类型交由不同流程处理。

picture.image

分流不同的文件类型

列表操作节点一般用于提取数组变量中的信息,通过设置条件将其转化为能够被下游节点所接受的变量类型。它的结构分为输入变量过滤条件排序(可选)取前 N 项(可选)输出变量

picture.image

列表操作节点

输入变量

列表操作节点仅接受以下数据结构变量:

  • Array[string]
  • Array[number]
  • Array[file]

过滤条件

处理输入变量中的数组,添加过滤条件。从数组中分拣所有满足条件的数组变量,可以理解为对变量的属性进行过滤。

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

支持提取以下变量:

  • type 文件类别,包含图片,文档,音频和视频类型
  • size 文件大小
  • name 文件名
  • url 指的是应用使用者通过 URL 上传的文件,可填写完整 URL 进行筛选
  • extension 文件拓展名
  • mime_type

MIME 类型是用来标识文件内容类型的标准化字符串。示例: "text/html" 表示 HTML 文档。

  • transfer_method

文件上传方式,分为本地上传或通过 URL 上传

排序

提供对于输入变量中数组的排序能力,支持根据文件属性进行排序。

  • 升序排列

默认排序选项,按照从小到大排序。对于字母和文本,按字母表顺序排列(A - Z)

  • 降序排列

由大到小排序,对于字母和文本,按字母表倒序排列(Z - A)

该选项常用于配合输出变量中的 first_record 及 last_record 使用。

取前 N 项

可以在 1-20 中选值,用途是为了选中数组变量的前 n 项。

输出变量

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

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

配置案例

在文件交互问答场景中,应用使用者可能会同时上传文档文件或图片文件。LLM 仅支持识别图片文件的能力,不支持读取文档文件。此时需要用到 列表操作 节点预处理文件变量的数组,将不同的文件类型并发送至对应的处理节点。编排步骤如下:

  1. 开启 Features 功能,并在文件类型中勾选 “图片” + “文档文件” 类型。
  2. 添加两个列表操作节点,在 “过滤” 条件中分别设置提取图片与文档变量。
  3. 提取文档文件变量,传递至 “文档提取器” 节点;提取图片文件变量,传递至 “LLM” 节点。
  4. 在末尾添加 “直接回复” 节点,填写 LLM 节点的输出变量。

picture.image

应用使用者同时上传文档文件和图片后,文档文件自动分流至文档提取器节点,图片文件自动分流至 LLM 节点以实现对于混合文件的共同处理。

往期工作流文章

如何使用dify应用工具箱?(官方学习手册)

如何使用dify创建聊天助手?(官方学习手册)

dify如何创建应用?(官方学习手册)

Dify工作流-条件分支

Dify中的变量

Dify工作流-问题分类节点

Dify工作流-知识检索节点

更多文章请到公众号主页查看

dify相关资源

如果对你有帮助,欢迎点赞收藏 备用。


回复 DSL 获取公众号DSL文件资源

回复 入群 获取二维码,我拉你入群

回复 tk 获取免费token资源

你又不打算赞赏,就点赞、在看吧picture.image

0
0
0
0
评论
未登录
暂无评论