生成式 AI 时代的数据库:Databend 与大模型的融合探索

news2024/11/26 11:33:52

生成式人工智能(Generative AI)近年来快速崛起,从图像生成、自然语言处理到个性化推荐系统,生成式 AI 的应用范围越来越广泛。在这其中,数据可以说是企业在生成式 AI 时代取得成功的关键,每个公司都能访问相同的基础模型,但那些能够利用自己的数据构建具有真正商业价值的生成式人工智能应用的公司,将会是成功的公司。当前,生成式人工智能 (AI) 的整合正在重塑数据技术的未来。伴随着这一技术的迅猛发展,对数据库系统提出了新的要求和挑战。本文将探讨生成式 AI 对数据库的影响、当前数据库厂商在 AI 融合方面的探索、未来趋势以及 Databend 在大模型融合中做出的探索。

生成式 AI 对数据技术的影响

生成式 AI 是一类通过学习数据分布来生成新数据的算法。其核心是生成模型,如生成对抗网络(GANs)、变分自动编码器(VAEs)和最近备受瞩目的 Transformer 模型。生成式 AI 不仅能够生成逼真的图像和文本,还可以用于数据增强、仿真和预测等多种应用。

如今在数据库圈里,AI 几乎是一个流量密码,大家的共识就是如何借用大模型提升数据库体验或性能。作为数据工作者,我们也一直在进行大模型应用的探索。随着生成式 AI 的普及,数据的种类和规模正在呈指数级增长,生成式 AI 对数据库系统也提出了一些新的要求:

  • 数据存储与管理:生成式 AI 模型训练需要大量的高质量数据,这要求数据库系统具有强大的数据存储和管理能力。同时,生成模型生成的数据也需要有效地存储和索引,以便后续使用和分析;
  • 数据处理与分析:生成式 AI 模型在训练过程中需要进行大量的数据预处理和特征工程。数据库系统需要提供高效的数据处理能力,以支持大规模数据的快速处理和实时分析;
  • 数据安全与隐私:生成式 AI 模型可能生成包含敏感信息的数据,因此,数据库系统需要加强数据的安全性和隐私保护,防止数据泄露和滥用。

数据技术与大模型的融合探索

面对生成式 AI 带来的挑战,不少数据库服务商已经开始探索与 AI 技术的深度融合,有来自云厂商的数据库,也有来自独立的数据库、大数据平台,都在致力于探索如何基于机器学习与AI 能力,提升数据库系统的性能和功能。下面列出的是我们认为在数据领域进行 AI 应用探索较有代表性的数据库服务商:

  1. Snowflake:Snowflake 是一家数据库领域关注度非常高的公司,于 2020 年上市,目前市值 455.97 亿美金(2024.7)。该公司一直在积极布局数据和人工智能领域,2023 年完成了对企业级 AI 搜索引擎 Neeva 的收购,并在 2024 年第一季度宣布 CEO 更换为原 Neeva CEO Sridhar Ramaswamy,以抓住人工智能和机器学习的机遇。此外,Snowflake 在 2023活动中发布了全托管服务Snowflake Cortex,允许用户访问行业领先的大型语言模型、AI 模型和矢量搜索功能,所有用户能够利用其企业数据,来安全地利用生成式人工智能技术提供的生产力,且使机构用户能够更轻松地在数据云中发现、分析和构建人工智能应用程序。Snowflake 的这些布局印证了数据仓库正在朝 AI 方向发展,抢先在这一领域布局对数据库公司未来战略具有重要意义;
  2. Google BigQuery:作为 Google 的云数据仓库解决方案,BigQuery 预集成了强大的机器学习功能,使用户能够直接在数据库中训练和部署生成式 AI 模型。此外,BigQuery 还提供了 AutoML Tables 等工具,简化了 AI 模型的开发和部署过程。Google 也通过发布 Gemma 进入开源大模型的竞争,凭借 70 亿参数碾压 Llama2-13B(130 亿参数);
  3. Databricks:Databricks 是一家面向企业的初创公司,提供了一个基于 Apache Spark 的大数据分析平台。今年 3 月,Databricks 公布了旗下开源大语言模型 DBRX,参数规模达到 1320 亿,表现更是超越 Meta 的 Llama2、Mistral AI 的 Mixtral, xAI 的 Grok-1。Databricks 的企业客户可以在其平台上利用 RAG 系统中的长上下文功能,用自己的私有数据构建一个自定义的 DBRX 模型。Databricks 的 Lakehouse 架构整合了数据湖和数据仓库的优点,使得用户可以在同一平台上进行数据存储、处理和分析。通过与 MLflow 和 Delta Lake 的集成,Databricks 为生成式 AI 模型的训练、管理和部署提供了强大的支持;
  4. TiDB:TiDB 是国内数据库厂商 PingCAP 开发的一款开源分布式 NewSQL 数据库。它在水平扩展性和高可用性方面表现优异,特别适合大规模数据处理。TiDB 在今年推出了向量搜索(beta 版),它以一种数据库插件的形式提供了一种高级搜索方案,用于对各种数据类型(包括文档、图像、音频和视频)执行语义相似性搜索。此功能使开发人员能够使用熟悉的 MySQL 技能轻松构建具有生成人工智能 (AI) 功能的可扩展应用程序;
  5. Databend:Databend 是一款基于存算分离架构的新一代云原生数据仓库,专注于高性能和弹性扩展。Databend 通过其优化的存储和计算引擎,提供了对大规模数据处理的支持。通过与 AI 和机器学习工具的集成,Databend 使用户能够高效地在私有数据上进行生成式 AI 模型的训练和推理,同时保证数据的隐私性和高可用性。

随着数据库厂商在生成式 AI 技术的不断探索中,我们看到数据库系统在以下几个方面呈现出新的潜在价值:

  • 自动化与智能化:数据库系统将进一步实现自动化和智能化,通过 AI 技术自动进行数据管理、优化和安全保护,从而降低运维成本和复杂度;
  • 自然语言查询: 生成式 AI 的一大特点就是可以理解人类的自然语言,并将其转化为各种代码及结构化查询语言,使得一些不那么专业的用户也能轻松使用数据库进行复杂的查询和分析。这个场景目前也是很多数据库公司较为热门的应用,很多数据库公司推出了 Chat2Query、TxT2SQL 等自然语言到 SQL 的转化工具,但这个应用的准确性仍然具有较大的挑战,目前还很难落地到生产环境中;
  • 数据清洗和标准化: 数据清洗是一个高度重复的任务,现在的生成式 AI 能够快速理解多种数据格式和上下文信息,可以更高效地取代人力执行此类任务;
  • 实时处理与分析:现在,数据库系统更加注重实时数据的处理和分析能力,通过生成式 AI 模型,系统可以在实时数据流中进行即时预测和决策。例如,在电商平台上,生成式 AI 可以实时分析用户行为,生成个性化的产品推荐,提高用户体验和销售转化率;
  • 多模态数据支持:生成式 AI 应用涉及文本、图像、音频等多种数据类型,未来的数据库系统将加强对多模态数据的支持,实现对多种数据类型的统一存储和处理;
  • 隐私保护与安全:随着数据隐私和安全问题的日益突出,数据库系统须加强对数据隐私的保护。

作为一家技术领先的数据仓库提供商,Databend 一直都在思考 AI 如何与大数据技术进行融合,下面是我们在与大模型融合过程中做的一些探索。从时间顺序来看,探索和尝试大致可以分成两个阶段:

2023:第一阶段探索

在 2022 年 ChatGPT 推出后,Databend 的数据库设计团队开始了 Databend 探索的第一阶段,将强大的商业大模型能力引入到数仓,比如使用 OpenAI 的 API 向量化,做一些 RAG 的工作。用户可以把自己的知识库存储在 Databend 中, Databend 可以结合 embedding 去查询,帮助用户实现一个 RAG 解决方案。AskBend 就是 Databend 实现的一个 RAG 解决方案,用户可以对 Databend 文档进行提问,它可以给出一些基于 Databend 文档的回答。

OpenAI 大模型刚出来的时候大家都很兴奋,很多公司推出了引入 OpenAI API 的各种服务,但这种模式也存在一些问题,最突出的就是数据隐私和成本控制等问题。在这种模式下,数据必须上传给 OpenAI,无法保证企业的数据隐私;此外,使用 OpenAI 的成本很高。假设你的数据量有几万或者十几万,光调取 OpenAI API 的成本就已经很高,再加上 tokens 的成本一天至少也得几十或上百美元。而在 OpenAI 停止向中国区用户提供服务后,如果 SaaS 产品集成了OpenAI 的能力,在合规性上也是一个很大的风险点。

2024:第二阶段探索

2024 年,随着更多大模型涌现以及能力的升级迭代,Databend 对大模型的探索进入了第二阶段,开始尝试探索使用 Hugging Face 开源大模型来做 RAG 以及数据清洗,解决数据隐私和成本问题。在这个过程中,我们基本确定了 “Data + AI”模式中大数据的未来应用趋势,AI 分析适合小数据量场景,Data Warehourse 的数据分析则逐渐趋向于中大型数据量场景。 探索一: 轻量数据分析

在小数据量场景中,我们开始尝试 Kimi 和 OpenAI 做一些大数据分析。事实证明,在在小数据量的场景中,目前大模型的分析能力已经很强大了,可以满足技术小白,不精通 SQL,甚至不会用数仓的用户数据分析需求。

在传统数仓中,如果想进行大数据分析,首先需要根据需求写出 SQL,并在数仓中执行,输出的结果再接入 BI 中进行图形化展现。而如果使用 AI,完全可以使用自然语言进行数据分析。AI 会根据你给的 prompt 自动生成出 Python 脚本,然后运行这个 Python 进行数据分析。

举一个例子,比如你有一个分析任务,需要向 AI 提出问题“你是一名数据分析师,分析近一年的每日温度变化趋势,并找出极端天气。如遇高温低温,用图表展示出来”。以 ChatGPT 数据分析模型 Data Analyst 为例,当把上面的 prompt 给它后,Data Analyst 会先写一段 Python 代码,并尝试运行。目前 ChatGPT 写的 Python 还并不一定是准确的,但它在后台中有一个 Python 解释器,会根据错误不停迭代,最终生成一个正确的 Python 脚本。同时,Data Analyst 还支持数据可视化,可以创建折线图、条形图、直方图、散点图等各类图表。 这个过程其实和在数仓里写 SQL,进行数据分析,再用 BI 进行可视化展示非常像。如果你是一个小白,只要分析的数据量不大,都可以上传给它,CSV 或 Excel 都支持。甚至还可以挂云存储,比如 Google driver。它可以基于你自己的数据,根据你的提问,给出数据分析结果。

但 AI 的数据分析能力目前还无法处理大数据量的场景。最近 OpenAI 收购 Rockset 其实也是想将大模型与实时数据结合, Rockset 可以实时地处理一部分数据,剩下的再用 AI 推理。它可以把数仓里面的 SQL 能力,计算能力推给 AI,然后由 AI 帮忙写代码,再去实时数仓里调取相应的 agent 进行任务编排和执行。

探索二: 数据清洗任务

Databend 在这个阶段做的另一个探索是用大模型实现 ETL,包括数据清洗、数据分类打标签等任务。我们在第一阶段探索中遇到的问题是引用 OpenAI 服务无法应对数据隐私和成本挑战,所以在这个阶段中 Databend 开始探索使用 Hugging Face 开源大模型来做 RAG 以及数据清洗,可以完美解决上述问题。

在尝试了通义千问 2、Deepseek 几款开源大模型后,我们发现开源大模型的能力其实已经很强了。尤其是千问 2,我们以千问 2-7B 模型为例进行了部署。它对硬件要求不高,GPU 内存只需要十几 GB。如果想获得更强大的 AI 能力也可以考虑 70B 模型,但也需要更高的资源配置。

与之前不同,我们在这次探索中改变了融合大模型的模式,不再基于 Databend 的 Query 内部运行 AI 集群,而是通过 Databend 的 Item Function Server 模式连接开源大模型,Databend 只需要定义一个 Function 的 API。部署好后,用户就可以在云上自动连接大模型。即使未来有千问3 或其他更好的开源大模型,也可以很方便地切换,并且全部的数据处理都在自己的机器上,不但解决了数据隐私、合规性的问题,还实现了成本可控。如果用户需要,我们甚至可以单独给用户部署一套。

目前,我们基于这个 AI Function 实现了以下能力:

  • ai_text_similarity:文本相似度;
  • ai_mask:数据脱敏处理,用于保护敏感信息,如地址和电话号码。如果像以前靠人力的话,数据量很大的情况下需要很重的人力,AI 做这件事可以大大提高效率;
  • ai_extract:实体提取处理,从文本中识别和提取特定的实体信息。比如说你的数据里包含有地址、性别这些实体信息,这个功能就可以将含有这些信息的数据提取出来;
  • ai_sentiment:情感分析(positive/negative/mixed),用于判断文本的情感倾向。比如电商里有一些评论,该能力就能判断这些数据的情感方向;
  • ai_classify:归类处理,根据预定义类别对文本进行分类;
  • ai_translate:翻译,将文本从一种语言转换为另一种语言;
  • ai_generate:内容生成

这些能力基本上都属于数据清理任务,用 AI 代替人类,可以大大节省人力成本。在整套方案的实现中,我们进行了多项优化工作,如对 UDF Server 做了一些改造,以往传统的逐行处理方式效率低下,改为批处理模式后,大大提升了数据处理的效率;通过向量化技术改造原始模型,使其更适合在低配 GPU 上运行,降低了运行成本等等;实现了精细的计费和监控机制,确保资源使用的透明性和成本控制。目前,这些能力我们还没有开放体验,稍晚点会开放出来。

在第二阶段的探索中,Databend 重点关注了数据清洗和数据处理功能的实现。这些功能展示了 AI 在大数据处理中的潜力,特别是在减少人力和提高效率方面。未来,Databend 将继续探索 AI 在大数据中的应用,进一步优化和完善系统。

结语

生成式 AI 时代的到来,为数据技术的发展带来了新的机遇和挑战。通过深入融合生成式AI技术,数据库可以在数据存储、处理和分析方面实现更高的性能和智能化。然而,面对数据质量、计算资源、模型解释性和隐私安全等问题,我们仍需不断探索和创新。未来,随着技术的不断进步和应用的广泛推广,生成式 AI 与数据库的融合必将带来更多的可能性和变革。

以上就是 Databend 在与大模型融合探索中的一些经验和成果,希望对大家有所启发,欢迎提出问题和讨论。

关于 Databend

Databend 是一款开源、弹性、低成本,基于对象存储也可以做实时分析的新式数仓。期待您的关注,一起探索云原生数仓解决方案,打造新一代开源 Data Cloud。

👨‍💻‍ Databend Cloud:https://databend.cn

📖 Databend 文档:Databend

💻 Wechat:Databend

✨ GitHub:GitHub - datafuselabs/databend: 𝗗𝗮𝘁𝗮, 𝗔𝗻𝗮𝗹𝘆𝘁𝗶𝗰𝘀 & 𝗔𝗜. Modern alternative to Snowflake. Cost-effective and simple for massive-scale analytics. https://databend.com

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1962338.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python100day(31-35) 玩转Linux操作系统

目录 玩转Linux操作系统操作系统发展史没有操作系统(手工操作)批处理系统分时系统和实时系统通用操作系统 Linux概述Linux系统优点Linux系统发行版本基础命令实用程序文件和文件夹操作管道和重定向别名文本处理 用户管理文件系统文件和路径目录结构访问权…

MVC三层框架

什么是MVC : Model模型 view视图 Controller控制器 早先架构: 用户直接访问控制层,控制层就可以直接操作数据库 弊端:程序十分臃肿,不利于维护 servlet的代码中:处理请求、响应、视图跳转、处理JDBC、处理…

鄂维南院士:人工智能的零数据、小数据、大数据和全数据方法

源自: 中国计算机学会 注:若出现无法显示完全的情况,可 V 搜索“人工智能技术与咨询”查看完整文章 人工智能、大数据、多模态大模型、计算机视觉、自然语言处理、数字孪生、深度强化学习 课程也可加V“人工智能技术与咨询”报名参加学习 致…

【漏洞复现】泛微E-Cology9 WorkPlanService 前台SQL注入漏洞(XVE-2024-18112)

0x01 产品简介 泛微e-cology是一款由泛微网络科技开发的协同管理平台,支持人力资源、财务、行政等多功能管理和移动办公。 0x02 漏洞概述 该漏洞是由于泛微e-cology未对用户的输入进行有效的过滤,直接将其拼接进了SQL查询语句中,导致系统出…

【RT-Thread】串口接收数据并找出一帧完整的报文

本文主要记录基于 RT-Thread的串口接收数据,并找出完成的一帧报文 实现: 完整的一帧数据发送出去,提示【找到一帧数据】不完整的一帧数据发出去,不做解析,2s后未收到数据,清空缓冲区单个字节接收的时间间隔定义为2s,间隔 2s 未收到数据,默认清空缓冲区【测试结果】 目…

【漏洞复现】Bazaar CVE-2024-40348 任意文件读取漏洞

声明:本文档或演示材料仅用于教育和教学目的。如果任何个人或组织利用本文档中的信息进行非法活动,将与本文档的作者或发布者无关。 一、漏洞描述 Bazaar是一个功能强大的版本控制系统,它能够帮助用户详细记录项目的历史变化,并简…

基于SpringBoot+Vue的原创歌曲分享平台(带1w+文档)

基于SpringBootVue的原创歌曲分享平台(带1w文档) 基于SpringBootVue的原创歌曲分享平台(带1w文档) 平台为了数据库结构的灵活性选择MySQL来设计,而java技术,B/S架构则保证了较高的平台适应性。本文主要介绍了平台开发背景,需要完成的功能与开…

Sentinel 入门与实战

一、Sentinel概念 1.1 什么是Sentinel Spring Cloud Alibaba Sentinel 是一个开源的流量控制和熔断框架,它是 Alibaba 开源的微服务框架 Spring Cloud Alibaba 中的一个组件。Sentinel 旨在解决分布式系统中的流量控制和熔断问题,帮助开发人员保护微服…

U盘格式化后数据能恢复吗?恢复方法盘点!

在数字化时代,U盘已成为我们日常生活和工作中不可或缺的数据存储设备。然而,在使用过程中,我们有时可能会因为各种原因对U盘进行格式化,从而不慎删除了重要数据。那么,U盘格式化后数据能恢复吗? 首先&…

CANoe在使用时碰到的一些很少见的Bug

CANoe作为一款成熟且稳定的总线仿真与测试工具,深受汽车工程师们的喜爱。CANoe虽然稳定,但作为一个软件来说,在使用中总会出现一些或大或小的Bug。最近全球范围内的大规模蓝屏事件,是由某个安全软件引起的。而很多CANoe使用者最近…

vue3+fetch请求+接收到流式的markdown数据+一边gpt打字机式输出内容,一边解析markdown语法+highlight.js实现代码高亮

这个问题终于解决了!好开心。 先看最终效果: video_20240724_141543_edit 项目背景:vue3 场景:像gpt一样可以对话,当用户发送问题之后,ai回复,ai是一部分一部分回复,像打印机式输出…

如何将本地代码上传到github

将本地文件上传到GitHub仓库的过程通常包括以下几个步骤: 一 创建GitHub仓库: 如果你还没有一个GitHub仓库,首先需要在GitHub上创建一个新的仓库。登录到你的GitHub账户,然后点击“New repository”按钮,填写仓库的相关…

在linux运维中为什么第一道防线是云防火墙,而不是waf

在Linux运维和云计算环境中,第一道防线通常是云防火墙(Cloud Firewall),而不是Web应用防火墙(WAF),主要是因为云防火墙提供了更基础和广泛的网络层安全控制。以下是一些关键原因: 1…

AGI思考探究过程中的意义、价值与乐趣 Ⅱ

鉴于LLM与RL两者间在整体学习范式、学习目标、模型结构的差异化与统一的考量,业内不少的思路尝试将两种思想融合在一起以期待AGI的突破,但结合后要么看着不是很巧妙,要不就是看起来很僵硬,总感觉像是一个过渡性的方法,…

C语言指针·入门用法超详解

目录 1. 什么是指针 2. 指针变量的定义格式 3. 指针的作用 3.1 查询数据 3.2 存储数据(修改数据) 3.3 操作其他函数中的变量 3.4 函数返回多个值 3.5 函数的结果和计算状态分开 1. 什么是指针 通过内存地址,指向的空间&#…

装饰大师——装饰模式(Java实现)

引言 大家好,上期我们介绍了装饰模式在Python中的实现,今天,我们将继续探讨装饰模式,并展示如何在Java中实现它。 装饰模式概述 装饰模式的核心思想是将功能附加到对象上,而不是通过继承来实现,这种模式…

【JavaSE-线程安全问题-死锁详解】

🌈个人主页:努力学编程’ ⛅个人推荐: c语言从初阶到进阶 JavaEE详解 数据结构 ⚡学好数据结构,刷题刻不容缓:点击一起刷题 🌙心灵鸡汤:总有人要赢,为什么不能是我呢 🌈…

HTML基础1-文本级元素

HTML 简介 什么是 HTML? HTML (HyperText Markup Language) 是一种用于创建网页的标准标记语言。它通过使用一系列预定义的元素来描述文档的结构和外观, 您可以使用 HTML 来建立自己的 WEB 站点。 HTML 的作用 HTML 用于定义网页的结构,…

快手文生图模型-Kolors快速上手

Kolors是什么 可图(Kolors):用于真实感文本到图像合成的扩散模型的有效训练 可图,是快手开源的一个文生图模型,架构上使用了chatglm,比普通的sd模型在中文理解上要强大很多,以往sd模型的提示词理解能力往往只有两种 …

《BeanShell 在 JMeter 中的应用》总结

通过案例进行讲解 一、BeanShell 介绍 官网: http://www.BeanShell.org BeanShell 是一种完全符合 Java 语法规范的脚本语言,具有以下特点: 是一种松散类型的脚本语言,类似 JS。是用 Java 写成的小型、免费、可下载的嵌入式 Java 源代码解…