变量聚合器

  • 定义:变量聚合节点是工作流程中的关键节点,用于将多路分支的变量聚合为一个变量,实现下游节点的统一配置。它可整合不同分支的输出结果,无论哪个分支被执行,其结果都能通过一个统一的变量来引用和访问,避免下游节点重复定义。
  • 使用场景
    • 问题分类后的多路聚合:在未添加变量聚合时,分类1和分类2分支经不同的知识库检索后,需要分别定义下游的LLM和直接回复节点,容易造成重复配置。而添加变量聚合后,可将两个知识检索节点的输出聚合为一个变量,简化数据流管理。
    • IF/ELSE条件分支后的多路聚合:在条件分支场景下,不同分支的输出结果可通过变量聚合节点整合,后续节点只需处理聚合后的变量,无需针对每个分支单独配置。
  • 格式要求
    • 支持聚合多种数据类型,包括字符串(String)、数字(Number)、文件(File)、对象(Object)以及数组(Array)。
    • 只能聚合同一种数据类型的变量。例如,若第一个添加至变量聚合节点内的变量数据格式为String,后续连线时会自动过滤可添加变量为String类型。
    • 聚合分组:开启聚合分组后,可聚合多组变量,但各组内聚合时要求同一种数据类型。
  • 示例
    • 创建一个chatFlow
      在这里插入图片描述

    • 完整工作流(没有聚合变量的)
      在这里插入图片描述

    • 完整工作流(使用聚合变量的)
      在这里插入图片描述

  • 使用聚合变量前后对比:
    • 两个分支,每次只有一个分支执行并返回结果
    • 没有聚合变量需要有两个回复
    • 使用聚合变量,将LLM和LLM2的结果进行聚合成一个变量,即将有结果的值赋给聚合变量,最后输出聚合变量的结果即可。

模板转换

  • 定义:模板节点借助Jinja2的Python模板语言,可在工作流内灵活地进行数据转换、文本处理等操作。
  • 使用场景
    • 文本拼接:可将多个输入(如文章标题、介绍、内容)拼接为完整文本。
    • 结构化输出:例如将知识检索节点获取的信息及其相关的元数据,整理成一个结构化的Markdown格式,也可用于JSON转换等,满足后续步骤对数据格式的需求。
    • HTML渲染:支持渲染HTML表单,可用于创建登录表单等页面元素。
  • 示例
    • 创建一个WORKFLOW
      在这里插入图片描述

    • 完整工作流
      在这里插入图片描述

    • 文本拼接
      在这里插入图片描述

总结

  • 变量聚合:适用于多路分支场景,可对多个变量进行聚合,减少重复节点,使页面布局更简洁,便于管理和维护工作流。
  • 模板转换:借助Jinja2脚本语言,可对内容进行拼接、格式转换等操作,满足多种数据处理和展示需求,提升工作流的灵活性和效率。

参考文档

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐