Coze搭建工作流
文章目录
- 1.什么是工作流
- 2. Coze
- 什么是扣子
- 扣子能做什么?
- 3. Coze实现工作流
- 1 打开官方模板页面
- 2. 选择模板
- 3. 复制模板
- 4. 分析工作流
- 4.1 img_generate
- 4.2 read_history
- 5. 用户界面
1.什么是工作流
工作流(WorkerFlow)是为完成某项任务或业务流程而设计的一系列自动化步骤的有序组合。它通过标准化、协调不同环节的人员、系统或资源,实现流程的高效执行与监控,最终达成特定目标。
在大模型的应用中,某些复杂的需求很难通过单一的问答解决。而工作流是由包括大模型在内的一系列任务结点构成的,此时可以引入工作流,通过任务结点的链式调用实现复杂需求。
举例
比如1:电商的订单处理:审核用户下单→触发库存检查→库存充足就生成物流单→并触发财务系统完成收款对账。如果库存不足。。。
比如2:AI批改学生作业:学生提交作业→系统识别错误→生成反馈→推荐练习
比如3:企业审批流程:员工提交申请→系统自动分发给审批人→记录结果并归档
比如4:自媒体智能体:输入爆款视频→提取爆款标题并重新生成新视频大纲→根据分镜头生成图片→图片生成视频→视频配合字幕整合完成
2. Coze
官网:https://www.coze.cn/
什么是扣子
扣子是新一代 AI Agent 开发平台。无论你是否有编程基础,都可以在扣子上快速搭建基于大模型的各类 AI 应用,并将 AI 应用发布到各个社交平台、通讯软件,也可以通过 API 或 SDK 将 AI 应用集成到你的业务系统中。
扣子能做什么?
借助扣子提供的可视化设计与编排工具,你可以通过零代码或低代码的方式,快速搭建出基于大模型的各类 AI 项目,满足个性化需求、实现商业价值。
- 智能体:智能体是基于对话的 AI 项目,它通过对话方式接收用户的输入,由大模型自动调用插件或工作流等方式执行用户指定的业务流程,并生成最终的回复。智能客服、虚拟伴侣、个人助理、英语外教都是智能体的典型应用场景。
- 应用:应用是指利用大模型技术开发的应用程序。扣子中搭建的 AI 应用具备完整业务逻辑和可视化用户界面,是一个独立的 AI 项目。通过扣子开发的 AI 应用有明确的输入和输出,可以根据既定的业务逻辑和流程完成一系列简单或复杂的任务,例如 AI 搜索、翻译工具、饮食记录等。
扣子提供以下两种类型的工作流:
- 工作流(Workflow):用于处理功能类的请求,可通过顺序执行一系列节点实现某个功能。适合数据的自动化处理场景,例如生成行业调研报告、生成一张海报、制作绘本等。
- 对话流(Chatflow):是基于对话场景的特殊工作流,更适合处理对话类请求。对话流通过对话的方式和用户交互,并完成复杂的业务逻辑。对话流适用于 Chatbot 等需要在响应请求时进行复杂逻辑处理的对话式应用程序,例如个人助手、智能客服、虚拟伴侣等。
3. Coze实现工作流
案例:根据官方模板复刻:海报
1 打开官方模板页面
右侧展示的都是官方模板。
2. 选择模板
3. 复制模板
4. 分析工作流
此处可以看到两个工作流
4.1 img_generate
这是关键的生成图片的逻辑
- 开始
2. 导出链路判定
根据logo_place判断是否为导出链路,前者为空则不是导出,反
之亦然。
2.1 生图链路
logo_place为空说明是生图链路
判断是否为文生图链路
如果img参数为空则说明是文生图,否则是图生图
2.1.1 文生图
根据具体的宽高比生成图片
首先由一个分支节点根据不同的propotion路由至不同的生图节点
然后在不同的分支选择不同的生图比例,并选好生图模型,将用户的提示词作为生图提示词传入。
以2:3为例
此处的生图节点都是图像处理下的图像生成节点
2.1.2 改图
如果img不为空则是改图。
根据提示词判定是改图还是变清晰,如果提示词不为空是改图,否则为变清晰
改图
将原图和提示词填入
改图节点选择的是指令编辑插件
变清晰
将原图填入
变清晰节点选择的是画质提升插件
2.2 导出链路
2.2.1 添加二维码
根据qr_img参数是否为空判断用户是否上传了二维码
① 如果用户上传了二维码
调整用户二维码图片大小,最大尺寸不超过200像素
添加用户二维码
将调整后的用户二维码作为上层图,将传入的图片作为底图,上层图已经经过了尺寸调整,缩放比例为100%,即不缩放。并根据qr_place指定上层图的相对位置。
此处使用的是叠图插件
② 如果用户没有上传二维码
则直接添加扣子官方二维码,并按照①中相同的方式叠图
官方的二维码图片尺寸是固定的,所以直接按照指定的30%比例缩放。
变量聚合
通过变量聚合节点将两个分支的数据聚合在一起,下游只需要处理同一个变量output即可。
多个分支的数据只有一个是存在的,直接将其拼接在一起,最终的效果就是执行哪个分支,哪个分支的输出就作为变量聚合后的output
2.2.2 添加logo
逻辑和二维码添加相同,略。
3. 变量聚合
无论上游是导出链路还是生图链路,最终输出的都是图片,聚合在一起作为output传输至下游
4. 写入数据库
将生成的图片和提示词存储数据表Generation,该结点会将写入的行号和当前数据表中的数据列表输出至下游。当前链路中输出的数据无用。
数据表
官方在当前应用中创建了一个数据表Generation,字段如上所示。
- 结束
最终将变量聚合节点的output输出,无论执行哪个分支,生成的图片都会被输出。
4.2 read_history
-
开始
只有一个参数,该参数是用户在本轮对话中输入的内容,然而,在UI界面调用该工作流时该参数恒为空。可以理解为开始节点实际上没有参数。 -
数据库节点
从数据表Generation查询所有记录的图片、写入时间和提示词,作为列表outputList返回,同时返回行号。 -
结束节点
将数据库节点查询到的数据作为output返回。
5. 用户界面
官方提供两个用户界面,可以通过左侧结构-图层查看所有页面的所有组件
查看属性和事件标签,就可以知道何时及如何调用工作流,此处不展开。