目录
一、前言
在目前AI市场中,MCP被很多人认为是AI在实际业务落地的一个重要支点,而AI智能体作为一个可以连接企业和个人用户的可落地应用,可以说是对于MCP的实际应用的升华,在智能体中利用对接各类外部组件的能力,可以让智能体变得很强大,在coze智能体中,提供了一个可以对数据进行持久化存储的功能,即coze数据库。利用数据库的能力,可以将智能体的作用更进一步放大,本文将详细介绍coze中的数据库的使用。
二、Coze 数据库介绍
2.1 Coze 数据库是什么
扣子的数据库功能提供了一种简单、高效的方式来管理和处理结构化数据,开发者和用户可通过自然语言插入、查询、修改或删除数据库中的数据。同时,也支持开发者开启多用户模式,支持更灵活的读写控制。官方文档:扣子
2.1.1 基本概念介绍
Coze 数据库是一个轻量级的 NoSQL 数据库,支持非结构化或半结构化数据存储,适合灵活的数据模型。其结构为:
数据集(Collection):类似数据库中的“表”,用于分类存储数据(例如用户配置、商品信息、对话记录等)。
数据项(Item):数据集中的单条记录,以键值对(Key-Value)形式存储,支持嵌套结构。
字段(Field):数据项中的具体属性,例如一条用户数据可能包含 user_id, name, preferences 等字段。
2.1.2 核心功能
Coze 的数据库其核心功能如下:
提供增删改查功能
通过 API 或 插件 实现数据的写入、更新、删除和查询。
支持条件筛选(如按字段值、时间范围等)。
自然语言查询:
用户可直接用自然语言描述查询需求(如“查找最近7天活跃的用户”),数据库会自动解析并返回结果。
代码集成使用
开发者可通过 JavaScript 代码片段编写复杂查询逻辑(例如聚合计算、数据关联)。
数据关联
支持跨数据集关联查询(类似 SQL 的 Join 操作),例如将用户表与订单表关联。
自动化触发
可设置数据库变更的监听事件,当数据变化时自动触发智能体的后续动作(如发送通知、更新缓存)。
2.2 Coze 数据库功能介绍
扣子提供了类似传统软件开发中数据库的功能,允许用户以表格结构存储数据。这种数据存储方式非常适合组织和管理结构化数据,例如客户信息、产品列表、订单记录等。扣子数据表支持单用户和多用户两种查询模式。
开发者指创建数据表的开发人员;用户指智能体的使用者。
多用户模式仅在工作流的数据库节点中生效。
关于单用户和多用户查询模式,官方也给出了详细的说明,对应了在实际应用中不同的使用场景,在下午的案例操作中会做详细的介绍
2.3 Coze 数据库使用场景
Coze 数据库具有下面的使用场景:
用户状态管理
存储用户个性化配置、对话历史、行为偏好等,实现跨会话的连续性体验。
动态知识库
存储业务相关数据(如产品信息、FAQ),供智能体实时查询并回答用户问题。
交互记录分析
保存对话日志,用于后续数据分析或优化智能体表现。
临时缓存
缓存API调用结果或复杂计算数据,提升响应速度。
三、Coze 数据库操作使用详解
接下来通过在AI智能体中进行集成演示如何使用Coze的数据库。
3.1 创建一个智能体
在项目开发一栏点击创建智能体
确认之后,跳转到下面的智能体编辑页面,在中间可以看到有一个数据库的选项,这里便是为智能体添加数据库的入口。
3.2 配置数据表
点击右侧的加号,添加表
跳转到下面创建数据表的页面,这里提供了2种添加数据表的放松,
自定义数据表,即根据自己的需要定义相关的表字段;
基于模板创建,系统为你创建的模板表,基于模板表进行开发;
基于模板的表效果如下:
即为使用者提供了一个快速创建数据表的参考模板
3.2.1 自定义数据表
在实际应用中,使用自定义数据表可以更好的满足业务的需要,基于上一步点击自定义数据表,在下面的表单页面中填写数据表名称+数据表描述,然后点击确认
来到下面的数据表编辑页面,可以看到coze默认内置了几个必要的字段,而且这几个字段是无法删除,接下来只需要基于这个表在下面追加新的字段即可
补充说明:
添加字段时,对字段的命名是有格式要求的,即需要遵守格式的规范
3.2.2 添加字段
按照要求在表中新增下面2个字段,即用户的提问和智能体的回答
点击保存完毕之后,在智能体编辑页面就能看到这个刚创建的数据表了
3.3 数据库使用与效果测试
接下来就需要在具体的智能体中使用上面的这个数据库了,如下,在之前的一个工作流中,新增一个数据库节点
在数据库节点配置中,点击右侧的加号
然后就可以看到前面那个自定义的数据表,点击右侧的添加
在新增的数据库节点中,核心的是需要设置字段,简单来说就是,你要往这个表中对应里面的字段插入数据,这些字段是从哪里来呢?从选择并设置字段那里可以看到,系统已经默认将表中的核心字段列举了出来,我们要做的就是给这2个字段添加变量值
question字段的值来自开始节点中的用户输入的问题;
answer字段的值来自大模型节点中的输出参数;
上一步配置完成后,将数据库节点引出到结束节点,然后点击试运行,试运行结束之后,可以看到在在上面创建的这个表中就能看到这条测试数据了。
3.4 在智能体中集成并写入数据库
3.4.1 插入数据效果演示
如下,在我们之前使用的一个智能体中,在左侧的技能编排页面中,引用了工作流,而上一步对这个工作流中增加了一个插入数据库的节点并进行配置,和效果测试,这样就可以进行完整的测试了,最终需要验证当我们向当前的智能体询问了满足技能5的问题时,是否能够按照预期将问题和回答插入到数据库中。
在智能体的对话框中,输入一个符合技能5要求的问题,等待智能体回答完毕问题
然后在资源库中,找到自己的创建的这个数据库,此时就能看到刚刚问的这个问题和回答插入的一条记录
3.5 在智能体中集成并查询数据
数据表中有了数据之后,接下来就可以在当前智能体,或者其他的智能体中消费和使用这些数据了,下面看具体的操作演示。
3.5.1 配置工作流
在本文开头的数据库智能体中增加一个查询上面这个表的工作流
在这个工作流中添加一个大模型节点,配置的提示词和输出变量如下图所示
3.5.2 添加数据库节点
在大模型节点后面增加一个数据库节点,需要注意的是,这里选择数据库下面的"查询数据"这个选项
在新增的查询数据节点的配置表单中,选择添加数据库
选择前面新增的那个数据库,点击右侧的添加
在这里会列举出这个表中的所有字段,你要做的就是选择你要查询的具体的字段,比如我这里选择question字段
选择了字段后,在查询条件中配置具体的查询条件即可,这里内置了很多种查询条件,比如等于/不等于,模糊匹配等,可以根据自己的需要进行选择使用
结束节点中的返回内容配置从上一个查询节点的返回结果即可
最后需要特别说一下,在大模型节点的系统提示词中,需要要求大模型最终解析的返回参数仅仅输出用户名,这样给到数据库节点去匹配数据表的记录时才能正常查询出来
3.5.3 试运行效果测试
以上都配置完成之后,点击试运行,输入一个包含用户名的问题,如下,可以看到,能够正常从数据表中查询出一条记录
四、写在文末
本文通过在Coze中使用操作的方式详细演示了数据库从配置到使用的完整过程,Coze数据库作为一个可以持久化数据组件,这对于在AI智能体中,再次提升了处理一些复杂业务场景下的能力,可以说能够大大拓展智能体的业务边界,更多关于数据库的使用,可以基于此基础上继续深入研究,本篇到此结束,感谢观看。