DB-GPT系列(五):DB-GPT六大基础应用场景part2

前面文章《DB-GPT系列(四):DB-GPT六大基础应用场景part1》讲了DB-GPT六大基础应用场景中的基础问答、知识库问答、Chat Excel功能,这篇文章继续介绍剩下的3个基础应用场景:Chat DB、Chat Data、Chat Dashboard。

一、Chat DB

DB-GP中的Chat DB数据库对话功能,是通过自然语言对话,实现数据库元信息查询、SQL代码生成。但是需要注意的是,生成的SQL代码不会实际运行。

我们通过以下几步来实际看下Chat DB功能:

  • 安装数据库服务
  • 导入示例数据
  • 创建数据库连接
  • 数据库对话

1、安装数据库服务

下面以mysql数据库安装为例子,只要简单几条命令,就可以安装好数据库。

如果主机本身有数据库服务,或者有现有的可连接的数据库,就可以直接创建数据库连接,跳过"安装数据库服务"、"导入示例数据"这两步。

主机输入shell命令:sudo apt update

该命令是更新Ubuntu的包列表

主机输入shell命令: sudo apt install mysql-server

该命令是安装MySQL服务。

安装完成如下图。

继续输入命令开启mysql服务,然后连接mysql服务:

sudo service mysql start  
mysql

输入以下命令,设置mysql的初始root账户和初始密码。

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
FLUSH PRIVILEGES;
exit;

以初始root账户密码重新登录mysql

mysql -uroot -p123456

2、导入示例数据

在DB-GPT的目录下有一些示例sql语句,可以进行示例数据的导入

具体目录位置:DB-GPT/docker/examples/sqls

这里以导入 /case_1_student_manager_mysql.sql 为例

cd /root/DB-GPT/docker/examples/sqls
mysql -uroot -p123456 < case_1_student_manager_mysql.sql

查看是否导入成功

# 登录mysql
mysql -uroot -p123456
# 查看数据库是否创建成功
show databases;
# 查看表是否创建成功
show tables;
# 切换到case_1_student_manage数据库
use case_1_student_manage;
# 查询表students是否成功导入数据
select * from students;

3、创建数据库连接

在DB-GPT主页上,点击"应用管理"导航,选择"数据库"tab页,选择MySQL数据库然后点击"Create Now"来创建数据库连接。

需要填写数据库名称、密码和端口号等信息。创建成功后,DB-GPT就能与指定的数据库建立连接,实现数据库对话功能。

4、数据库对话

数据库连接成功后,就可以开始测试ChatDB功能了。

通过ChatDB对话,可以查询数据库中的表元信息、自动编写SQL语句、进行SQL查询优化等。

输入问题数据库里面有哪些表?

再输入问题怎么查具体某个学生的成绩?

可以看到,SQL语句并没有去实际执行。

二、Chat Data

前面的ChatDB专注于获取数据库中信息,而ChatData则是和数据库中的实际进行对话,这是两者的最大差异。

在DB-GPT主页上,点击"探索广场"导航,选择"ChatData"进入对话。

再输入前面Chat DB同样的问题怎么查具体某个学生的成绩?

可以看到提示SQL执行失败的错误,实际SQL会连接到SQL进行执行。

查看后台的出错信息,因为对话的问题中没有指定具体查询的是哪个学生的成绩,所以SQL的where条件是"students.student_id = ?",因此SQL执行出错。

因为DB-GPT缺乏debug功能,同时受限于SQL代码环境(比如:各种SQL方言),很多更加灵活的数据清洗和可视化操作在默认情况下无法顺利完成。

后续文章将会介绍怎么改造DB-GPT完成SQL debug的功能。

输入问题怎么查学生张三的具体成绩?

可以看到SQL正常执行,同时Data页显示了整齐的数据结果表格。

输入问题请分析不同科目的平均成绩,并用柱状图展示。

可以看到SQL正常执行,不单只Data页显示了整齐的数据结果表格,Chart页页显示了对应的柱状图。

三、Chat Dashboard

Chat Dashboard仪表盘对话可以围绕某个数据库,针对某个问题进行多维度分析与可视化展示。

输入问题请分析各个同学的学习情况

可以DB-GPT自动进行了不同维度的分析,结果中也有各种图表的自动生成。

在"Editor"tab页,可以看到每一个分析版块对应的具体SQL语句。

后台可以看到,DB-GPT自动进行的一步步思维链的过程

整个分析思维链过程,可以自定义prompt进行改造优化,后续prompt管理与优化的文章中将会详细介绍。

也看到有功能对报告进行评分。

相关推荐
远歌已逝1 小时前
管理Oracle实例(二)
数据库·oracle
日月星宿~1 小时前
【MySQL】summary
数据库·mysql
爱吃土豆的程序员1 小时前
在oracle官网下载资源显示400 Bad Request Request Header Or Cookie Too Large 解决办法
java·数据库·oracle·cookie
睿思达DBA_WGX1 小时前
Oracle 11g rac 集群节点的修复过程
数据库·oracle
尘浮生1 小时前
Java项目实战II基于微信小程序的移动学习平台的设计与实现(开发文档+数据库+源码)
java·开发语言·数据库·spring boot·学习·微信小程序·小程序
埃菲尔铁塔_CV算法2 小时前
深度学习神经网络创新点方向
人工智能·深度学习·神经网络
艾思科蓝-何老师【H8053】2 小时前
【ACM出版】第四届信号处理与通信技术国际学术会议(SPCT 2024)
人工智能·信号处理·论文发表·香港中文大学
Leo.yuan2 小时前
数据量大Excel卡顿严重?选对报表工具提高10倍效率
数据库·数据分析·数据可视化·powerbi
Runing_WoNiu2 小时前
MySQL与Oracle对比及区别
数据库·mysql·oracle
秀儿还能再秀3 小时前
机器学习——简单线性回归、逻辑回归
笔记·python·学习·机器学习