前言
工作流是指一系列相互关联的步骤或任务,用于完成特定的业务过程或项目。它定义了任务的顺序、执行者以及相关的条件和规则,以确保流程的顺利进行和最终目标的达成。本章将介绍扣子工作流的分类、解决的问题、逻辑结构、常见节点,并结合示例演示扣子工作流的用法。
一、工作流逻辑结构和常见节点
1. 扣子工作流的逻辑结构
简单来说,扣子工作流是一个有唯一输入和唯一输出的有向无环图(DAG)。其核心构成是一系列按顺序连接的功能节点。

- 节点:是工作流中具有特定功能的独立模块,代表一个独立的步骤或逻辑。每个节点都负责处理数据、执行任务,并具备明确的输入和输出接口。
- 固定节点:每个工作流都必须且唯一地包含一个开始节点和一个结束节点。
- 开始节点:定义工作流的输入参数,是流程的起点。它默认包含一个
input参数,用于接收用户的原始输入。 - 结束节点:定义工作流的输出结果,是流程的终点。它支持以返回变量或返回文本两种方式输出结果。
- 开始节点:定义工作流的输入参数,是流程的起点。它默认包含一个
- 节点连接:通过将一个节点的输出,引用为另一个节点的输入,可以将不同的节点像链条一样连接起来,形成数据流动和处理的操作链。例如,大模型节点的输出可以作为代码节点的输入进行进一步加工。
- 设计哲学:构建工作流就像'搭积木'。将一个复杂任务分解为多个子任务,每个子任务由一个节点(积木)完成,再通过数据流(连接方式)将这些节点有序组合,最终形成一个完整的功能(形状)。
2. 扣子工作流的常见节点
节点是构建工作流的基础单元。扣子平台提供了丰富类型的节点,每个都有其特定的功能和适用场景。了解这些节点是高效搭建工作流的前提。
2.1 插件节点
- 功能:在工作流中调用已集成的插件工具,实现特定功能。
- 作用与场景:快速扩展工作流能力边界。当需要联网搜索、查询天气、处理图片等现有插件已提供的功能时,直接使用插件节点可以极大节省开发时间。如果官方插件无法满足需求,开发者还可以创建自定义插件接入。
2.2 大模型节点
- 功能:调用选定的大语言模型(LLM),根据输入和提示词生成文本输出。
- 作用与场景:为工作流注入'智能',处理需要理解、生成、总结或推理自然语言的任务。其输出质量高度依赖所选模型的能力。基础版账号可使用有限的模型,而专业版账号可以接入如 DeepSeek、火山方舟平台上的豆包系列等更多高性能模型。通过配置系统提示词和用户提示词,可以精准控制模型的角色与回复风格。
2.3 代码节点
- 功能:执行一段自定义的 Python 或 JavaScript 代码。
- 作用与场景:实现现有节点无法提供的特定逻辑、复杂算法、数据格式转换,或与外部 API/系统进行集成。当工作流需要精确计算、复杂数据处理或调用特殊库时,代码节点提供了最高的灵活性。
2.4 知识库检索节点
- 功能:根据查询条件(Query),从指定的知识库中召回最匹配的文本片段。
- 作用与场景:为工作流提供精准的支持,有效解决大模型在专业问题上可能存在的'幻觉'或知识陈旧问题。广泛应用于智能问答、企业知识检索、智能客服等系统。


