超级干货:0基础也可以学会的AI agent搭建!你的第一个bot教程

jyc
0 评论 334 浏览 0 收藏 14 分钟

自从大模型开启智能化之后,各大厂家都开始做自己的AI Agent,毕竟这好像是一个比较不错的应用方向和变现模式。这篇文章,我们就来和组综合学习一下,如何从0到1打造一款自己的bot。

本节开始,我们创建一个实战案例:图书管理工作流。

温馨提示:本文内容很多,涉及贯穿了搭建扣子应用的很多知识。如果学懂本文,你可以完全掌握了扣子搭建的原理,话不多说,上干货。😊

一、流程分析设计

图书管理工作流的作用是:通过判断图书管理员的自然语言指令的意图,来执行对应的操作。

例如:分析管理员指令,其目的是向数据库增加一本书、或是删除一本书,还是检索当前数据库中所有的图书。

我们期望的效果是:当图书管理员输入类似“请帮我查询有哪些书籍”的时候,工作流就返回当前数据库所有的图书。

当输入类似“向数据库录入XXX(书名)”的时候,就向数据库添加一本书。当输入删除指令的时候,就删除一本书。

通过分析,得出结论

  1. 如果要分析用户的意图,我们需要有一个理解用户语义的功能节点,这时候就需要我们的 大模型节点 出场了。(工作流中使用的节点在教程中也都有详细示例+讲解)
  2. 判断完管理员意图后,我们具体要执行哪个操作,是查询、添加,还是删除,这里有一个选择判断的过程,那当然得用 选择器节点 去做这个工作。
  3. 因为我们需要用数据库来存储书籍列表,数据库节点 肯定是必不可少的了。

经过分析,我们需要用到三个类型的节点: 大模型节点 、选择器节点、选择器节点。
接下来我们就来使用这些节点来正式开始创建。

二、创建Bot

1. 初始化Bot

通过之前课程的学习,我们知道,如果要在工作流中使用数据库节点,一定要先在Bot中创建一个对应的数据库。

所以首先,我们要创建一个Bot,然后在Bot中建立一个数据库。

2. 创建数据表

点击 + 按钮,创建一个数据表。

3. 自定义数据表

4. 添加字段

到此步骤,数据表就创建完成了,接下来开始创建工作流。

三、创建工作流

1. 初始化工作流

创建完Bot之后,我们来进入工作流管理页面,创建工作流。
点击 创建工作流 按钮。

2. 填写工作流信息

3. 确定工作流所用节点

这里很关键:我们先把需要用到的节点先加到视图里,然后再分别对节点进行具体的设置。

从上文得知,需要用到:大模型节点 、选择器节点、选择器节点。

为了方便接下来大家的操作,做到心中有数,我们先把搭建好的结构到放这里,让大家对结构有一个大体的了解,这样之后搭建起来会更容易操作。

现在正式开始向工作流中加入节点。

4. 添加大模型节点

大模型节点主要有两个作用:

  • 一个是分析用户语义,判断用户是希望添加、删除还是查询书籍。
  • 另一个作用是提取出书籍名称。

例如当图书管理员给的指令是:“添加一本《三国演义》”,那这时候大模型需要提取两个关键信息。一个是 添加,一个是《三国演义》的书籍名称

那么接下来我们先添加两个大模型节点,分别用来返回 图书名称操作类型。(正常情况下,一个大模型节点也是可以搞定的,返回一个数据对象即可,这里大家知道就可以了。为了更直观的演示流程,这里还是用两个大模型节点来演示。)

节点结构如下:

第一个是提取书名的大模型节点,它的前置节点是 开始节点,直接引用开始节点中query参数,用来获取用户的自然语言指令。

因为要提取书名,所以提示词这里我们直接写:提取query中的书名 即可。这里注意,query对应的就是输入参数名。

详细配置:

第二个大模型节点用来分析用户意图,所以输入参数这里还是获取用户的query。

如果用户的意图和添加有关:则返回1 ;

如果和删除有关,则返回2;

否则返回3。

所以提示词可以这样写

详细配置:

最后输出一个type变量,值为1,2或3。

5. 添加选择器节点

选择器节点的前置节点是 大模型-操作类型 节点。选择器节点通过获取type的值来判断具体执行哪个操作。

这里注意要用到两个选择器节点才能做到type的3个值的判断,因为一个选择器节点只能判断是和否,所以我们要再借助一个选择器节点。

整体结构如下:

选择器-1 配置:

选择器-2配置:

6. 添加数据库节点

如之前的教程所讲,数据库节点是用来操作数据库的。
通过之前type的三个值,我们知道,对数据库要有三个操作:查询,添加和删除。

所以我们要添加三个数据库节点,分别用来查询,添加和删除。

对数据库的设置我们之前也讲过,如果想学习,关注即可获取免费教程学习。

设置数据库添加节点参数:

使用自动生成SQL功能生成

使用SQL后,我们还需要修改一下SQL的变量,要把‘新添加的书换成’输入参数名

替换后正确的配置是这样的:

同样的方法修改 数据库删除节点 参数配置。

同样的方法修改 数据库查询节点 参数配置,注意图中所示,两个查询的name字段要对应。

7. 结束节点设置

结束节点 的前置节点是 数据库查询节点。我们最后希望的是:不管用户的意思图是查询添加还是删除,最后我们都把当前数据库中的所有图书检索出来。

所以结束节点输出变量这里,要引用前置节点中outputList这个变量,这个变量一个是数组对象,简单说就是一个图片列表。

到这里为止,我们就把所有的节点都设置完成了,接来我们来调试一下,看看是否符合我们的预期要求。

8. 调试工作流

1)测试添加一本书

在工作流中点击试运行,输入:增加一本三国演义。然后选择我们之前创建好的Bot:图书管理助手。点击 运行 按钮。

可以看到,是按照预期走的 添加 的流程:

最终结果,可以看到《三国演义》被加到数据库中了。

再增加一本《围城》

查看结果:

可以看到《围城》已经被成功添加了,并显示了当前图片列表。

2)测试删除一本书

我们把之前的添加的《三国演义》删除。点击 运行 按钮。

可以看到,按照预期,《三国演义》被删除了,并显示了当前图片列表,只有一本之前添加《三国演义》,结果没有问题。

那么,到此为止,我们的图书管理工作流就调试完成了。接下来,我们把这个工作流引入到Bot中。😊

四、发布工作流

在使用工作流之前,我要发布一下。

五、引入工作流

接下来把工作流引入到Bot中进行使用

找到我们已经创建好的图书管理助手Bot。

点击 + 引入工作流

选择 WorkFlow_Books 工作流

编排 人设与回复逻辑

六、调试BOT

添加一本书:

提示图书已经成功被添加了。

那么接下来测试一下,图书是否确实加入成功了。

可以看到,《三国演义》图书确实成功加放到了数据库中,说明我们的工作流正确无误。

七、发布BOT

调试好以后,我们接下来就可以把BOT出布出去,让大家来使用了。

自动生成开场白,点击 确认 按钮。

选择一下想发布的平台,我这里选择的是发布到扣子商店,然后点击 发布 按钮。

提示审核中,然后点击 完成 按钮,一分钟左右就审核完成了。

好了,到这里,我们终于把Bot和工作流的全部流程学习完了,希望大家在本文中能有所收获。😊

本文由 @jyc 原创发布于人人都是产品经理。未经作者许可,禁止转载

题图来自Unsplash,基于CC0协议

该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
海报
评论
评论请登录
  1. 目前还没评论,等你发挥!