DB-GPT开源项目论文解读

DB-GPT开源项目论文解读 (qq.com)

三篇文章的内容分别是1提出了一种开源的智能数据库对话系统、系统化方法、训练和推理策略;2提出了一个开源的Python库DB-GPT;3对各种开源大模型进行了系统的Text-to-SQL基准测试

DB-GPT:通过私有大型语言模型增强数据库交互

英文:DB-GPT: Empowering Database Interactions with Private Large Language Models

文章主体部分:2系统设计、3模型和训练、4实验

2系统设计

多源RAG:知识构建(多维embedding、神经编码器、倒排索引和图索引)、知识检索(嵌入检索-基于余弦相似度)、学习嵌入和检索(编码器-Multilingual-E5-base )、自适应情景学习ICL和LLM生成

部署推理、多代理策略、DB插件都说的很笼统

3模型和训练

Text-to-SQL微调的模型架构、数据和训练

RAG编码器的模型架构、数据和训练

部署和运行:知识库和web UI、部署机器配置

4实验

Text-to-SQL评估

Spider数据集,评价指标execution accuracy(EX),经过微调后Qwen-7B/14B/Baichuan2-7B/13B优于原大模型

RAG评估

两个问答数据集:DatabaseQA 和 FinancialQA。前者构成:三个代表性数据库系统 1,000 个公开教程 PDF;后者构成:从研究机构抽样 1,000 个文档。对于每个数据集,构建了 100 个用于测试的问题,由专家标注难度。

评价:三个专家对每个响应进行评分,评分范围为 0-5

测试模型:Qwen、Baichuan、ChatGLM-Turbo、ChatGPT3.5

测试结果:ChatGPT-3.5 是 DatabaseQA 数据集上的赢家,而 ChatGLM2-7b 在 FinancialQA 数据集上实现了最佳性能

SMMF 评估

测试模型: Qwen 和 Baichuan

指标:第一个标记延迟 (FTL)、推理延迟 (IL)、吞吐量THROUGHPUT

结论:提高并发用户数量,对比HF和vLLM 框架,vLLM性能优

论文亮点:提出了一种开源的智能数据库对话系统、系统化方法、训练和推理策略

DB-GPT演示:基于大语言模型的下一代数据交互系统

通用数据交互系统的三个挑战

1.设计支持数据库交互的多代理框架

2.支持灵活排列多代理的声明性表示语言

3.私有LLM数据交互的设计

解决方案

1.提出了DB-GPT中的多代理框架,自动化了数据库交互任务,用户输入目标,自动拆解任务并执行

2.提出了一种名为代理工作流表达语言(AWEL)的声明性语言,用几行代码或在界面中拖放即可构建代理工作流

3.提出了面向服务的多模型管理框架(SMMF),支持部署私有LLM

多代理框架:

案例-->构建销售报告并从至少三个不同维度分析用户订单

实现:首先调用一个计划器(PlanManager)来生成针对任务量身定制的四步策略,然后,三名专门负责创建数据分析图表的代理(DataScientist)继续生成销售报告,另一个代理(Reporter)专门负责聚合这些图表,收集、组织并在前端界面上呈现

与MetaGPT和AutoGen相比,DB-GPT的多代理框架将其代理之间的整个通信历史存档在本地存储系统中,从而显著提高了代理生成内容的可靠性

协议层:采用大数据处理中的Apache Airflow概念,有向无环图编排工作流程,将每个代理建模为一个不同的操作员,使用AWEL使其能够支持各种任务,包括流处理、批处理和异步操作

DB-GPT Hub的组件:用于封装文本到SQL的微调过程,可使用开源大模型及Text-to-SQL数据对来优化对应的Text-to-SQL LLM

其他内容与项目文档基本一致

论文亮点:提出了一个开源的Python库DB-GPT

DB GPT Hub:面向由大语言模型支持的开放式Text-to-SQL基准测试

背景:本质上讲,文本到SQL可以被描述为一个序列到序列的建模任务,数据库模式和自然语言问题被转换为顺序输入,而所需的SQL查询作为顺序输出目标。该领域最新进展涉及使用LLM通过上下文学习(ICL)技术生成准确的SQL查询

主要内容:2.背景问题公式化、3.基准设计和计算资源、4.实验

2背景问题公式化

通用设置

数据库信息 D= {S,Kp,Kf} ,其中S是表Tk的集合, S ={T1,T2,...Ts...}.主键Kp,外键Kf。

每个表Tk有表名Nk,列名 cj 和列数据类型 tj,Tk = {Nk,(ck1,tk1),(ck2,tk2)...}

输入:自然语言问题q、数据库信息D

输出:目标sql语句s

建模:考虑到数据可能来自不同的数据库,将数据组成一个三元组M={(qi,si,Di)},i为问题的索引

基于提示和微调的设置

包括:零样本/少样本提示和微调、微调、参数高效微调-PEST

零样本/少样本提示和微调:目标是最大化从LLM生成正确SQL si的概率:

微调:将具有文本的模型调整为SQL数据集,从输入序列生成SQL,其中包含一组序列化的输入qi和相应的SQL输出si对。微调的目的是尽量减少经验损失

参数高效微调-PEST:仅微调少量(额外)模型参数而不是所有模型参数,使大型预训练模型能够有效地适应各种下游应用。两种最常用的技术是LoRA(冻结预训练,模型权重和在每个变换器块中注入可训练层-秩分解矩阵)及其量化版本QLoRA

下述实验均采用LoRA和QLoRA

3.基准设计和计算资源

数据集:Spider、BIRD

查询-响应对 构建:使用的文本响应提示(TRP)格式进行训练、开发和测试,TRP包含查询语言、对应的sql语句,提示符开头添加了表结构(schema),即将模式和数据库描述作为指令集成到提示中

指标:精确集匹配精度(EM)和执行精度(EX),EM测量匹配的SQL关键字,EX比较执行输出,越高越好,主要使用EX

基础模型:GLM、Qwen、Baichuan、Llama

统一设置:最大上下文长度2048、512个token用于生成响应、温度0

基准测试流程

4.实验

Spider/BIRD数据集EX指标:经过调优的CodeLlama系列,其基础模型已经针对代码生成和填充进行了优化,在这两个数据集上都表现出了比其他竞争对手更好的性能;PEST调优后大模型的性能明显优于基础模型

论文亮点:对各种开源大模型进行了系统的基准测试

参考资料

DB-GPT: Empowering Database Interactions with Private Large Language Models

Demonstration of DB-GPT: Next Generation Data Interaction System Empowered by Large Language Models

DB-GPT-Hub: Towards Open Benchmarking Text-to-SQL Empowered by Large Language Models

  • 7
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值