工作流上下文是执行过程中的核心数据载体,负责节点间的数据传递和状态管理,确保整个流程的数据一致性和可追溯性。
上下文机制概述
在LangChat Pro中,每个工作流执行实例都维护一个独立的执行上下文,该上下文承载了整个流程执行过程中的所有数据状态和变量信息。上下文生命周期
核心特性:- 数据隔离:每个执行实例拥有独立的上下文空间
- 状态传递:节点间通过上下文进行数据流转
- 变量作用域:支持全局变量和局部变量管理
- 类型安全:强类型变量定义和运行时验证
变量引用系统
LangChat Pro工作流采用智能变量引用组件,提供直观的变量选择和文本编辑功能,极大简化了动态内容的配置过程。智能变量选择器
智能变量选择器是LangChat Pro的核心UI组件,专为工作流变量引用而设计,支持动态变量选择和静态文本编辑的混合输入模式。 组件特性:- 自动识别可用变量范围
- 支持变量和文本的混合输入
- 提供实时变量预览功能
- 确保类型安全和语法正确性
变量选择机制
点击变量引用组件后,系统会自动弹出变量选择面板,展示当前节点的所有可用变量: 可用变量来源:- 上游节点的输出变量
- 全局环境变量
- 系统内置变量
- 开始节点初始化变量
编辑操作
删除变量引用:- 鼠标点击目标变量
- 按
Delete键删除引用
- 选中输入框
- 直接输入文本内容
变量引用组件支持变量和文本的自由组合,可以创建复杂的动态内容模板。
变量类型体系
工作流上下文中的变量按照作用域和来源分为四个主要类别,每个类别都有其特定的用途和生命周期。系统内置变量
系统内置变量由LangChat Pro平台自动提供,包含执行环境的关键信息: 核心内置变量:conversation_id:当前会话的唯一标识workflow_id:工作流实例的唯一标识app_id:应用实例的唯一标识sys.message:用户输入的消息内容sys.timestamp:执行时间戳sys.user_id:当前用户标识
sys.message变量记录用户每次输入的消息内容,是大多数工作流逻辑的起点。
系统内置变量在每次执行时自动注入,无需手动配置,确保关键上下文信息的可用性。
全局环境变量
全局环境变量是应用级配置变量,在工作流应用配置阶段定义,每次执行时自动注入到上下文中。 核心特性:- 应用级作用域:在整个工作流应用中全局可用
- 配置时定义:在应用配置阶段设置,运行时不可修改
- 类型支持:支持字符串、数字、布尔值和JSON对象
- 持久化存储:配置信息保存在应用元数据中
使用场景:
- API密钥和认证信息
- 业务配置参数
- 外部服务地址
- 业务规则常量
全局环境变量在每次工作流执行开始时自动注入,所有节点都可以直接引用这些变量。
开始节点变量
开始节点变量是流程级初始化变量,在工作流启动时设置,为整个流程提供初始数据上下文。 功能特性:- 流程级作用域:仅在当前执行实例中有效
- 初始化时设置:在流程启动时定义初始值
- 动态注入:支持根据用户输入或外部数据动态设置
- 类型灵活性:支持复杂数据结构的初始化
与全局环境变量的区别:
- 作用域:开始节点变量仅限当前执行实例,全局变量跨所有执行实例
- 生命周期:开始节点变量随执行实例创建和销毁,全局变量持久存在
- 用途:开始节点变量用于流程初始化,全局变量用于应用级配置
开始节点变量和全局环境变量在功能上类似,但作用域和生命周期不同,可根据具体需求选择使用。
节点输出变量
节点输出变量是工作流数据流转的核心机制,每个处理节点通过输出变量将计算结果传递给下游节点。 工作机制:- 数据封装:节点将处理结果封装成结构化变量
- 上下文注入:输出变量自动注入到执行上下文中
- 作用域限制:仅对当前节点之后的下游节点可见
- 类型保持:保持原始数据类型和结构完整性
核心价值:
- 数据分离:处理逻辑与输出逻辑分离,提高节点复用性
- 灵活组合:支持复杂的多节点数据流转和处理链
- 类型安全:确保节点间数据传递的类型一致性

