跳到主要内容

解析器 (Parser)

解析器 (Parser) 组件使用模板或直接字符串化从结构化数据(DataFrameData)中提取文本。 输出是一个包含解析文本的 Message(消息)。

这是一个用于流程中数据提取和处理的多功能组件。 有关流程中 解析器 组件的示例,请参阅以下内容:

使用解析器组件从结构化输出组件中提取文本的流程。

解析模式

解析器 组件有两种模式:解析器 (Parser)字符串化 (Stringify)

解析器 模式下,您可以为文本输出创建一个模板,其中可以包含字面字符串和用于提取键的变量。

在模板的任何位置使用花括号来定义变量。 变量必须与 DataFrameData 输入中的键匹配,例如列名。 例如,{name} 提取 name 键的值。 有关 DataFrameData 对象的内容和结构的更多信息,请参阅 Langflow 数据类型

If your template includes literal text and variables, you can use double curly braces to escape literal curly braces in the template and prevent interpretation of that text as a variable. For example: This is a template with {{literal text in curly braces}} and a {variable}.

当流程运行时,解析器 组件会遍历输入,为每个解析的项目生成一个 Message。 例如,解析 DataFrame 会为每一行创建一个 Message,并填充该行的唯一值。

员工摘要模板示例

此示例模板将员工数据提取为关于员工入职日期和当前角色的自然语言摘要:


_10
{employee_first_name} {employee_last_name} 入职于 {start_date}。
_10
他们目前的职位是 {job_title} ({grade})。

生成的 Message 输出会将变量替换为相应的提取值。 例如:


_10
Renlo Kai 入职于 11-July-2017。
_10
他们目前的职位是 Software Engineer (Principal)。

员工档案模板示例

此示例模板使用 Markdown 语法和提取的员工数据来创建员工档案:


_10
# 员工档案
_10
## 个人信息
_10
- **姓名:** {name}
_10
- **ID:** {id}
_10
- **电子邮件:** {email}

当流程运行时,解析器 组件会遍历 DataFrame 的每一行,使用适当的提取值填充模板的变量。 每行生成的文本都将作为 Message 输出。

以下参数在 解析器 模式下可用。

Some parameters are hidden by default in the visual editor. You can modify all parameters through the Controls in the component's header menu.

名称显示名称信息
input_data数据或数据框 (Data or DataFrame)输入参数。要解析的 DataDataFrame 输入。
pattern模板 (Template)输入参数。使用纯文本和键变量 ({KEY_NAME}) 的格式化模板。有关更多信息,请参阅前面的示例。
sep分隔符 (Separator)输入参数。定义行或行分隔符的字符串。默认值:\n(换行符)。
clean_data清理数据 (Clean Data)是否删除 DataFrameData 输入的每个单元格或键中的空行和空行。默认值:启用 (true)

测试和排除解析文本故障

要测试 解析器 组件,请单击 运行组件,然后单击 检查输出 以查看带有解析文本的 Message 输出。 如果您想在 游乐场 (Playground) 中查看输出,还可以连接 聊天输出 (Chat Output) 组件。

如果来自 解析器 组件的 Message 输出包含空值或意外值,则可能是输入与解析模式之间的映射错误、输入包含空值,或者输入不适合纯文本提取。

例如,假设您使用以下模板解析 DataFrame


_10
{employee_first_name} {employee_last_name} 是一名 {job_title} ({grade})。

如果 employee_first_name 为空且 gradenull,解析某一行可能会得到以下 Message


_10
Smith 是一名 Software Engineer (null)。

要排除缺失或意外值的故障,您可以执行以下操作:

  • 确保模板中的变量映射到传入 DataDataFrame 中的键。 要查看直接传递给 解析器 组件的数据,请在向 解析器 组件发送数据的组件上单击 检查输出

  • 检查源数据是否存在缺失或不正确的值。 有几种方法可以解决这些不一致问题:

Search