当前位置: 首页 > article >正文

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

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


http://www.kler.cn/a/395202.html

相关文章:

  • 【Linux】Linux 权限的理解
  • 整理iPhone空间:iphone怎么删除相簿
  • UE5 UE4 播放视频没有声音解决
  • 蓝桥杯c++算法学习【2】之搜索与查找(九宫格、穿越雷区、迷宫与陷阱、扫地机器人:::非常典型的必刷例题!!!)
  • Tomcat 和 Netty 的区别及应用场景分析
  • Elasticsearch 8.16:适用于生产的混合对话搜索和创新的向量数据量化,其性能优于乘积量化 (PQ)
  • pyinstaller+upx给python GUI程序添加自定义图标
  • 驾校增加无人机培训项目可行性技术分析
  • 本地搭建你的私有网盘:在Ubuntu上使用Portainer CE安装NextCloud
  • 基于springboot+vue实现的高校电子图书馆的大数据平台 (源码+L文+ppt)4-013
  • Jmeter中的配置原件(四)
  • 机器学习周报(transformer学习1)
  • PG数据库 数据库时间字段 开始时间和结束时间,判断和查询条件的开始和截止时间存在交集,SQL如何编写
  • vue请求数据报错,设置支持跨域请求,以及2种请求方法axios或者async与await
  • golang反射函数注册
  • (十六)JavaWeb后端开发——Spring框架常见注解
  • 【C++】C++基础知识
  • 翼鸥教育:从OceanBase V3.1.4 到 V4.2.1,8套核心集群升级实践
  • 使用 Python 向 IP 地址发送字符串 —— TCP 与 UDP 协议详解
  • 蓝桥杯——数组
  • kafka 的一些问题,夺命15连问后续
  • 1111111111待修改--大流量分析(三)-BUUCTF
  • MySQL推荐使用Docker部署吗?
  • FFmpeg的基本结构
  • Vue3 -- 环境变量的配置【项目集成3】
  • StructuredStreaming (一)