大模型时代下的数据库交互方式和挑战

释放双眼,带上耳机,听听看~!
本文讨论了大模型时代下数据库交互方式的变化,数据库领域的机遇和挑战,以及如何保护数据安全与隐私。

前言

非常荣幸在WAIC的舞台上,分享开源的DB-GPT项目, 在大会现场也感受到大家对于DB-GPT项目的热情,现场也产生了很多有意义的讨论,同时对于未能去现场的社区同学,也强烈期望我们能分享当天的内容,因此我对当日的分享做了一些整理,希望对DB-GPT感兴趣的同学能有所收获。

背景

1.1 交互方式的变化

大模型出现之后,尤其随着ChatGPT的发布,我们看到了交互方式的变化。 一种全新的交互理念正在潜移默化的影响着我们日常的生活。 互联网时代以点按钮为主的交互方式,逐渐在被以自然语言为媒介的交互方式所替代。 

如图所示,我们可以看到,新的应用入口已经变成了ChatUI, 在整个ChatUI之下是通用大语言模型,如ChatGPT、通义千问、文心一言、Bard等。

大模型时代下的数据库交互方式和挑战

在通用大语言模型下, 是基于LLM之上构建的垂直/领域模型,这些垂直或者领域模型来负责跟你的私有数据、私有环境进行交互。 我们判断在未来的发展方向上, 通过私有化领域模型来与私有数据和环境交互,通过一句自然语言来完成任务交付的方式,会成为主流。 我们称之为Chat2Delivery(C2D)

1.2 大模型时代,数据库领域的机遇

大模型时代下的数据库交互方式和挑战

大模型时代,数据库领域有哪些新的机遇? 数据库领域发展这么多年, 基本已经形成了相对固定的格局。 基本是一超(Oracle),多强(数仓、云、开源)、散点爆发的态势。随着大模型的出现, 新的时代到来了, 在新的时代里,产生了非常多的新需求,比如向量数据库, 除此之外,还有非常多的未被挖掘的用户需求,数据库作为一个相对专业的工具,如果通过自然语言的交互方式,降低使用门槛,让几亿用户的需求拓宽到几十亿。 伴随着这样强烈的需求与愿景驱动,我们需要新的标准、新的产品来满足这些新时代需求。 

1.3 大模型时代数据库领域的挑战

大模型时代下的数据库交互方式和挑战

有机遇就必然会有挑战。 那大模型时代,我们会遇到哪些新的挑战?大模型时代,无疑是一个全新的环境, 同时大模型与以往我们接触的任何工具系统都不同。 大模型所具备的推理、生成、逻辑等能力,更像是一个智能体,我们需要通过全新的思维方式,全新的思想与之交流、碰撞。 同时在构建应用时,也需要充分的挖掘、调动大模型的潜能,来做更多事情。 

当然, 全新的模式下,肯定会存在新的问题。 大模型一定程度上是受数据驱动的, 也就是说大模型整个发展、迭代过程是高度依赖数据,需要跟数据频繁打交道的, 同时目前针对大模型在数据安全方面的管控还非常初级。 这要求我们在实际业务落地场景中,需要高度关注数据安全、合规、隐私等各种问题与挑战。 除此之外,在大模型的落地过程当中, 在垂直领域,还有非常多的困难需要去克服, 这个过程当中产生了非常多新的问题。 

关于新竞争, 在互联网时代,出现了非常多的跨界融合与竞争。 AIGC时代,竞争的格局又发生了非常大的变化。 比如最近在垂域模型领域比较火热的研究方向有法律大模型,医药大模型。 这完全是跨领域、跨专业的竞争, 试想一下,几个工程师通过数据与算法,就可以撬动整个律师、医疗行业的知识,这种新的竞争格局绝对是从无仅有的。 而这样的变化,每天都在快速迭代着。

1.4 大模型时代,如何保护数据安全与隐私?

大模型时代下的数据库交互方式和挑战

     DB-GPT的宗旨是通过私有化的大模型技术定义数据库的下一代交互方式, 关于如何保护垂直领域的数据隐私问题,我们在这里主张的是私有化部署。 将大模型私有化部署到你的私有环境,让模型去找数据,而不是把私有数据上传给公有云,上传给通用模型。通过Local化部署,来充分保障数据的隐私安全。 此外,面向未来,在面对成本与效果考量不得不使用中心化大模型API的场景,我们也正在构建基于Proxy的数据脱敏与混淆方案。 

1.5 大模型时代,数据库领域的相关发展方向

大模型时代下的数据库交互方式和挑战

受到大模型技术带来的冲击,整个数据库领域也正在发生巨大的变化。 像Databricks、snowflake这样的数据公司,也在非常积极布局大模型。截止目前,整个大模型时代,围绕数据库领域的演进方向可以主要概括为以下几个领域

  1. 向量数据库:向量数据库需求爆发,有新势力的崛起,像Pinecone、Milvus、Weaviate、Qdrant、Chroma这些在大模型时代发展起来的新势力, 也有老对手的顺应时代变革,比如pgvector、redis、elasticsearch、clickhouse等等
  2. LLM + Data, 随着Databrics 13亿美金收购MosaicML,snowflake宣布与Navida合作,LLM+Data被推向了发展高潮。 
  3. LLM+SQL, LLM+SQL目前是Text2SQL这个方向最重要的研究课题。 有非常多的团队在朝着这个方向迈进,当前也有很多相关的产品开源了, 同时DB-GPT也通过DB-GPT-Hub项目的构建,来持续深耕Text2SQL相关的发展。 
  4. LLM+Tools,  随着Auto-GPT、GPT-plugins等项目的发布, LLM+Tool的发展也进入了快车道。当前也有非常多的产品工具在朝着这个方向发展,整个发展趋势也成加速趋势。

方案介绍

DB-GPT是什么? DB-GPT的定位是用私有化的LLM技术来定义数据库下一代的交互方式。 大语言模型最认为神奇的地方,就是它理解、推理能力,确实一定程度上具备了人的能力,是个智能体。 既然大语言模型可以看成是个人。 那么我们的架构也就完全参考人做事的方式来进行定义了。 人做一件事情,我认为主要借助两个能力。 1. 学习知识。 2. 使用工具。 有了这两个能力之后,发现基本很多问题都能解决, 而且还能一路成长。

      DB-GPT就是希望给大语言模型加上学习知识与使用工具这两个引擎,让大语言模型的能力边界可以无限拓展。

大模型时代下的数据库交互方式和挑战

那么既然有这么好的范本,那事情就变得简单了,架构参照人来设计。 所以在上图中: 1. 我们左侧是知识,通过对知识的整理、构建、Embedding之后,存储到向量数据库中,以备大模型使用。 2. 右侧我们是工具,即目前最流行的Agent-Plugins这套机制,同时为了充分兼容开源社区,我们在设计上,也兼容了langchain跟Auto-GPT。 3. 大模型是我们的核心,为了确保环境可以私有化,我们在大模型坚持从开源中找更好的模型,通过一定程度的微调,把最好的能力放出来。 同时为了充分测试各个模型的能力,我们使用了FastChat多模型对话评测的能力,毕竟大家说的好才是真的好。 当然目前Vicuna-13b,确实是可以在20G上下的显存上跑起来的,效果最好的模型了。 其他模型要么过大,要么效果不好。 经过这一段时间的验证,我个人认为,综合评估落地成本与效果,10B级模型是私有化部署最好的选择。 4.  Prompt是与大模型交互过程中非常重要的部分,一定程度上Prompt决定了大模型生成答案的质量与准确性,所以我的判断,在大模型能力达到一定的水平之后,比如具备COT(思维链)能力之后,prompt的方式比FT的方式更重要。 一定程度上领域知识的构建,就是通过知识库 + prompt的结合来进行让大模型工作的。 面向小场景的Training,或许可能并不可取。因此在DB-GPT项目中,我们会根据用户输入与使用场景,自动优化对应的Prompt,让用户使用大语言模型变得更简单、更高效。

5.连接模块,为了能够更方便的与用户的私有环境进行交互,项目设计了连接模块,连接模块可以支持连接到数据库、Excel、知识库等等多种环境当中,实现信息与数据交互。 

6.多端产品界面,为了能够更加快速使用整个DB-GPT的能力,我们提供了支持多端的产品界面,在DB-GPT项目中,有专门的子项目DB-GPT-Web

7.模型效果与微调,除此之外,为了充分提升DB-GPT当中模型的效果,围绕Text2SQL这个核心方向进行效果突破,我们也发起了DB-GPT-Hub项目,期望能跟社区一起将Text2SQL这个方向的效果提升到最好水平。

大模型时代下的数据库交互方式和挑战

2.1 特性一览

最新能力一览, 在我们最新的发布中,首次支持了Chat2Dashboard的能力。 即可以通过对话就实现报表生成,当然当前受限与私有化模型的效果,私有化模型准确率相对较低。 因此我们在持续优化模型效果的同时,也对接了ChatGPT,大家可以通过ChatGPT来体验报表生成的能力。 

大模型时代下的数据库交互方式和挑战

        大模型时代下的数据库交互方式和挑战

2.2 大模型学习知识的主要方法

关于大模型的知识学习,分别有以下阶段Pretraining、Supervised-Finetuning、 RW、RLHF以及ICL。在这里我们主要主要介绍Pretraining、SFT、ICL这三个阶段。

大模型时代下的数据库交互方式和挑战

大模型时代下的数据库交互方式和挑战

Pretraining -> FT -> ICL 三者并非相互独立的关系,一般后者需要依赖前者。三种技术需要根据业务场景结合使用,才能最大发挥LLM的价值。  注意: FT跟ICL一定需要一个好的BaseModel。

2.3 学习知识 —— ICL(in-context-learning)

在DB-GPT当中,对于知识库相关的能力,我们是通过ICL的方式进行设计与开发,为了能够让知识库的能力更强大,同时充分具备可拓展的能力,我们在DB-GPT当中设计了一套Embedding的引擎。 如同所示,各类知识经过DB-GPT-Embedding Engine之后,通过Embedding Engine提供的Loader-> Reader-> Process -> Embedding 整个数据管道的能力,可以轻松的实现各类数据的Embedding,  同时整个引擎也提供了可拓展的能力,可以按需进行自定义与拓展。 

大模型时代下的数据库交互方式和挑战

关于ICL,下面也有一张更详细的介绍图,大家可以据此来理解整个ICL的过程。

大模型时代下的数据库交互方式和挑战

2.4 使用工具ReAct(Reason + Act) CoT -> ToT

大模型时代下的数据库交互方式和挑战

在开始使用工具之前,首先需要学习认识工具。然后在通过思维链->思维树这样的理论,让模型具备根据任务推理出所需工具, 再通过插件模型执行对应的函数/调用API来完成具体的任务。 

在2月份ToolLearning出现,3月份GPT-4 Plugin发布, 4月底Auto-GPT问世,再到后来一众自动化AGI项目的兴起,可以说使用用具这条路跟学习知识一样越来越被重视。 

2.5 多模型管理与私有化部署

大模型时代下的数据库交互方式和挑战

在BaseModel之上针对垂直领域的任务,会衍生出更多的小模型,在DB-GPT项目中亦是如此,会有SQL-GPT模型,数据库Tool-GPT模型,知识库问答模型等等,所以一定需要一套能力对多模型进行管理。DB-GPT当中多模型管理的设计,可以协助用户针对具体场景,完成对应的模型选择与切换。 让最合适的模型服务与最合适的业务场景。 

2.6 统一的向量存储与索引

大模型时代下的数据库交互方式和挑战

      经过这么多年的发展与积累,相信绝大多数企业都已经拥有了海量的结构化、非结构化数据。包括文本、音频、视频等资源, 这些资源所包含的巨大的价值,在大模型时代需要进一步挖掘。 纵观企业的发展之路,在信息化时代之前,就在一直跟数据打交道。 从早期的纸质记录到信息时代数据库的出现,再到大数据时代的海量数据,以及目前正在经历的数智化的开端,可以说整个数据之路的发展是紧跟技术潮流来对业务进行服务的。 那大模型时代,与大模型交互的媒介变成向量之后,我们有责任建设大模型时代的数据仓库, 通过打造数据湖与向量池来构建LLMs时代,大模型所需要的数据底盘。 

2.7 PromptFramework

大模型时代下的数据库交互方式和挑战

       AI的发展中有几个比较有意思的词,尤其是大模型出现之后,比如练丹,魔法,咒语等。

如果说模型的训练、微调是炼丹,那Prompt就可以比作魔法或者咒语。 在过去几年的发展过程中,”炼丹” 这个过程长出了非常多的著名的框架与引擎。 

      我们判断Prompt这个方向,也正在朝着工程化的方向发展,相信不远的将来,也会出现非常多的PromptEngine或者PromptFramework,这些工具会致力于拉平大家使用大模型过程中参差的水平。

部署实践

3.1 硬件&环境要求

DB-GPT提供了大模型私有化部署的方案,支持各种主流的大模型部署。官方推荐使用的模型是vicuna-13b与chatglm2-6b, 以上两种模型对部署资源要求如下:

大模型时代下的数据库交互方式和挑战

除此之外,DB-GPT也提供了chatgpt代理模式,可以通过chatgpt代理来使用DB-GPT的能力。 详细的部署方案可以参考官方文档

效果演示

当前DB-GPT提供了ChatData、ChatDB、ChatKnownledge、ChatDashboard、Plugin等多种能力。

大模型时代下的数据库交互方式和挑战

4.1 SQL生成

大模型时代下的数据库交互方式和挑战

4.2 基于数据库的对话

大模型时代下的数据库交互方式和挑战

4.3 ChatData

大模型时代下的数据库交互方式和挑战

4.4 ChatDashboard

大模型时代下的数据库交互方式和挑战

4.5 知识库管理与对话

大模型时代下的数据库交互方式和挑战

大模型时代下的数据库交互方式和挑战

RoadMap

大模型时代下的数据库交互方式和挑战

小结

虽然DB-GPT提供了很多炫酷的效果,也提供了很多有趣的思路,得到了社区同学的认可,但DB-GPT在实际落地场景中,还有非常多的挑战需要我们去解决。 面向未来,我们也会始终坚持可落地性与效果,持续打磨DB-GPT的能力,结合开源与实际业务场景,打造更加通用,效果更好的GPT项目,真正解决客户的实际问题。 

为了让这一天更快的到来,我们也发布了DB-GPT-Hub,包含数据集和微调以及模型权重,目的是不断提升模型效果,尤其是在Text2SQL方面的效果提升。 仓库开源地址:github.com/csunny/DB-G…

欢迎大家关注我们,也希望对此领域感兴趣的同学可以与我们一起共建。

本网站的内容主要来自互联网上的各种资源,仅供参考和信息分享之用,不代表本网站拥有相关版权或知识产权。如您认为内容侵犯您的权益,请联系我们,我们将尽快采取行动,包括删除或更正。
AI教程

Meta新技术Relightable Gaussian Codec Avatars的研究成果与实验结果

2023-12-10 17:21:00

AI教程

AI时代:程序员的未来和挑战

2023-12-10 17:23:00

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索