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

一、基础问答

进入DB-GPT后,再在线对话默认的基础功能就是对话功能。这里我们可以和使用通义千问、文心一言等在线大模型类似的方法, 来和DB-GPT进行对话。

但是值得注意的是,DB-GPT的输出结果是在内置提示词基础之上进行的回答,也就是说在DB-GPT中我们传输给模型任何问题,都会经过提示词模板修改后传输给底层模型。

可以在探索广场中找到Chat Normal功能

二、知识库问答

Chat Knowledge(知识库对话)借助RAG实现私有知识库问答,用户可以自定义传输企业业务说明文档、专家文档或数据字典等信息,并围绕相关问题进行问答,从而辅助用户快速了解企业业务,或辅助进行业务决策等。

知识库问答的操作主要分为以下几个步骤:

  • 创建知识库
  • 上传文档知识
  • 等待文档切片+向量化
  • 开始知识库对话

下面对这几个步骤进行逐一说明

1、创建知识库

应用管理内切换到知识库tab页,点击创建知识库

填写知识库基础配置:

  • 知识库名称:起一个贴切知识库内容的名字
  • 存储类型:有Vector Store、Knowledge Graph、Full Text
  • 领域类型:目前只有Normal
  • 描述:写一下知识库简要的描述

这里的存储类型Vector Store表示向量存储、Knowledge Graph表示知识图谱存储、Full Text表示全文存储。

2、上传文档知识

接着在2 知识库类型中,根据自身的文档类型选择进行文档进行上传。

目前支持的文档类型有:

这里以上传本地word文档为例子,上传界面如下:

我们上传的文档其实是上传到DB-GPT运行的服务器上(例如公司服务器),本质上 其实还是"本地运行",并不会存在数据泄露的风险。具体每个知识库文档地址为: /root/autodltmp/DB-GPT/pilot/data

3、等待文档切片+向量化

接下来回到DB-GPT知识库创建页面,可以继续选择文本切分方式,除非特殊情况,推荐选择默认的自动切分方法,然后点击Process即可。

DB-GPT支持下面四种切分方法:

  • 自动切片
  • chunk size
  • paragraph
  • separator

(1)自动切片

不需要设置任何分片参数

(2)chunk size

通过设置chunk_size、chunk_overlap两个参数来控制切分。

chunk_size:对输入文本序列进行切分的最大长度。

chunk_overlap:相邻两个chunk之间的重叠token数量。为了保证文本语义的连贯性,相邻chunk会有一定的重叠。chunk_overlap控制这个重叠区域的大小。

(3)paragraph

通过设置分隔符来区分自然段

查看文档切分进度

可以查看文档的具体切分结果

4、开始知识库对话

对话会默认载入知识库基本背景,比如当我们输入你好,你擅长什么?时,回答会围绕DBGPT的知识库相关内容进行问答

查看DB-GPT后台的处理情况

DB-GPT实现的私有知识库问答流程远比最热门RAG之一的LangChain-CahtChat复杂,在后续解读DB-GPT项目源码的文章会介绍

三、ChatExcel功能

Chat Excel(Excel对话)可以围绕某个Excel数据文件进行快速分析,允许用户上传数据文件并直接对其进行分析。

在下载的DB-GPT源码目录DB-GPT\docker\examples\excel下,有一个example.xlsx的示例excel文件。

该数据集数据集包含关于各种细分市场、国家、产品和日期的销售交易信息。包括折扣档次、销售单 位、定价、总销售额、成本、利润,以及交易的月份和年份等详细信息,基本情况如下:

上传了文件之后,发现系统会自动创建一段总结分析。

这里其实是在默认提示词模板作用下,自动对数据文件进行的分析。另外返回的结果是英文,也跟系统的默认提示词有关。后续解读DB-GPT项目源码的文章会介绍如何设置并修改这些提示词模板。

接下来,我们可以进一步提问题继续分析。

例如输入分析不同产品在不同国家的销售趋势,找出一些在某些国家销售势头好的产品。

分析结果如下:

在SQL页会看到DB-GPT也会将分析转换为SQL语句。

从SQL结果来看,很好得理解了上面问题的分析意图。

SELECT
  Country,
  Product,
  SUM(Sales) AS TotalSales
FROM
  excel_data
GROUP BY
  Country,
  Product
ORDER BY
  Country,
  TotalSales DESC;

上传完的excel数据文件数据,也保存在服务器的/root/DB-GPT/pilot/data/文件夹内

相关推荐
是我知白哒11 分钟前
lxml提取某个外层标签里的所有文本
前端·爬虫·python
测试老哥22 分钟前
Python自动化测试图片比对算法
自动化测试·软件测试·python·测试工具·程序人生·职场和发展·测试用例
爱数学的程序猿23 分钟前
Python入门:1.Python介绍
开发语言·python
檀越剑指大厂2 小时前
【Python系列】Python中的`any`函数:检查“至少有一个”条件满足
开发语言·python
程序员黄同学3 小时前
如何使用 Python 连接 MySQL 数据库?
数据库·python·mysql
I_Am_Me_3 小时前
【JavaEE初阶】线程安全问题
开发语言·python
张叔zhangshu3 小时前
TensorFlow 的基本概念和使用场景
人工智能·python·tensorflow
运维&陈同学3 小时前
【Elasticsearch05】企业级日志分析系统ELK之集群工作原理
运维·开发语言·后端·python·elasticsearch·自动化·jenkins·哈希算法
新手小袁_J4 小时前
实现Python将csv数据导入到Neo4j
数据库·python·neo4j·《我是刑警》·python连接neo4j·python导入csv·csv数据集导入neo4j
清风ꦿ4 小时前
neo4j 图表数据导入到 TuGraph
python·neo4j·knowledge graph