Skip to content

数据加载节点

什么是数据加载节点?

数据加载节点是一个用于从持久化数据库中读取之前存储的数据的工具。它就像是一个智能检索员,能够根据您提供的"数据键",快速找到并取出之前保存在持久化数据库中的信息,供工作流中的其他节点使用。

图片说明:

数据加载节点界面主要由查询条件区域组成,包括作用域选择、数据键输入框等关键元素。用户可以通过配置这些参数从持久化数据库中检索出之前存储的数据。 数据加载节点

为什么需要数据加载节点?

在智能工作流中,常常需要在不同时间或不同会话之间传递和使用数据。例如:

  • 记住用户的偏好设置,下次对话时直接使用
  • 存储上次交互的关键信息,以便后续处理
  • 保存业务数据,允许在未来任何时候检索使用 数据加载节点正是为解决这一需求而设计的,它让您可以方便地检索出之前存储的任何信息,建立起工作流的"长期记忆"能力,使 AI 助理拥有持久化的数据访问能力。

适用场景

数据加载节点适用于以下场景:

  1. 用户设置记忆:读取用户的偏好设置、使用习惯等信息,提供个性化服务
  2. 业务流程连续性:在多次对话之间保持业务连续性,如读取上次未完成的订单信息
  3. 知识检索:从持久化存储中读取之前保存的专业知识或规则
  4. 用户身份识别:读取用户的身份信息,用于后续的权限控制和个性化服务

节点参数说明

输入参数

参数名称参数描述是否必填默认值说明
作用域数据的存储范围当前话题确定从哪个范围内查找数据,可选范围包括:当前话题、全局等
数据键要读取的数据的标识符用于查找数据的唯一标识,支持使用变量,如"@用户 ID"

输出参数

数据加载节点成功执行后,会输出以下变量,可在后续节点中使用:

输出变量名数据类型说明
数据值(value)字符串/数组根据存储时的数据类型,可能是简单的文本字符串,也可能是复杂的 JSON 对象或数组

使用说明

基本配置步骤

  1. 选择作用域:从下拉菜单中选择要查询的数据作用域,通常有"当前话题"、"当前用户"等选项
  2. 设置数据键:在"数据键"输入框中输入要读取的数据的标识符
    1. 可以直接输入文本,如"用户偏好"
    2. 也可以点击"@"按钮,从变量列表中选择一个变量作为数据键
  3. 连接后续节点:将数据加载节点的输出连接到需要使用该数据的后续节点

进阶技巧

  1. 动态数据键:当您需要根据不同情况读取不同的数据时,可以使用变量作为数据键。例如,您可以使用"@用户 ID"作为数据键,系统会根据当前用户 ID 自动读取对应的数据。
  2. 结合条件判断:在读取数据后,可以使用条件判断节点检查数据是否存在、是否有效,从而构建更复杂的逻辑流程。
  3. 数据转换:如果读取的是 JSON 格式数据,可以使用代码节点进行解析和转换,提取其中的特定字段。

注意事项

数据不存在的处理

当要读取的数据键在数据库中不存在时,数据加载节点会输出一个空值。在后续节点中,建议先判断该值是否为空,避免因数据不存在导致流程出错。

数据过期问题

如果数据在存储时设置了过期时间,超过该时间后数据会自动失效。请确保在数据可能过期的情况下有适当的备选处理方案。

数据类型一致性

数据加载节点会返回与存储时相同类型的数据。例如,如果存储的是 JSON 对象,加载时也会获得 JSON 对象。请确保后续节点能正确处理该类型的数据。

常见问题

问题 1:为什么我读取不到之前存储的数据?

可能原因

  • 数据键名称错误或拼写不一致
  • 作用域选择错误(例如数据存储在"全局"作用域,但读取时选择了"当前话题")
  • 数据已过期(如果存储时设置了过期时间)
  • 数据可能被其他流程删除或覆盖 解决方法
  • 确认数据键的名称是否与存储时完全一致
  • 检查作用域是否与存储时相同
  • 如果怀疑数据已过期,可以先重新存储一次
  • 在数据加载节点后添加日志或调试节点,输出加载的结果进行检查

问题 2:如何判断数据是否成功加载?

解决方法

在数据加载节点后添加条件判断节点,检查输出的 value 是否为空。如果不为空,则说明成功加载了数据;如果为空,则可能是数据不存在或已过期。

常见搭配节点

节点类型搭配原因
条件判断节点读取数据后进行判断,决定后续流程
代码执行节点对读取的复杂数据进行处理和转换
大模型调用节点将读取的数据作为上下文传递给大模型,提升模型回答的相关性
数据存储节点先使用数据存储节点保存数据,后续使用数据加载节点读取

基于 Apache 2.0 许可发布