5.1 工作流概念(Workflow Overview)
Pop 的可视化工作流(Workflow)是一个用于 自动化多步骤任务、组织多节点处理逻辑、构建应用程序 的核心系统。
它让用户无需编写复杂代码,就能通过拖拽节点、配置参数和连接流程,构建从简单到极其复杂的自动化逻辑。
工作流适用于:
- AI 文档处理
- 数据转换
- 图表生成
- 知识库维护
- 项目自动化
- 企业内部流程
- 多模型协作与推理
- 任意需要“多步骤串联”的场景
本章节将带你快速理解 Pop 工作流是什么、为什么需要它、它由哪些部分构成。
🧩 一、什么是工作流?
工作流(Workflow)是由多个节点(Node)组成的可视化流程图,每个节点承担一个功能,通过连接线将节点的输出作为下一个节点的输入,从而形成一个完整的流程。
示例结构:
开始 → 上传文档 → 分段 → AI 总结 → 生成报告 → 结束
Pop 会自动执行这些步骤,并把数据在节点之间传递。
🧱 二、工作流的核心组成
一个完整的 Pop 工作流由以下几部分构成:
工作流(Workflow)
├── 节点(Nodes)
├── 连线(Edges)
├── 输入参数(Inputs)
├── 输出参数(Outputs)
├── 全局变量(Variables)
├── 工作流运行容器(Runtime Engine)
└── 布局(如工作流发布成应用)
下面逐项解释。
🔶 1. 节点(Node)
节点是工作流的最小执行单位。
每个节点完成一个功能,例如:
- 调用 AI 模型
- 生成 PDF
- 读取 Excel
- 执行 HTTP 请求
- 写入数据库
- 条件判断
- 循环遍历
- 格式化数据
- 调用本地或远程的工具(MCP)
节点有输入(inputs)、输出(outputs)、配置(config)三类属性。
🔁 2. 连线(Edge)
连线连接两个节点:
节点 A(输出) → 节点 B(输入)
它决定流程执行顺序与数据传递方式。
连接行为包括:
- 数据流:数据从一个节点传递到下一个节点
- 控制流:决定流程走向(如条件节点的 true/false 分支)
🧮 3. 输入参数(Workflow Inputs)
工作流可以定义“入口参数”,例如:
- 用户提供的内容
- 运行时的变量
- 应用运行时传入的参数
- 表单输入
这些参数可以在节点中引用。
📤 4. 输出参数(Workflow Outputs)
工作流结束后可以返回:
- AI 的最终结果
- 文件链接
- 数据对象
- 图表 JSON
- 模型推理结果等
这些输出可以用于:
- 发布应用
- 在布局管理器中绘制图表
- 写入文件
- 作为下一次调用的输入
🔧 5. 全局变量(Workflow Variables)
变量存储着工作流运行过程中的数据:
- 系统变量
- 节点输出缓存
- 用户定义的变量
- PSL 运行中产生的中间数据
变量可以在整个工作流中被后续节点访问。
🏃 6. 工作流运行容器(Runtime Engine)
Pop 内置了强大的运行引擎,用于:
- 串行/并行执行节点
- 管理数据传递
- 捕获错误
- 控制重试与补偿
- 存储运行上下文
- 处理多模型并发执行
这是工作流可靠运行的基础。
🖼 7. 工作流布局(Layout)
当一个工作流被“发布为应用”时,需要绑定一个前端布局。
布局定义:
- 页面结构
- 组件(图表、文本、表格、输入框、按钮等)
- 数据绑定(工作流输出 → UI 展示)
这使得即使不会写前端代码,也能构建可交互的小应用。
🎯 三、为什么要使用工作流?
✔ 将复杂过程可视化
降低理解与开发成本。
✔ 多步骤的自动化
减少重复操作,提高效率。
✔ 模型协作
将多个 AI 模型组合起来产生更强大的推理能力。
✔ 业务流程落地
例如:自动生成报告 / 自动客服流程 / 数据处理流水线。
✔ 模块化、可复用
节点和子工作流可被无限复用。
🧠 四、工作流与编程语言的关系
工作流 ≠ 代码
工作流 = 逻辑的可视化表达
对于复杂逻辑,Pop 提供 PSL(Pop Script Language)脚本,用于实现:
- 数组处理
- 字符串操作
- 数据转换
- 分支逻辑
- 复杂控制结构
工作流与 PSL 互补,帮助用户实现完整自动化能力。
📌 五、小结
Pop 工作流是一套完整的可视化自动化引擎,包含:
| 功能 | 描述 |
|---|---|
| 节点系统 | 完成不同任务 |
| 连线系统 | 控制流程与数据传递 |
| 输入输出 | 定义入口与结果 |
| 变量系统 | 管理运行状态 |
| 布局系统 | 支持发布为应用 |
| PSL 脚本 | 提供复杂逻辑支持 |