跳到主要内容

智能转换

这个组件曾被多次改名。 它的历史名称包括 Lambda FilterSmart Function

Smart Transform 组件使用 LLM 生成一个 Lambda 函数,用于根据自然语言指令过滤或转换结构化数据。 你必须把它连接到一个语言模型组件,该模型会基于 Instructions 参数中的自然语言说明生成函数。 随后,LLM 会用这个函数处理输入数据,并把结果以 Data 形式输出。

提示

请尽量使用简短、明确的说明,并聚焦于目标结果或具体操作,例如:Filter the data to only include items where the 'status' is 'active'。 通常建议控制在一句话以内,因为句号等结束标点可能会导致错误或产生不符合预期的行为。

如果你需要补充更多与 Lambda 函数本身不直接相关的背景信息,建议把这些内容放到 Language Model 组件的 Input 字段里,或者通过 Prompt Template 组件传入。

下面这个例子中,流程通过 API Request 组件调用 https://jsonplaceholder.typicode.com/users 接口,获取一份 JSON 数据并传给 Smart Transform。 然后,Smart Transform 会将数据和指令 extract emails 一起传给已连接的 Language Model 组件。 接着,LLM 会生成一个提取邮箱地址的过滤函数,并把筛选结果作为聊天输出返回。

A small flow using a Smart Transform component to extract data from an API response.

Smart Transform 参数

有些参数在可视化编辑器中默认处于隐藏状态。 你可以通过组件标题栏菜单中的 控件 来修改全部参数。

NameDisplay NameInfo
dataData输入参数。要通过 Lambda 函数过滤或转换的结构化数据。
llmLanguage Model输入参数。连接来自 Language Model 组件的 LanguageModel 输出。
filter_instructionInstructions输入参数。关于如何过滤或转换数据的自然语言指令。LLM 会根据这些指令生成 Lambda 函数。
sample_sizeSample Size输入参数。对于大型数据集,从头部和尾部抽样的字符数。仅当数据集长度达到或超过 max_size 时生效。默认:1000
max_sizeMax Size输入参数。用于判定数据集是否属于“大型数据集”的字符数阈值;一旦达到该值,就会按 sample_size 执行抽样。默认:30000