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管理与优化的文章中将会详细介绍。

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

相关推荐
CoderIsArt3 分钟前
基于 BP 神经网络整定的 PID 控制
人工智能·深度学习·神经网络
编程修仙11 分钟前
Collections工具类
linux·windows·python
开源社16 分钟前
一场开源视角的AI会议即将在南京举办
人工智能·开源
FreeIPCC17 分钟前
谈一下开源生态对 AI人工智能大模型的促进作用
大数据·人工智能·机器人·开源
芝麻团坚果27 分钟前
对subprocess启动的子进程使用VSCode python debugger
linux·ide·python·subprocess·vscode debugger
机器之心35 分钟前
全球十亿级轨迹点驱动,首个轨迹基础大模型来了
人工智能·后端
z千鑫36 分钟前
【人工智能】PyTorch、TensorFlow 和 Keras 全面解析与对比:深度学习框架的终极指南
人工智能·pytorch·深度学习·aigc·tensorflow·keras·codemoss
EterNity_TiMe_36 分钟前
【论文复现】神经网络的公式推导与代码实现
人工智能·python·深度学习·神经网络·数据分析·特征分析
如意机反光镜裸42 分钟前
如何快速将Excel数据导入到SQL Server数据库
数据库
Stara051144 分钟前
Git推送+拉去+uwsgi+Nginx服务器部署项目
git·python·mysql·nginx·gitee·github·uwsgi