【大模型】Coze AI 智能体工作流从配置到使用实战详解
目录
一、前言
二、工作流介绍
2.1 什么是工作流
2.2 工作流与对话流
2.2.1 两者区别
2.3 工作流节点介绍
2.3.1 工作流节点说明
2.3.2 开始节点与结束节点
2.4 工作流入口
2.4.1 自定义智能体入口
2.4.2 从资源库新增工作流
2.5 工作流使用限制
三、工作流配置与使用
3.1 自定义工作流
3.1.1 新增工作流
3.1.2 添加新节点
3.1.3 配置节点运行参数
3.1.4 发布工作流
3.2 工作流使用
3.2.1 在智能体中使用
3.3 大模型节点
3.3.1 大模型节点介绍
3.3.2 大模型节点能力
3.3.3 大模型节点配置使用与说明
3.3.4 试运行检验效果
3.4 插件节点
3.4.1 插件概述
3.4.2 插件节点配置与使用
四、写在文末
一、前言
AI智能体从早期的概念到如今落地实现,经历了一段较长的时间,智能体的使用,是AI大模型的又一次核心价值的升级体现。在智能体中,其中一项别具特色也是其核心的功能就是流程编排能力,借助流程引擎的能力,可以将真实的业务场景通过流程编排进行整合,从而在不同的流程节点完成特定的业务功能,最后各个节点的协同,一起完成一项甚至多项复杂的业务,这就是AI智能体中工作流的价值所在。本篇将详细分享在Coze平台中,工作流的详细配置和使用。
二、工作流介绍
2.1 什么是工作流
工作流是一系列可执行指令的集合,用于实现业务逻辑,或完成特定的任务。它为应用/智能体的数据流动和任务处理提供一个结构化的框架。工作流的核心在于将大模型的强大能力与特定的业务逻辑相结合,通过系统化、流程化的方法来实现高效、可扩展的AI应用开发。
Coze 提供了一个可视化的画布,用户可以通过拖拽节点的形式快速搭建工作流,同时,支持画布实时调整工作流。在工作流画布中,你也可以清晰的看到数据的流转过程和任务的执行顺序。
2.2 工作流与对话流
coze提供以下两种类型的工作流:
-
工作流:
-
用于处理功能类的请求,可以通过顺序执行一系列的节点实现某个功能。
-
适合数据的自动化处理场景,比如生成行业的调研报告、生成海报、数据分析文件等。
-
-
对话流:
-
是基于对话场景的特殊工作流,更适合处理对话类请求。对话流通过对话的方式和用户交互,并完成复杂的业务逻辑。
-
对话流适用于Cahtbot等需要在响应请求时进行复杂逻辑处理的对话式应用程序,比如个人助手、智能客服、心理咨询师等。
-
2.2.1 两者区别
工作流用于处理功能类的请求,可以通过顺序执行一系列的节点实现某个功能。对话流是基于对话场景的特殊工作流,专门用于处理对话类的请求。在应用中添加对话流,将对话中的用户指令拆分为一个个步骤节点,并为其设置用户界面,可以搭建出适用于移动端或网页端的对话式AI应用,实现自动化、智能化的对话流程。
相较于工作流,对话流更适合处理对话场景下的交互逻辑,每个对话流绑定一个会话,运行时可以从此会话中读取历史消息,同时将本次运行对话流产生的消息记录在这个会话中,相当于是拥有了一个拥有记忆的工作流。
-
如果你需要搭建一个智能体,智能体本身支持上下文和会话能力,那么可以任意选择工作流或对话流;
-
如果你需要搭建一个对话式的AI应用,比如AI助手、智能体客服等基于对话式交互的AI应用,coze推荐你使用对话流。对话流中的大模型可以读取会话的上下文、管理会话,还可以搭建对话式的用户界面,发布到各种社交通讯软件中;
-
如果你需要搭建一个工具类的AI应用,批量处理数据、实现任务流程自动化,可以选择工作流实现;
2.3 工作流节点介绍
工作流的核心在于节点,每个节点是一个具有特定功能的独立组件,代表一个独立的步骤或逻辑。这些节点负责处理数据、执行任务、运行算法,并且它们都具备输入和输出。每个工作流都默认包含一个开始节点和结束节点。
-
开始节点:是工作流的起始节点,定义启动工作流需要的输入参数。
-
结束节点用于返回工作流的运行结果。
通过引用节点输出,你可以将节点连接在一起,形成一个无缝的操作链。比如,你可以在代码节点的输入中引用大模型节点的输出,这样代码节点就可以使用大模型节点的输出。在工作流画布中,可以看到这两个节点是连接在一起的。
2.3.1 工作流节点说明
在使用节点编排工作流时,灵活性和扩展性是实现高效编排的关键。工作流的开始节点,结束节点,输出节点、插件节点、子工作流节点、代码节点、SQL自定义节点、新增数据节点、查询数据节点、更新数据节点等均支持多种变量类型,包括:string、integer、number、boolean、object、array、file等,你可以根据实际需求灵活选择合适的数据类型,而无需额外的数据转换,从而提升工作流编排的灵活性和扩展性。
2.3.2 开始节点与结束节点
开始节点用于开启触发一个工作流,而结束节点用于输出工作流的结果。
1) 开始节点
开始节点是工作流的起始节点,用于设定启动工作流需要的输入信息。开始节点只有输入参数,没有输出等其他参数。开始节点中默认有一个输入参数 BOT_USER_INPUT,表示用户在本轮对话中输入的原始内容。你也可以按需添加其他参数。
开始节点配置说明如下:
-
数据类型::开始节点支持配置 String、Number 等多种类型的输入参数。其中 Object 类型的参数最多支持 3 层嵌套。
-
参数设置方式:支持直接添加参数并设置参数名称,也支持导入 JSON 数据,批量添加输入参数。
-
参数描述:参数的描述信息,帮助模型理解传入的参数含义。将工作流绑定到智能体中使用时,模型会自动分析用户的 Query,将 Query 中表达的信息填入对应的参数中。
-
是否必选:参数是否必选。如果未指定必选参数,无法开始执行工作流。将工作流绑定到智能体中使用时,用户 Query 中如果缺少必选参数,则不会触发工作流。
2) 结束节点
结束节点是工作流的最终节点,用于返回工作流运行后的结果。结束节点支持两种返回方式,即返回变量和返回文本。
返回变量
返回变量模式下,工作流运行结束后会以 JSON 格式输出所有返回参数,适用于工作流绑定卡片或作为子工作流的场景。如果工作流直接绑定了智能体,对话中触发了工作流时,大模型会自动总结 JSON 格式的内容,并以自然语言回复用户。如下图,在结束节点上面可以选择返回变量,或返回文本。
返回文本
返回文本模式下,工作流运行结束后,智能体中的模型将直接使用指定的内容回复对话。回答内容中支持引用输出参数,也可以设置流式输出。具体说明如下:
设置 | 说明 |
输出变量 | 输出节点中输出的参数。为工作流绑定卡片时可以使用这些参数。 |
回答内容 | 工作流的最终输出内容,不可设置为空。 支持引用输出参数,引用方式为{{变量名}} |
2.4 工作流入口
2.4.1 自定义智能体入口
在自定义的智能体中,将模式选择切换为多Agents 模式,即可调出工作流的编排画布。
2.4.2 从资源库新增工作流
在我的资源库下,点击右侧的资源,在下拉选项中也可以新增一个工作流
2.5 工作流使用限制
使用工作的时候,注意以下限制:
限制 | 说明 |
超时时间 | 如果工作流或节点运行超时,智能体可能无法提供符合预期的回复,各场景的超时时间如下:
|
运行次数 | 专业版无免费额度,且不限制运行次数,按消耗模型的token计算。基础版每个工作流每天最多运行500次,否则会报错。试运行是指通过coze平台的工作流编排页面试运行工作流。 |
节点总数 | 每个工作流中最多添加1000个节点,每次运行工作流时,包含循环节点的循环次数在内,所有节点最多执行1000次。 |
图像节点并发 | 每次执行工作流时,叠图和添加文字插件节点的并发限制为单节点10次/秒,其他官方图像插件和图像节点的并发限制为单节点4次/秒。 |
三、工作流配置与使用
接下来通过实际操作演示下如何使用工作流,以及工作流中重要节点的配置使用。
3.1 自定义工作流
3.1.1 新增工作流
我的资源库,点击右侧资源,下拉选项中选择工作流
填写名称和描述后,点击确认,然后跳转到如下工作流配置的画布页面
初始画布上,提供了一个开始和结束节点,用户可以根据需要在两个节点中间新增节点,光标放在添加节点按钮
此时就可以看到在下列选项中提供了非常多内置的节点类型选择,比如你可以增加一个调用大模型的节点,或者是添加一个执行SQL语句的节点等
3.1.2 添加新节点
在上面的流程中,选择一个大模型节点
这里的模型如果不想使用默认的,也可以调整为其他模型,单击一下节点,在右侧弹出的节点配置中,在下拉模型列表中可以调整为其他大模型,比如deepseek
3.1.3 配置节点运行参数
工作流节点通常需要配置参数才能发挥实际的作用,上面添加了一个大模型节点之后,需要为这个节点配置必要的输入输出参数
配置输入
配置输出
配置系统提示词和用户提示词
-
系统提示词,可以为当前的大模型设置角色等;
-
用户提示词,将输入的内容作为变量传入(这里必须要设置,否则后面运行中会有问题);
点击试运行,观察效果
-
在弹出的输入框中输入一段需求描述提示词,点击试运行,等待响应结果
3.1.4 发布工作流
上面工作流定义以及试运行都成功后,点击发布,发布后的工作流可供其他地方使用,发布后在列表中可以看到这个工作流
3.2 工作流使用
3.2.1 在智能体中使用
选择一个之前创建的智能体,进入编辑页面,在中间部分可以看到有一个使用工作流的位置
点击添加工作流,这里就能看到前面我们创建的工作流,然后将其添加进去
再在原始的提示词中增加一项技能,如下:
效果测试,添加完技能之后,在右侧的输入框中提一个问题,此时就能看到当输入相关的问题时,刚刚添加的自定义工作流就生效了
3.3 大模型节点
在为一个工作流添加新节点时,在选项中排在第一个的就是大模型节点,如下图
3.3.1 大模型节点介绍
大模型节点是扣子提供的基础节点之一,你可以在该节点使用大语言模型处理任务。 具体来说:
-
大模型节点可以调用大型语言模型,根据输入参数和提示词生成回复,通常用于执行文本生成任务,例如文案制作、文本总结、文章扩写等。
-
大模型节点依赖大语言模型的语言理解和生成能力,可以处理复杂的自然语言处理任务,你可以根据业务场景的需求选择不同的模型,并配置提示词来定义模型的人设和回复风格。
-
为了更精准地控制模型生成的结果,你还可以在大模型节点中设置模型的参数,从而影响模型回复的文本长度、内容的多样性等。
3.3.2 大模型节点能力
-
支持为大模型节点配置技能,添加插件、工作流或知识库,扩展模型能力的边界。
-
大模型节点运行时,会根据用户提示词自动调用插件、工作流或知识库,综合各类信息输入后输出回复。
-
-
为大模型节点配置技能后,大模型节点的能力更接近一个独立运行的智能体,可以自动进行意图识别,并判断调用技能的时机和方式,大幅度提高此节点的文本处理能力和文本生成效果,简化工作流的节点编排。
-
例如用户需求是某地区的穿搭推荐,通常需要先通过插件节点查询某地天气,再由模型节点根据天气情况生成穿搭推荐,现在你可以直接在大模型节点添加查询天气的插件,大模型会自动调用插件,查询天气并推荐穿搭。
-
3.3.3 大模型节点配置使用与说明
以上文创建的这个工作为例进行说明,首先添加一个大模型节点,添加之后,在大模型节点的配置界面,有很多可以配置的选项,下面分别说明
1)单次处理与批处理
-
前序节点的输出为单个结果,一般使用单单次处理,也是默认的方式;
-
前序节点的输出为多个结果,比如开始节点输出的结果为array类型,则可采用批处理;
如下,在开始节点增加一个array类型的输入参数
此时在大模型节点的批处理那里就能看到开始节点的这个array类型的参数了
如果是单次的话,直接引用开始节点的输入参数即可
2)选择模型
下拉框中也提供了目前市场上多种主流的大模型可供选择
3)提示词设置
在这里可以对前序节点的参数进行解析或提取
4)设置输出参数
输出参数可以根据你在提示词中的设置进行配置,比如我这里是为了解析出用户的输入参数中的用户名和密码,所以在输出参数中设置name和pwd
最好在结束节点中,接收上一步大模型节点的两个输出参数进行配置
3.3.4 试运行检验效果
以上配置完成后,点击试运行,在input输入框填写内容
点击试运行,看到下面的效果说明本次大模型节点的配置是正确的,同时运行完成之后,每个节点也展示了运行的节点日志信息,方便出错时排查问题
3.4 插件节点
在为一个工作流添加新节点时,在选项中可以选择插件节点,如下图
3.4.1 插件概述
插件节点用于在工作流中调用插件运行指定工具。
插件是一系列工具的集合,每个工具都是一个可调用的 API。商店中的上架插件或已创建的个人或团队插件支持以节点形式被集成到工作流中,拓展智能体的能力边界。
3.4.2 插件节点配置与使用
在工作流中选择添加插件节点,在下面的弹框中可以看到很多相关选项,有系统内置的,也可以自己创建一个插件
1)添加一个插件节点
这里选择一个用于天气查询的插件
2)改造前置节点
仍然以上面的大模型节点示例,为了配合天气查询插件的使用,需要调整下大模型节点的提示词信息,如下配置:
3)配置插件节点
在插件节点中,根据当前插件的参数要求,将大模型节点的输出参数进行引用,对于输出插件的输出参数,在下一个节点中如何获取结果,也需要在这里详细了解
最后在结束节点中,配置一下对插件节点输出信息的引用,如下:
4)效果测试
以上配置完成之后,点击试运行,如果看到下面的内容,说明通过这个工作流的配置能够正常拿到插件的天气返回结果
为了让输出效果得到更好的呈现,你还可以在此基础上继续完善输出内容的提示词,这里为了方便,直接将原始的json文本输出了
四、写在文末
本文通过较大的篇幅详细介绍了Coze工作流的详细配置与使用,事实上工作流的能力远远不止这些,其核心就在于配置工作流中的节点能力,比如还可以为你的工作流节点配置知识库,数据库,Http请求等,从而完成更多复杂的功能,有兴趣的同学可以在此基础上继续深入研究,本篇到此结束,感谢观看。