可视化工作流/输入与输出参数
5.7 输入与输出参数(Workflow Inputs & Outputs)
在 Pop 的工作流体系中,“输入与输出”是决定一个工作流 如何接收数据 以及 如何返回结果 的最基础结构。
无论你要构建:
- AI 文案生成器
- 自动图表分析工具
- 知识库问答流程
- PDF 报告生成器
- 数据处理流水线
- 或完整的小应用(App)
你都需要理解 输入(Inputs) 与 输出(Outputs) 的工作方式。
🧩 一、什么是输入参数(Inputs)
输入参数代表“运行工作流时外部传入的数据”。
它们通常来自:
- 用户输入(文本 / 表单)
- 文件(PDF、Excel、图片、JSON)
- 运行参数(筛选条件、日期范围)
- 前端应用传入的动态参数
- 外部 API 调用传递的 payload
输入参数由 入口节点(Entry Node) 统一接收。
示例(在运行窗口中输入):
{
"title": "2024 年度工作总结",
"keywords": ["AI", "自动化", "效率"],
"pdf": <文件>
}
🔢 二、输入参数的类型
Pop 支持多种输入类型,常见包括:
| 类型 | 示例 | 用途 |
|---|---|---|
text |
字符串文本 | AI 问答、摘要、改写 |
json |
JSON 对象 / 数组 | 数据处理 / 图表生成 |
file |
PDF、Excel、图片 | 文档解析、报告生成 |
number |
数值 | 计算 / 循环控制 |
boolean |
true / false | 条件分支 |
array |
列表 | 批处理、循环节点 |
any |
任意类型 | 灵活场景 |
输入类型会决定节点是否能正确解析数据。
🛠 三、定义输入参数
在右侧属性面板中点击 “工作流设置” → “输入参数” 可以定义输入。
配置内容包括:
| 字段 | 说明 |
|---|---|
| 名称 (name) | 参数在脚本 / 节点引用时使用的变量名 |
| 标签 (label) | 在 UI 表单中显示的名称 |
| 类型 (type) | text / number / file / json / boolean |
| 默认值 | 用户未输入时的默认值 |
| 是否必填 | 决定是否必须提供 |
| 描述 | 参数的说明文字 |
示例 —— 定义一个日期范围参数:
name: date_range
type: text
required: true
default: ""
label: 日期范围
📥 四、在节点中使用输入参数
所有输入参数在入口节点统一收集,可以在任意节点中获取:
在 PSL 中使用:
const title = input.value.title;
const keywords = input.value.keywords;
在 AI Prompt 中使用:
标题:{{input.title}}
关键词:{{input.keywords}}
在 HTTP 请求节点使用:
GET /api/report?date={{input.date_range}}
输入参数可渗透整个工作流,是数据驱动工作流的核心。
📤 五、什么是输出参数(Outputs)
输出参数代表 工作流最终返回给用户的数据。
典型场景:
- 返回 AI 生成的文案
- 返回 PPT / PDF 文件下载链接
- 返回分析结果的 JSON
- 返回图表渲染所需的数据
- 返回表格数据(给布局管理器使用)
输出参数由 输出节点(Sink / ResultView) 决定。
例如:
{
"summary": "这是总结内容……",
"charts": [...],
"pdf_url": "https://..."
}
📦 六、定义输出参数
在工作流设置中,你可以定义:
| 项目 | 说明 |
|---|---|
| 输出名称 | 输出字段在应用中引用的键名 |
| 类型 | text / json / file 等 |
| 默认值 | 空文本、空对象、空数组 |
| 描述 | 说明用途 |
输出参数与页面布局绑定使用:
例如在布局中:
{{workflow.outputs.summary}}
{{workflow.outputs.chart_data}}
{{workflow.outputs.report_file}}
🔄 七、入口节点(Entry Node)与输出节点(Result / Sink)
工作流执行过程中:
- 入口节点(Entry)负责触发流程与传递输入
- 输出节点(ResultView / Sink)负责决定最终返回什么
例如:
[Entry] → [AI 总结] → [生成图表] → [ResultView]
或写入文件:
[Entry] → [Excel 生成] → [Sink(写入路径)]
🧠 八、输入输出在应用发布中的作用
当你点击“发布为应用”时:
- 输入参数 会自动渲染为表单
- 输出参数 可以绑定到页面布局(图表 / 表格 / 文本)
- 工作流成为一个“无代码应用”
例如生成报表应用:
用户界面 = 输入参数 + 布局组件
应用逻辑 = 工作流
最终结果 = 输出参数绑定 UI
📝 九、输入输出常见模式
模式 1:文本 → AI → 文本
input.text → llm → result-view
模式 2:文件 → 解析 → AI → 文件
input.file → pdf-toolbox → llm → ppt-generate → result-view
模式 3:JSON → 数据处理 → 图表
input.json → script → chart → layout
模式 4:多输入 → 汇总 → AI → 输出对象
input.multiple → transformer → llm → dictionary → result
🎯 十、小结
输入与输出参数是 Pop 工作流的“入口”和“出口”,决定了:
- 工作流如何获得外部数据
- 工作流最终将结果返回到哪里
- 应用发布时表单与 UI 组件如何绑定
- 节点之间的数据是如何被串联的
掌握输入输出机制,你就能构建更加灵活且可复用的工作流。