扣子教程(2):创建你的第一个AI智能体
上一次我们讲了一下扣子的基本概念(参考我的文章《用coze来搭建第一个智能体,开启AI变现能力》),本次我们开始讲如何建立一个简单的AI智能体。该智能体的作用是当用户进入公众号后,收集用户的一些信息。
我们登录扣子平台(https://www.coze.cn)后登录到工作台,如下图所示

- 开始创建bot
点击左侧“创建bot”后打开如下的界面

我们输入Bot名称,Bot功能介绍(发布到bot市场后,别人可以根据介绍来了解你的bot是做什么用的),图标(可以上传自己的图标,或者点击生成按钮来生成一个图标)
Bot信息输入完成之后点击确认按钮进入下面的界面

此界面中分为多个功能区,作为Bot编排的主页面,这里面可以设置关于Bot的所有内容,包括人设(左侧区域)、Bot技能(中间区域)以及调试预览(右侧区域)。
- 模型的选择
本次我们解决的问题比较简单,主要是通过用户输入一些信息,并将信息保存起来,所以使用单“Agent模式”以及“豆包Function call模型”

如果需要使用其他模式及模型,可以点击红框位置进行调整
*Function call:字节跳动发布的大模型之一,旨在提供更加准确的功能识别和参数抽取能力。这种模型特别适合于复杂工具调用的场景,能够有效地处理和执行复杂的任务和操作。通过豆包·Function Call模型,用户可以更加精确地控制和操作各种功能,从而提高工作效率和准确性。
模型的设置,点击上图中红框内的豆包Function call模型打开模型设置

我们选择“精准模式”,携带上下文轮数“10”以及输出格式“文本”
该bot的作用是精准的收集用户数据,它不同于日常的聊天类应用,需要大模型更加精准的进行业务的处理,所以采用精准模式,其次,由于功能涉及多轮对话,所以需要携带10行上下文,你也可以根据需求填写具体的轮数。
- 人设与回复逻辑
使用自然语言来描述此Bot的主要作用,回复的语气以及工作的流程,我们使用之前讲过的结构性Prompt来定义人设及回复逻辑
# 角色
你是一个极具耐心且温柔的 AI 百宝箱公众号客服人员,专注于依照工作流程,为客户提供准确且细致的信息录入引导服务,包括收集客户昵称及对 AI 百宝箱的意见。
## 技能
### 技能 1: 收集客户信息
1. 当用户开始填写时,依序要求其填写用户昵称和给 AI 百宝箱提供的意见。
2. 若用户填写过程中有任何一项未完成,及时提醒其补充该项。
3. 当两项均填写完成,向客户发送以下内容:
=====
- 您的昵称:{昵称}
- 您的意见:{意见}
- 请您确认上述信息,确认后请回复“OK”,我们将完成此次信息填写,如果回复其他任何内容,将重新开始信息填报流程
=====
### 技能 2: 保存客户信息
1. 用户输入“OK”后,将{昵称}、{意见}存储到 tbl_user_info 表中,并回复用户“信息收集完毕,谢谢”
## 限制
- 务必严格遵循收集客户信息的流程,不得跳过任何环节。
- 仅处理与信息收集相关的事务,不回应其他无关问题。
- 创建数据表
由于我们需要把用户的数据保存起来,所以需要建立一个数据存储表格,我们点击如下按钮开始建立数据表,不用担心很难,它比建立一个excel表格更为简单

点击+后,开始选择自定义数据表


我们填入表名为:tbl_user_info **由于我们在前面的人设中,写明了需要存入tble_user_info表,所以起这个名字,如果需要其他名字,则需要同步改一下前面人设prompt处的表名
Table查询模式:多用户模式 **由于我们是需要发布到其他渠道的,所以需要使用多用户模式字段填入下面两个
nickname:昵称,字段类型string,选择必要(即此字段必须填写内容,否则无法保存)
oponion:意见,字段类型为string,选择必要(即此字段必须填写内容,否则无法保存)
完成后点击“保存”
- 设置开场白
设置开长白的目的是为了引导用户进行下一步操作,没有开场白则用户不知道下一步该做什么,开场白是一段写给用户看的话,如下
尊敬的用户,您好,请点击下面的“填报信息”按钮填写您的意见
- 快捷指令
点击快捷指令后面的+来添加一个快捷指令,快捷指令主要的目的是在界面上显示一个按钮,用户点击按钮就可以开始调用本bot并开始工作流


在上图中,我们填入了按钮的名称,在公众号中使用的指令,以及指令触发后的行为,这里我们使用了一个组件来显示用户需要输入的内容
- 开始调试
- 不使用快捷指令
我们首先使用指令进行一下调试,(指令:即在公众号聊天窗口输入一段特殊字符,来调用相关的功能,我们上面设定的指令是/oponion,在我们先使用/oponion来尝试调用)

我们按照bot的要求进行填写

我们特意填写个错误的意见,看看bot的反应

好了,我们填写一些正常的意见

可以看出来,bot已经认可了这个意见,我们先不输入OK,看看是否能重新调用信息输入,我们输入1来看看

我们重新输入昵称及意见

我们输入OK来完成信息录入流程

可以看到,整个过程运行完毕了,用户输入的内容已存入数据库。
- 使用快捷指令调试

点击“填报信息”按钮,弹出刚设置的组件

填写完成后点击组件下方按钮完成

我们回复OK进行确认

- 看看两次收集的结果
我们点击调试界面上的“Memory-已存数据库”按钮来查看存储后的数据库


可以看到我们两次录入的结果已经存入了数据库,如果数据不需要了,还可以点击下方的“清空数据”来删除这两条数据,注意:清空数据后数据就没有了,且恢复不了,如果是正式的数据,请确认后再清空。
- 发布
Bot我们已经做好了,下一步就是把内容发布到第三方平台,这里我选择发布到AI百宝箱的订阅号。
我们点击也有右上角的“发布”按钮


看到这里可以将bot发布到很多平台,包括扣子自己的bot商店,我们可以将做好的Bot发布到扣子Bot商店,这样所有扣子用户就都可以使用你的Bot了。那我们这次需要发布到微信订阅号,可以看到微信订阅号是未授权状态,我们点击红框后面的“配置”按钮

在上个界面中,我们填入AI百宝箱的AppID,此AppID需要在订阅号管理后台查找,我们打开微信的订阅号管理界面,在如下界面找到此AppID

上图中,基本配置-->公众号开发信息-->开发者ID(AppID)即是。
在扣子发布的配置页面,填写好AppID之后点击保存,进入授权页面

公众号管理员扫码后即可授权成功,授权后,选择“微信订阅号”进行发布

点击右上角的完成按钮即可完成发布

我们打开公众号来测一下,这个bot我将保留一段时间,大家有兴趣的也可以测试一下,

关注后,点击“发消息”进入消息页面进行测试,在公众号里,我们只能使用/oponion来调起bot。不能使用快捷指令

我们在微信里查一下数据,李四的数据已经保存起来了。

注意:因为数据库使用了多用户模式,所以在调试窗口无法查询到微信订阅号下的产生的数据,同样在微信渠道下,也无法查询出其他渠道产生的数据。
- 最后
OK,今天我们讲了如何编排一个简单的AI智能体来完成一些简单的功能,也算是入门教程,我们在这里了解了如何设置Bot的人设,如何添加数据库,如何添加快捷指令,如何调试,如何发布到其他平台等的基本情况。下一步,我们将讲解如何编制一个工作流,以及工作流中各节点的作用。请关注我,不错过任何一节精彩课程。其次,后续我将在AI百宝箱社区订阅号中设置不同的实验bot,大家有兴趣可以订阅看一下。