Appearance
工作流概述
工作流用于把多个节点按照确定的执行顺序连接起来,完成一项包含多个步骤的任务。例如,接收入院表单图片后,可以依次调用视觉模型识别内容、使用代码整理字段,最后返回结构化结果。
工作流管理位于 基础服务 → 组件中心 → 工作流管理。
一、什么时候使用工作流
当任务符合以下一种或多种情况时,适合使用工作流:
- 处理步骤明确,并且需要按照固定顺序执行;
- 需要在不同条件下进入不同分支;
- 需要循环或批量处理一组数据;
- 需要组合模型、知识库、工具、HTTP 接口或代码;
- 需要把一段处理逻辑封装后交给多个应用复用;
- 需要明确控制每一步的输入、输出和异常处理。
如果任务只是让模型根据一段提示词完成一次生成,不需要分支、循环、外部能力或严格的数据处理,直接在智能应用中配置模型和提示词通常更简单。
二、工作流怎样运行
理解工作流需要同时区分两件事:
- 执行顺序:节点之间的连线决定先运行谁、后运行谁。没有连接到主流程的节点不会执行。
- 数据传递:上游节点产生输出,下游节点通过变量引用读取这些输出。仅建立连线不会自动完成变量映射。
每个工作流都包含固定的 开始 和 结束 节点:
- 开始节点定义调用方必须提供哪些输入;
- 中间节点负责处理、判断、查询或调用外部能力;
- 结束节点定义工作流最终向调用方返回什么。
因此,开始节点和结束节点共同构成工作流的“输入输出契约”。工作流被应用、API 或其他工作流调用时,调用方需要按照这份契约传入数据,也只能获得结束节点定义的结果。
三、工作流与其他能力的关系
| 能力 | 主要作用 | 与工作流的关系 |
|---|---|---|
| 智能应用 | 面向最终用户提供对话或生成服务 | 可以调用已发布的工作流完成具体任务 |
| 工作流 | 按确定步骤处理输入并返回结果 | 可以被应用或其他工作流复用 |
| 工具 | 调用插件、MCP 或三方服务中的单项能力 | 可以作为工具节点加入工作流 |
| 知识库 | 保存并检索业务资料 | 可以通过知识库检索节点调用 |
| 技能 | 封装可复用的任务方法和业务能力 | 主要由智能体按需使用,不等同于固定流程 |
工作流的优势是过程可控、步骤清晰;智能体的优势是能够根据上下文自主判断下一步。业务步骤固定、需要稳定重复执行时优先考虑工作流;任务路径不固定、需要模型自主决策时更适合智能体。
四、业务工作流与通用工作流
创建工作流时需要选择工作流类型。类型用于表达工作流的使用范围和管理定位:
- 业务工作流:面向明确的业务任务,例如患者信息核验、报告结构化或随访数据整理。
- 通用工作流:封装与具体业务关系较弱、可以跨场景复用的处理能力,例如文本清洗、格式转换或通用接口查询。
类型不会代替具体的节点配置。选择时重点判断它是“完成某项业务”,还是“提供可复用的基础处理能力”。
五、从创建到复用
一个工作流通常经历以下过程:
- 创建:填写名称、类型和描述;
- 编排:添加节点、建立连线并配置变量引用;
- 检查:解决检查清单中的必填项和引用错误;
- 调试:先运行关键节点,再试运行完整流程;
- 发布:将当前草稿生成可调用的正式版本;
- 复用:在智能应用、其他工作流或 API 中调用;
- 迭代:修改草稿、重新测试并再次发布。
自动保存只保存当前草稿,不会让修改自动进入已经发布的版本。修改完成后,需要重新发布才能让调用方使用新配置。
六、推荐阅读顺序
第一次使用工作流时,建议按照以下顺序阅读:
