背景——Coze简介
Coze(扣子)是一个由字节跳动开发的新一代AI应用开发平台。这个平台允许用户,无论是否具备编程基础,都能快速搭建基于大模型的各类智能体(Bot),并将它们发布到不同的社交平台、通讯软件或部署到网站等其他渠道。
在Coze平台上,用户可以通过零代码或低代码的方式创建各种类型的聊天机器人。这些机器人不仅限于简单的对话,还能通过平台的插件和工作流机制实现更复杂的业务流程,如内容创作、数据分析、文档处理等。此外,Coze还支持制作小游戏。
Coze平台上的Bot可以分为多种类型,包括但不限于:
聊天机器人:基于各种大模型,用于简单对话。
互联网运营:例如生成爆款文案、抖音、小红书等平台的文案。
效率工具:如思维导图生成、Excel助手、PPT生成、数据分析及图表生成等。
内容写作:包括写小说、诗歌、论文、行业分析报告等。
设计类:如图标、海报、图片生成,修图、扣图等。
学习类:比如英文学习等。
Coze平台提供了丰富的功能,使用户能够根据自己的需求创建和定制智能体应用,从而在多个领域实现自动化和智能化服务。
学习目标
利用扣子专业版打造一个解答Python程序开发和面试相关问题的程序员面试搭子。
第三天小目标
学习创建工作流。
关于工作流的相关知识
1.什么是工作流
工作流起源于生产组织和办公自动化领域,是指在计算机应用环境下,对业务过程的部分或整体进行自动化处理。它通过将复杂的任务分解成定义良好的任务或角色(节点),并按照一定的规则和过程来执行这些步骤中的任务,从而降低系统复杂度,减少对提示词技术和模型推理能力的依赖,提高 LLM 应用在复杂任务中的性能,提升系统的可解释性、稳定性和容错性。
工作流技术能够提高智能体Bot处理复杂任务的能力,增强场景适应性和用户体验,对于一些稳定性要求很高的场景,工作流技术也是首选。
2.两个工作流概念
-
简单工作流:除了开始和结束,仅添加一个节点所构建的工作流。
-
复杂工作流:通过多节点组合所构建的逻辑较复杂的工作流。
如何创建工作流
登入COZE网站,打开工作空间,进入后默认是个人空间,在其下方选择资源库,最后在右上角点击资源按钮,在弹出的列表中点击工作流。
实战——创建一个必应搜索工作流
1.对所需插件进行调研
在设计工作流前,首先对必应搜索插件进行了使用调研,Coze官方介绍:必应搜索插件,其中插件输出参数的信息如下:
-
输出返回值字段介绍
-
其中data参数包含了问题query搜索出的网页的信息,其内部参数描述如下:
因此,我们主要使用其中的response_for_model参数进行工作流设计,具体内容如下:
工作流名称:search_test
工作流描述:Useful for when you want to use search_test
工作流节点组成:开始节点,插件节点1,代码节点,插件节点2,结束节点
2.创建工作流组件并整合成完整工作流
该工作流组件的内容如下:
1.开始节点
2.必应搜索插件
3.代码节点
引用必应搜索插件输出的response_for_model参数
代码:
4.链接读取插件
5.结束节点
工作流调试
工作流并非仅指线性流程,可以看作包含的范围等同于一个python函数,内部可能有分支流程、包含非LLM的逻辑等等。然而,在低代码平台上进行工作流调试,我们并不能像调试代码一样找到发生错误的所在代码行,我们能接收到的错误信息只有某一个节点。这提醒我们,在完成复杂任务的时候,尽量把复杂任务的子任务区分开,每个子任务用一个节点去解决。这样我们能够很快明白工作流中哪一步出现了问题,并能够快速判断到底是模型能力不行,组件使用方式错误,还是我们解决任务的方式本身就行不通。
在进行工作流设计的时候,要进行工作流调试可参考如下步骤:
-
当设计完工作流后,点击试运行,然后对于工作流的某个功能找一个测试数据输入,看看能否跑通:
-
如果不能跑通:
-
找到当前报错的节点,根据报错信息修正节点中出现的错误,然后循环点击试运行修正错误直到当前工作流能够跑出一个结果。
-
如果结果正确,该工作流功能验证有效,但还需多个测试数据去验证功能的稳定性。
-
如果结果不正确,则查看每个节点的运行结果,判断是哪一个节点出现了问题,比如:可能是组件节点的输入参数选取错误,代码节点输出参数与代码中定义的不一致,插件节点的入参和出参的含义没明确清楚而导致与任务需求不相符,大模型节点中提示词没有正确引用变量等等。当找到了问题所在,对当前节点进行测试,直到子任务对应的节点能够得到预期结果为止。
-
-
-
如果能跑通:
-
按照a中i步骤所说,判断结果的正确性并进行优化,构建测试数据进行功能验证。
-
-
-
当步骤1中的步骤执行完后,测试验证工作流的其它功能,按照1中步骤查找并修正问题,直到工作流满足当前场景中的所有需求或者说可以解决当前场景中的所有任务的时候则停止迭代,最后发布工作流。
总结
根据所学的知识创建自己所需的工作流来进一步优化bot吧