节点功能
变量转换节点属于变量处理类节点,用于对变量进行值转换与类型转换两类处理,常用于需要动态处理和转换输入数据的场景。
值转换:对变量的值与格式进行处理,支持 JSON 字符串的序列化与反序列化、列表数据的取值与排序、字符串变量的拼接与分隔。
类型转换:对变量的数据类型进行声明变更,用于调整变量在下游节点中的数据类型。


操作说明
转换方式
节点的转换方式类别分为值转换和类型转换两类,默认选中值转换。
值转换
支持对 JSON、列表和字符串进行格式转换,不同类型的转换方式说明如下:
类型 | 方式 | 说明 |
JSON | JSON 序列化 | 指将程序中的数据结构或对象转换成 JSON 格式的过程。支持任意类型的变量,仅支持选择一个变量。 |
| JSON 反序列化 | 指将 JSON 格式的字符串转换回程序中的数据结构或对象的过程。仅支持 string 类型的变量,仅支持选择一个变量。 |
列表 | 列表取值 | 支持从列表数据中截断取值,取值范围支持选取前 N 项、第 N 项和后 N 项。仅支持对一个 array 类型的变量(不包括 array<array>)进行取值。 |
| 列表排序 | 支持对列表数据进行排序,排序规则支持降序排序和升序排序两种。仅支持对一个 array 类型的变量(不包括 array<array>)进行排序。 |
字符串 | 拼接字符串 | 将多个变量拼接成一个字符串。支持选择任意类型的变量。支持选择多个变量。 |
| 分隔字符串 | 将变量按照特定的分隔符进行拆分,分隔符包括换行(\\n)、制表符(\\t)、中文逗号(,)、英文逗号(,)、中文句号(。)、英文句号(.)、中文分号(;)、英文分号(;)、空格( ),也支持自定义分隔符。仅支持 string 类变量,仅支持选择一个变量。 |
类型转换
对变量的数据类型进行声明变更,不改变变量本身的内容。转换变量与输出变量一一对应,需逐一配置对应输出变量的目标类型。
转换变量
进行格式转换的变量,其中转换方式为“拼接字符串”支持用户添加多个转换变量,其他转换方式仅支持一个转换变量,故不支持用户添加。
进行格式转换的变量。不同转换方式下的添加规则如下:
值转换:转换方式为「拼接字符串」时支持添加多个转换变量,其他转换方式仅支持一个转换变量,不支持添加。
类型转换:支持添加多个转换变量,最多 20 个;每条转换变量仅支持引用选择一个变量。转换变量的类型存在以下限制:
不支持选择 object 类型;
array 类型不支持选择 array<array> 与 array<object>。
修改或删除已配置的转换变量时,若输出变量类型不再满足类型匹配限制,对应的输出变量类型将被置空。
输出变量
经该节点处理后的输出变量。
值转换
当转换类型为 JSON 和字符串时,默认输出格式转换后的结果,以及运行时报错信息 Error(数据类型为 object,正常运行时该字段为空)。不支持用户手动新增。


当转换类型为列表时,默认输出取值后的列表、数组的第一项、最后一项,以及运行时报错信息 Error(数据类型为 object,正常运行时该字段为空)。不支持用户手动新增。


类型转换
不支持默认输出,需用户手动配置添加输出变量,转换变量与输出变量一一对应。输出变量的目标类型存在以下限制:
转换变量为 int、flt、bool、str、file 类型时,对应的输出变量目标类型仅允许在以上类型中选择;
转换变量为 array 类型时,对应的输出变量目标类型仅允许选择 array 类型。
同时默认输出运行时报错信息 Error(数据类型为 object,包含 FailCode、FailMessage,正常运行时该字段为空)。调试运行时校验转换变量与输出变量的数量,若不一致则报错;若源类型与目标类型在运行时不可兼容转换(如 file 转 int),对应的输出变量返回空值,Error 字段记录报错信息,不中断工作流。


应用示例
JSON 序列化场景
将字符串转换为 JSON 序列,变量转换节点配置如下:


列表取值场景
仅取列表的第1项,变量转换节点配置如下:


字符串拼接场景
将用户输入的姓和名拼接输出,变量转换节点配置如下:


类型转换场景
将 string 类型的 URL 转换为图片 img 类型,用于后续传入多模态模型进行处理。变量转换节点配置如下:

