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/文件夹内

05-04
### Db-GPT 技术概述 Db-GPT 是一种基于大语言模型(LLM)的技术框架,专注于数据库操作、自然语言处理以及插件扩展能力。它不仅提供了强大的 Text2SQL 能力,还支持多种插件集成和跨平台交互功能[^1]。 #### 基础概念 Db-GPT 的核心目标是通过微调预训练模型实现更高效的 SQL 查询生成能力,并提供灵活的插件机制以适配不同的业务场景。其主要模块包括但不限于: - **DB-GPT-Hub**: 提供持续改进的 Text2SQL 效果,适用于复杂查询需求。 - **DB-GPT-Plugins**: 支持 Auto-GPT 兼容的插件生态,便于开发者快速接入第三方服务。 - **DB-GPT-Web**: 实现多端交互式的前端界面设计,方便用户实时调试与监控。 #### 部署指南 对于希望本地化运行 Db-GPT 的用户而言,可以参考以下方法完成环境配置: ##### 下载依赖模型 如果选用 Vicuna-13B 模型作为底层支撑,则需先获取该模型文件并存储至指定路径下。具体命令如下所示[^2]: ```bash cd /root/autodl-tmp/models git lfs clone https://huggingface.co/Tribbiani/vicuna-13b ``` 注意此过程可能占用较大磁盘空间,请提前确认设备容量满足条件。 ##### 启动服务 假设已完成必要组件安装之后,可通过官方文档进一步学习如何启动 Web 应用程序以及其他高级特性设置[^3]。 --- ### 示例代码片段展示 以下是简单的 Python 接口示例用于演示如何连接已部署好的 Db-GPT 服务器实例: ```python import requests def query_db_gpt(prompt): url = "http://localhost:8000/api/generate" payload = {"text": prompt} response = requests.post(url, json=payload).json() return response['result'] if __name__ == "__main__": result = query_db_gpt("列出销售额最高的前五名产品") print(result) ``` 以上脚本实现了向 Db-GPT 发送请求并将返回的结果打印出来。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

灰哥数据智能

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值