扣子(Coze)的工作流到底怎么用?
工作流是搭建Bot智能体绕不开的一项技能——稍微复杂一点、稍微实用一点的Bot,几乎都离不开它。这篇文章从工作流的基本概念讲起,再拆解扣子工作流的结构,最后用一个完整示例收尾。目标是让小白也能一次搞明白,而不是被各种概念绕晕。

全文分成六个部分:工作流简介 → 能解决什么问题 → 逻辑结构 → 组成模块 → 动手示例 → 总结。咱们一步步来。
1. 扣子工作流简介
先说说最基本的问题:到底什么是工作流?
工作流(Workflow)
扣子的工作流跟传统工作流长得像,但骨子里有点不一样。传统的工作流可以手动执行,也可以自动执行,或者混合着来。而扣子的工作流是纯自动化的——它把一系列步骤串起来,Bot可以同时挂载多个工作流,根据用户的行为自动选择并执行合适的那个。
扣子工作流最吸引人的地方在于:你可以在一个可视化画布里,把插件、大语言模型、代码块这些功能像搭积木一样组合起来,从而实现复杂、稳定的业务流程编排。比如做个旅行规划Bot,或者自动生成一份报告分析——这类任务靠单一大模型往往搞不定,但工作流可以。
说到这里,你可能会想:
既然Bot是基于大模型搭建的,为什么不让大模型直接搞定一切,还要多此一举引入工作流?
答案很简单:大模型现在虽然很聪明,但还没聪明到那个份上。生成式AI本质上是基于概率生成内容,它不是每次都能输出符合预期的结果——尤其在那些对准确性要求极高的场景里,大模型翻车的概率并不低。工作流,其实就是对当前大模型能力的一种补偿机制:在大模型还不够智能的时候,通过人为编排好的流程(也就是注入人的经验),让智能体的表现更稳定、更可靠。说白了,是用人的确定性来弥补模型的不确定性。
2. 扣子工作流能解决什么问题?
既然知道了工作流是什么,那下一个自然的问题就是:什么时候该用它?这里总结了几个典型的场景,供你参考。
场景一:提示词怎么调都达不到预期
在Coze上搭Bot,大家通常先从写提示词开始。但有时候,哪怕你按照提示词工程的最佳实践,把指令写得清清楚楚、结构化做得滴水不漏,反复迭代优化之后,效果还是不行。这时候就该考虑上工作流了。举个例子:写一篇长调研报告,得先收集资料、再列大纲、分章节写内容、最后总结。单靠一个提示词,大模型很难一次性产出一篇结构合理、内容翔实的文章——但工作流可以把它拆成几步,一步一步来。
场景二:需要多次调用插件或外部工具,而且有严格的依赖关系
有些大模型支持Function call,能调用外部工具。但如果要调用的工具比较多,而且它们之间有严格的先后顺序(比如必须等上一步的结果才能执行下一步),大模型就未必能每次都把顺序捋对。比如根据一个网址抓取网页内容、总结要点、再生成思维导图——这里“抓取”和“生成思维导图”都需要调用插件,中间还要大模型来总结。一个工作流就能把这些步骤稳稳地串起来。
场景三:需要对数据进行精确处理
大模型擅长写文章、编故事,但遇到数据计算、精确格式化这类任务,就有点力不从心了。工作流里的代码节点可以接手这类活儿。Coze官方文档里就有一个例子:用工作流加代码节点来生成随机数——虽然简单,但说明了大模型不擅长的事情,代码节点能精准搞定。
场景四:需要根据条件走不同的分支
比如做一个答题Bot,用户选A和选B,你希望机器人给出完全不同的回复。这种“if…else”的分支逻辑,用工作流里的选择器节点就能轻松实现。
场景五:一次请求里需要多次输出消息
大模型的工作模式是一问一答,输入一次,输出一次。但在有些复杂应用里,用户问一个问题,你可能希望先回复一条“正在处理中,请稍等”,然后再输出最终结果。或者整个处理过程比较长,需要分阶段给用户反馈。工作流里的消息节点,允许你在流程中间就输出消息,提升用户体验。
3. 扣子工作流的逻辑结构
说白了,扣子的工作流就是一个“有唯一输入、唯一输出”的有向无环图。它由一系列首尾相连的节点组成,每个节点都有输入参数和输出参数。示意图如下:
当然,这张图只是个示意,并不代表所有工作流都长这样。最简单的工作流,甚至可以只有一个开始节点和一个结束节点——中间什么都不放。
关于“唯一输入”和“唯一输出”,多说一句:这是指工作流有唯一的入口和唯一的出口(截至2024年6月是这样)。但“唯一”不等于“只能有一个参数”或“只能输出一条消息”。扣子工作流的入参可以有多个,而且前面也提到了,它可以在中途多次输出消息。
4. 扣子工作流的组成模块
直接看图更直观——创建一个新工作流后,默认打开的页面是这样的:
除了
开始节点
结束节点
插件
大模型
代码
知识库
工作流
图像流
选择器
文本处理
消息
变量
数据库
5. 扣子工作流的示例
理论讲完了,来动手做一个简单的工作流。功能是:
根据用户输入的URL,把对应网页的内容生成一张思维导图
先分解一下这个功能:
- 抓取URL对应的网页内容
- 总结内容要点
- 将要点生成思维导图
其中第1、3步需要调用插件(网页抓取和思维导图插件),第2步需要利用AI的总结能力。下面一步步做。
第一步
在“个人空间”(或团队空间)里切到“工作流”页签,点右上角的“创建工作流”,输入工作流名称和描述。
描述一定要写清楚
第二步
确认后进入工作流编排页面。按照上面的分解,需要添加两个插件节点和一个大模型节点。不过在写这篇文章时发现了一个Coze的小bug——用大模型总结长文本时,提示词过长会导致后台报错。所以改了下方案:直接用扣子官方的LinkReaderPlugin插件,把网页抓取和内容总结合并成一个步骤;思维导图用官方的generateTreeMind插件。把各节点连起来,效果如下:
第三步
整个工作流执行时间可能比较长,为了不让用户等得不耐烦而关掉页面,可以在中间步骤加一个消息节点,给用户一点反馈。比如先回复一句“正在抓取网页并总结,请稍候…”。加完消息节点后的工作流长这样:
第四步
网页抓取很可能失败——比如URL打不开、网站屏蔽爬虫等。在失败时(error_code不为空),需要走不同的处理分支,直接回复一条失败消息给用户。所以再加一个选择器节点,再加一个文本处理节点用来构造失败消息。最后在结束节点里,把回答模式设为“使用设定的内容直接回复”,在“回答内容”里把成功时的data和失败时的errmsg拼在一起(因为只会有一个分支执行,只有一个变量有值,拼接后两种情况都能得到正确的结果)。最终效果:
第五步
工作流基本上编排好了。点右上角的“试运行”,结果报错了——提示文本处理和消息节点的参数不能为空。这两个节点用的是固定的消息内容,不需要传参数,直接把参数删掉就好。再次试运行,输入URL参数:https://www.coze.cn/docs/guides/workflow,运行通过,生成了最终结果:
第六步
试运行通过后,点击“发布”,就能在Bot里使用了。
第七步
最后创建一个Bot(具体操作可以参考《用扣子(Coze)搭建Bot智能体详解》),在Bot里引用刚刚发布的工作流:
以上就是创建并使用扣子工作流的完整流程。
总结
工作流是搭建Bot智能体的一项核心技能——稍微有点复杂度的Bot,基本都离不开它。这篇文章从概念讲起,梳理了使用场景、逻辑结构和各个模块,最后用一个实际例子走了一遍从创建到发布的全流程。希望能帮小白用户快速上手。当然,要真正熟练掌握,还是得多动手、多琢磨。扣子的工作流商店里有很多其他人发布的工作流,点进去能看到节点配置信息,对新手来说是个非常好的学习资源。
-
- 关于宇宙的好的网名有哪些
- 角色扮演 | 1
- 网名