今天结合具体的实操案例,来帮大家从0到1手撸一个智能体!前面已经发过3篇文章了,此为合集版+pro max版,修订了很多小错误并添加了亿点细节,绝对是保姆级教程。并且在这过程中会穿插Coze的多个技术与工具,让你玩着玩着就学会了Coze相关技术。
仅仅是Coze的案例编写就花了三个晚上,又吐血整理一整天使文章内容尽可能面向更小白的用户。写着写着突然发现全文7000字了,快赶上我写的小论文了都。
本文从工作流基本概念出发,手撸一个工作流后,再将工作流改造成对话智能体。由易到难,层层递进。理论与实操兼具,让你充分学习并理解工作流/智能体的技术,且最终能做出一个对话生成智能卡片的智能体。
❝体验地址:https://www.coze.cn/s/OvWkhwvpnV0/需要消耗自身Coze的资源点,大概一天能免费生成3张图片左右!


1)工作流
一、什么是工作流?
在做工作流之前,咱首先搞清楚什么是工作流?工作流,顾名思义嘛,就是流水线般的工作流程。将一个完整的任务拆分为多个任务节点,然后按一定顺序和逻辑进行组合编排,最后产出的就是工作流。

例如上面这个图里,每个节点就是一个任务节点用来执行某个任务,节点与节点之间的连线用来控制执行的顺序。“开始”节点:完成用户输入数据的接收;“大模型”节点:通过提示词让AI完成输入数据的处理;(就是给大模型发消息并得到返回)“结束”节点:输出用户想要的数据。
执行顺序:“开始”节点执行结束,就会执行“大模型”节点;“大模型”节点执行结束,就会执行“结束”节点。
工作流无处不在。比如打工人的打工工作流,那可真是再熟悉不过了。任务目标:早起上班打工一天,到点拿到今日工资下班躺平睡觉。工作流实现:
-
收到闹钟声音,唤起起床动作。 -
根据昨晚睡眠水平,选择是否赖床5分钟再起。 -
吃早饭刷牙洗脸。 -
坐地铁到公司。 -
打工/摸鱼一天~~~ -
下班打卡ing。 -
坐地铁回家。 -
运动/玩耍恢复精力。 -
该睡觉了。
有没有发现,只要做事感觉像在“拧螺丝”一样,这个过程就能尝试用工作流来描述。而只要是工作流,事实上就可以尝试打造出AI工作流来自动化的帮我们去干活。
当然,现阶段的科技主要还是停留在互联网工作的“拧螺丝”自动化,线下的拧螺丝工作恐怕得等机器人普及后再说了。
二、工作流有什么好处?
我们用提示词可以让每个工作流的某些单个节点(例如英文翻译、生成图像等单个步骤)实现自动化,这可以省下我们很多时间。但我们用提示词都是实现某个“动作”(单个任务)的自动化。而很多时候我们做完一件事之后一定会做另一件事,却还是手动地通过复制粘贴去完成。
一个典型的例子就是,当客服碰到几十几百个人问同样的问题,还得每次手动复制话术提示词给GPT,再用微信复制结果发给客户。这活干久了你就会发现:
-
每次复制给GPT使用的提示词都一样,我们却还要花时间复制; -
每次GPT输出后一定会发给客户,我们却还要复制GPT的输出到微信再发给客户。
这可真是又累又浪费时间。
这种“复制粘贴”操作看起来很简单,但却是导致我们没办法规模化的重要卡点。而工作流就是把所有动作按一定规则的执行顺序串起来,让这些“复制粘贴”的操作也不用我们亲自去做了,实现整个流程的自动化。由于每个人的时间都是有限的,同样一段时间纯人工能赚1w,而同时运行10个相同的工作流实现全自动化说不定就能赚10w了。
工作流就是让我们能够变得更“懒”的工具。甚至工作流可以借助大模型的推理能力实现“智能路由”的能力,智能选择下一个动作是什么,哪怕不是简单的“复制粘贴”动作也能替代人工进行决策。
❝
工作流与智能体有什么关系?
很多人可能会关心工作流和智能体到底有什么区别,这里简单提一下。其实压根没什么太大的区别。。或许是因为程序员觉得工作流太简单和死板,不够智能,所以称不上智能体,研究AI的更喜欢把让AI全自主决策生成、拥有上下文记忆的程序叫做智能体,比如前面提到的“智能路由”。但一千个人有一千种不同的理解,简单将两者当成一个东西也行,只是一个工具名称而已,不必过于纠结。
三、Coze创建“Hello World”工作流
讲了这么多,我们就用扣子来实现一个最简单的AI工作流。在扣子中,每个小任务被视为一个节点,并可以通过平台提供的工具、插件、大模型等来完成这个任务,再通过“连线”自行实现各个小任务之间的逻辑关系,从而就能实现整个任务的全自动化处理。
1、打开官网,创建工作流
❝一键直达:扣子官网
首先来到主页。
-
点击“资源库”; -
点击右上角的“资源”按钮; -
点击“工作流”。

然后填写一个表单。
-
填写工作流名称;(工作流名称只能由字母、下划线和数字组成) -
填写工作流描述; -
点击确认。

2、添加大模型节点
点击确定后就来到了工作流制作画布里了。点击节点的右侧“+”或者点击“添加节点”,可以添加后置节点,然后将节点之间根据节点间的执行顺序连接起来。



3、配置大模型节点
点击大模型节点可以选择大模型的类别(我这里是DeepSeek),并在右侧配置输入,比如我这里配置前面的用户输入作为大模型节点的用户提示词内。

❝
节点中“输入”是指什么意思?
例如下方图片中输入的变量名为“input”,变量值为“开始.input”。那么就代表着将前面的开始节点中的input变量的值,赋值给大模型节点里input变量。如果“开始.input”等于“xxxxx”,那么“input”也等于xxxxx。且后面第6步中的用户提示词“{{input}}”也等于xxxxx。
系统提示词如下:当用户输入程序执行时,输出文字“Hello World!”。否则均输出文字“默认输出”。不要输出其他文本或程序代码。
4、配置结束节点
最后点击“结束”节点,选择“大模型”->“output”,修改下“结束”节点的输入。

5、测试工作流
就这样,一个超级简单的工作流的搭建好了,用程序员的话讲就是一个工作流版本的“Hello World!”了。我们点击下方的“试运行”,简单运行一下,看看工作流成功没。


可以看到,输入“程序运行”确实输出了“Hello World!”,输入“某个输入”输出了“默认输出”。当然,如果结果不符合预期的话也问题不大,因为大模型的输出本身就不稳定,可以调整提示词或是换用更强大的模型。
2)单词卡片工作流
学会了用Coze搭建基本的工作流后,我们就可以来上点强度了。之前看到小某书上有不少卖各种小卡片的。

于是乎,我一拍脑袋,不如就拿扣子做个能一键生成英语单词卡片的智能体工作流。对一些正备考四六级的人、英语教师或自媒体博主来说,这个将枯燥的单词文本变为有趣卡片的智能体工作流应该还算很感兴趣了。
话不多说,咱先看看效果。

怎么说,我觉得直接打印成单词卡片完全没问题啊!
一、战前预备
要做这个工作流,首先得分析它的目标是什么,并将这个目标拆解为多个子任务。工作流目标:从数据库里提取英文单词文本,生成对应的英文单词卡片。工作步骤:
-
设计数据库,并录入单词。 -
从数据库中查询出单词的数据。 -
用AI大模型生成出单词对应的句子示例和翻译。 -
用AI生成单词卡片。 -
将单词、例句、翻译、图片等组装成特定模板的卡片。
需求分析和拆解后,这个工作流就很好实现了,套公式一步一步完成任务就行。

二、工作流实现
首先还是新建一个工作流,忘记了怎么新建工作流的话可以翻翻上文回忆一下。
1、设计数据库,并录入单词
首先我们添加一个节点,点击查询数据,然后添加一个数据库表。

点击“查询数据”节点,点击添加数据表。

选择新建一个自定义数据表。

-
创建扣子数据库。 -
填写数据表名称(只允许小写字母、下划线和数字)和数据表描述。 -
点击确认。

然后点击新增存储字段,设计数据库表结构如下:

回到添加数据库这里,并添加进这个数据库。


然后点击这个数据库并录入数据即可。

按照下面给出的四级单词数据录入到数据表中。(这里先教单行导入方法,后面会教批量导入方法)

2、从数据库中查询出单词的数据
这里配置好输入节点和查询数据的节点,就能查询出对应单词的相关信息了。
2.1 开始节点
开始节点里我们通过获取id来获得一个单词,这里的id就是数据表自动生成的唯一标识id。

2.1 查询数据节点
查询数据节点里,配置好查询字段、条件和上限。
❝查询字段:数据表中有很多个字段,查询字段是指这一次查询要从数据表中获得哪些字段的数据。查询条件:查询条件是指要从整个数据库表中查询哪几条数据,我们这里查询指定id的数据就行。查询上限:为了防止满足查询条件返回的数据过多,限制最多返回数据的条数。我们这个查询条件事实上最多只会返回1条。

3、用AI大模型生成出单词对应的句子示例和翻译
然后我们新增一个大模型节点,根据给定的单词生成出对应的例句和中文翻译。(忘记怎么新增节点的参考前文,后面新增节点的方法就不再赘述了)随便写了个提示词给大家参考下,也可以用Coze自带的AI自动优化一下提示词。
❝1、点击大模型节点2、修改节点输入3、修改系统提示词(可以用AI优化)4、修改用户提示词5、修改节点输出

# 角色
你是一位资深的英语教师,在英语教学领域经验丰富,尤其擅长辅导学生应对四六级考试。现在需要根据指定的英语单词,生成该单词对应的英文例句、例句的中文翻译。
## 技能
### 技能 1: 单词造句及翻译
1.当用户提供一个英语单词时,结合单词的含义和词性,创作一个自然、地道且符合四级考试难度的英文例句。
2.给出每个例句精准的中文翻译。
## 限制:
-只围绕生成英语单词例句相关内容进行回答,拒绝回答与该任务无关的话题。
-所输出的内容必须按照给定的格式进行组织,不能偏离框架要求。
4、用AI生成单词卡片
添加一个图像生成节点,根据之前大模型生成的例句生成对应的图像。这里的模型和现在非常火的即梦用的是同款模型,效果还是很不错的。有能力的人可以自己调优提示词和测试其他的模型参数。

5、将单词、例句、翻译、图片等组装成特定模板的卡片
最后我们通过新增一个画板节点,将之前的单词、音标、例句、翻译和图片等组装起来,展示成一个好看的卡片样式。
5.1 配置画板节点

5.2 编辑画板
点击全屏按钮进入编辑画板页面,设置画板基础属性。

在画板里新增一个用于显示单词的区块文本。

然后同样的方法新增用于显示单词音标、单词释义、英文例句、中文例句的区块文本。

最后添加一个用于显示图片的元素并退出。

6、最后配置结束节点即可

三、结语
这一个工作流就做完了,说实话还是挺简单的,输入数据库对应单词的id就可以获得对应的单词卡片。测试的时候需要使用测试数据库的id,点击数据库选择一个id进行测试。


有需要的可以调整下字体和背景图,就可以变得更好看了,比如下方这张图片。

当然,将工作流加一个批处理节点还可以很简单的实现批量生成卡片。(可以自行探究)有一些文章做单词卡片的时候使用知识库而不是数据库,这里提一嘴为什么我这里使用数据库。
❝
为什么使用数据库而不是知识库?
知识库的优点:在于能够进行语义检索,而我们从几千个单词中选取1个单词并不需要进行语义匹配,只需要通过早已成熟的数据库程序技术即可实现。知识库的缺点:1、需要消耗大模型的资源,大模型需要对用户输入进行向量化,简单来说就是要钱更多。数据库程序技术几乎可以算作不要钱了。2、时间通常更长,知识库检索需要大模型参与且中间经过多个步骤。而数据库技术早已优化几十年,检索速度相当之快。3、只要有大模型的参与,准确率就永远不可能达到100%,哪怕是无限接近100%也不是100%,这是大模型的不确定性特点。而数据库技术是传统编程,只要代码写对了,结果就一定是符合预期的。
因此我们在使用大模型和传统编程时,能优先用传统编程解决的就是用传统编程(包括代码、数据库等),涉及到语义检索等问题再选择大模型、知识库等新技术实现。
因此我们在使用大模型和传统编程时,能优先用传统编程解决的就是用传统编程(包括代码、数据库等),涉及到语义检索等问题再选择大模型、知识库等新技术实现。
3)单词卡片智能体
那么接下来,我们继续让工作流鸟枪换炮成智能体!
前面每次输入个id才能生成卡片还是过于麻烦了,既然都一键生成了,那肯定使用越简单越好。所以这次咱把这个工作流“微调”一下,直接整成一个方便操作的对话智能体,对话就能生成可操作的单词卡片。

一、任务规划
老规矩,首先咱还是得确定智能体的目标是啥,然后拆解一下实现步骤。目标:智能体刚开始随机生成一张单词卡片,当用户输入“跳过”或者点击对应按钮时随机生成下一张单词卡片,当用户输入“已学习”或点击对应对应按钮时记录学习次数并随机生成下一张单词卡片。实现步骤:
-
数据库新增字段“read_count”表示用户的学习次数,当用户确认学习后将复习次数加1; -
修改工作流为根据id生成变为随机生成单词卡片; -
当输入参数为“已学习”时工作流记录用户的学习次数,再随机生成学习时的单词卡片;当输入参数为“跳过”时直接随机生成单词卡片即可;生成英文例句的语音,将图片、语音和学习次数作为工作流的输出。 -
新建智能体,当对话内输入“跳过”和“已学习”时分别调用工作流并识别所需的参数。
二、实现方案
1、数据库批量导入数据
点击工作空间-资源库里就能找到我们所有已创建的资源了。

我们尝试直接将全部四级单词数据导入到数据库中。点击批量导入后,我们需要首先看看官方指定的该数据库的模板是什么样的。


所以我们需要上传同样格式的Excel文件才能批量导入。文件已经给大家准备好了,私信我直接下载即可。
不断点击下一步。


最后需要等待1分钟,然后刷新一下页面。
❝注意区分测试数据和线上数据,有时候返回为空可能是因为测试数据为空或者线上数据为空。
测试数据:用于测试工作流的数据。 线上数据:真实API调用,给其他用户调用时的数据。

2、修改数据库
我们修改表结构,新增一个字段即可(注意:“是否必要”需要点击“必要”)。

刷新下数据就会发现新增了“read_count”字段数据且自动变为0了。

3、修改工作流为随机生成卡片
3.1 新增“查询数据”节点
首先新增一个用于获取所有单词的节点(查询上限意味着最多只会获取1000个单词,可以人为修改)。

3.2 新增“代码”节点
然后我们新增一个代码节点,从获取的所有单词集合中,随机选取一个单词。

不会写代码也没关系,直接用AI帮你写一个。


AI写的代码报错的话直接用我这里的代码。
❝中间发现AI生成的该功能会导致每次随机获得的单词都一样,可以改为下方我这里的代码。
importrandom
asyncdefmain(args: Args)-> Output:
params = args.params
word_list = [item['word']foriteminparams['wordList']]
random_word = random.choice(word_list)
# 构建输出对象
ret: Output = {
"randomWord": random_word
}
returnret
3.3 修改“查询数据”节点
根据前面获得的随机单词,我们修改单词卡片工作流中的“查询数据”节点,让其获取指定的单词数据。

3.4 修改输入节点
修改输入节点的参数。
❝此处的变量名、默认值、变量描述都会作为大模型用于选取工作流的上下文,因此都需要尽可能描述清楚变量是用来做什么的。

3.5 新增“更新数据”节点
新增一个用于更新学习次数的SQL节点,直接用AI生成一个用于更新的SQL语句,然后再自己简单修改下(注意word后面变量需要用引号括起来)。

点击使用SQL并简单修改下SQL。UPDATEcet4_wordSETread_count = read_count +1WHEREword ='{{word}}'
3.6 新增“选择器”节点
添加一个选择器,当type为1时更新学习次数,否则直接进行下一步“获取所有单词”即可。

3.7 新增“文字转语音”节点
新增一个文字转语音的节点,用于获取英文例句的音频。

3.8 修改“输出”节点
最后输出后续需要使用到的变量,并点击发布。

可以先运行测试一下再发布也可以直接点击“坚持发布”。

最终整个工作流如下:

4、新建智能体
优化完工作流后,就要开始做能与用户交互的智能体了。
4.1 创建智能体
首先来到主页,点下左边这个“创建”的按钮。

页面中间就可以点击创建智能体了。至于旁边那个“创建应用”嘛,就略有复杂些了,本节还是先不讲了,贪多嚼不烂对吧~

填写智能体名称等内容,然后点击确认即可。
4.2 绑定工作流
创建完智能体后,突然冒出来一大堆看不懂的名词(吐槽下这产品体验也不行呐)。但是咱啥都别管,直接点工作流那的“+”,添加一个工作流。

在智能体内绑定我们已经发布的工作流(必须要发布才看得到哦)。

4.3 新增智能体的卡片
点击新建一个智能体回复卡片。

点击新增。

4.4 设计卡片
❝Coze的卡片设计是一个低代码平台,让用户能够用拖拉拽的方式可视化搭建起一个能够操作的卡片。
首先拖拽一个图片到卡片顶端,并配置卡片。由于前面工作流输出的画板大小为9:16,因此此处的图片也应该设置为9:16.

同样的方法拖拽一个音频和文本组件过来。


选择一个布局组件,删除一个“插槽”。(我们只需要两个按钮,因此需要删除一个)


❝这里记得两个插槽都需要点击,然后配置属性。
然后拖拽两个按钮进插槽,并配置按钮的名称。

❝同样记得两个按钮都需要点击,然后配置属性。
如此,就设计出了一张可以交互的卡片啦。
4.5 配置卡片变量
卡片设计完成之后,我们需要将工作流的输出变量绑定到卡片上,实现动态显示卡片内容。首先在卡片内新增一些需要显示的变量(默认值随便填即可)。

点击图片配置中右上角的x,然后选择创建的image变量,注意裁剪比例为9:16。(音频组件同理)


按钮的操作设置为给智能体发信息,这样就能点击按钮自动发消息了,实现更便捷的与智能体对话。


文本组件中当学习次数大于0时,显示用户已经学习的总次数。


4.6 发布卡片
最后点击发布,就做好了智能体卡片了。

4.7 绑定卡片到智能体
然后返回到智能体中,绑定卡片。


配置完成后,给智能体写上提示词让大模型能够调用对应的工作流,即可实现交互式智能体了。

# 角色
你是一个英语四级单词复习智能助手,能够辅助用户高效复习英语四级单词。
## 技能
### 技能 1: 处理特定指令
1. 输入“我要学习”时,调用{#LibraryBlockid="7543841774147305511" uuid="dBw7mgcxKN04o-r2yBdGh" type="workflow"#}word_card_generator{#/LibraryBlock#}工作流,originWord参数为空字符。
2. 当用户输入“跳过”或“已学习”时,调用{#LibraryBlockid="7543841774147305511" uuid="lzFXFpkprE1t-hGfMydqT" type="workflow"#}word_card_generator{#/LibraryBlock#}工作流进行处理。
## 限制:
- 仅处理与英语四级单词复习相关的内容,拒绝回答无关话题。
- 需按照既定流程处理用户输入,确保工作流调用准确无误。
三、效果演示
至此,这个对话类智能体就做完了。我们来测试一下~

点击“已学习”自动重新生成新的卡片。

点击“跳过”直接生成下一张图片。(此处我更新了画板样式)

大家学废了吗~
这个对没学编程的人来说还是有点复杂的,但能坚持到这里,你已经相当了不起了,给自己鼓个掌!
如果有不懂的可以关注我私信,免费解答。大家有什么想用扣子做的,也可以评论区打出来,说不定下一期文章就是你想做的。
往期文章
扣子(Coze)结合Seedream 4.0批量生成手办,这下实现手办自由了从0到1,用扣子(Coze)做个英语学习AI智能体(建议收藏)10分钟,教你从0到1用扣子(Coze)一键生成精美单词卡片
谢谢你看我的文章,也祝你在AI时代能找到自己真正想要的生活。都看到这里了,如果这篇内容对你有启发,辛苦大佬点赞/在看/分享支持一下,这对我真的很重要!!!需要更多AI工具和资料的,或是有什么相关问题也都可以链接我。
