2

赛道Hyper | 腾讯云的AGI基建:用向量数据库助推LLM

 1 year ago
source link: https://awtmt.com/articles/3692592
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

赛道Hyper | 腾讯云的AGI基建:用向量数据库助推LLM

周源 发表于 2023年07月06日 06:39
摘要:有人兢兢业业,踏实干活。

自ChatGPT爆火,国内头部平台型公司一拥而上,先后发布AGI或垂类LLM,但鲜有大模型基础设施,比如向量数据库。 

7月4日,腾讯云弥补了这一不足,推出能被广泛应用于大模型训练、推理和知识库补充等场景的腾讯云向量数据库Tencent Cloud VectorDB,这是国内首个从接入层、计算层、到存储层提供全生命周期AI化的向量数据库。 

什么是向量数据库?腾讯的目的是什么?对B端应用方,这有什么好处? 

国内首个全生命周期VectorDB 

ChatGPT让LLM成为AI赛道焦点,向量数据库也由此成为热门话题。向量数据库就可为LLM插上一个廉价但有效的“外接大脑”。 

这话怎么说? 

首先,向量通常用于在多维空间中表示数据值/点的位置、特征或属性;而向量数据是一种数学表达,即用一组有序的数值(通常是浮点数),表达一个对象或数据值/点。 

举个例子,在计算机视觉中,可以通过数值(即像素值)表达图像,这组数值构成一个向量。每个数值对应图像某个像素的颜色强度。比如,一幅8x8的灰度图像,即一个包含了64个数值的向量。 

其次,向量并非专用于AGI,一开始被用于推荐类AI。由于向量能被用于在多维空间中的数据点的特性,因此被用于推荐类AI的个性化推荐。在推荐系统中,无论是用户,还是物品,都能用向量表示。 

比如,某个用户对服饰颜色、款式、材质、用途等有个性化偏好,这些偏好可用数值向量概括。通过计算用户向量与物品向量之间的相似度,实现个性化推荐。 

在AI世界中,向量被用于表达物理世界的万物,而LLM的兴起,对向量数据的存储和计算需求,得以大规模释放。 

在2022年12月前,向量在各种AI推荐系统中已经得到深度应用。正因为如此,向量数据才会散落在数量庞大的推荐系统文件中,没有形成专门的向量数据库。 

向量数据结构虽然较为简单,但因为应用场景极多,比如机器视觉、文本和图像处理、神经网络、自然语言处理等多模型AGI领域,故算法也相应种类繁多。 

在多系统中调取/检索向量数据,耗费的GPU和CPU资源量级极为庞大,因而成本高而效率低下。腾讯云数据库副总经理罗云说,“当我们使用向量数据库Workload(工作量)越来越大,插件式数据库就会面临挑战。” 

从2019年开始,有些通用/插件数据库,就开始增加对向量数据库的支持,比如ElasticSearch、Redis和PostgreSQL。 

腾讯云此次发布的向量数据库,最早也是始于2019年。那会儿腾讯云推出一个叫做“OLAMA”的分布式向量数据库存储技术引擎,成为腾讯云向量数据库底座之一。OLAMA目前可支持十亿级别的单行向量数据索引、查询 QPS达到百万、响应延迟为20毫秒。 

从2019年开始,腾讯云持续地丰富OLAMA引擎的AI能力,比如添加了好几种向量索引算法,像Embedding算法和Segment算法,还包括NLP(自然语言)检索能力等等。 

向量数据算法的作用是什么? 

简单地说,怎么能更快速、更准确、更低成本和更低时延找到向量,以及如此找到那些更相似的向量,这是向量数据算法的目的,也是此次腾讯推出的向量数据库改进算法能力的体现。 

腾讯PCG大数据平台部搜索推荐Senior Tech Lead郑伟说,“除了快速高效低时延,腾讯云向量数据库另外一项大的改进,就是在做到低成本的同时,OLAMA引擎的稳定性还得到了大幅提升。” 

第三,在应用性方面,腾讯云向量数据库做了大量改进,“怎样能更自动化、更智能地对外提供服务。”郑伟说,“在大模型出来后,怎么样能更好地贴合大模型做更多扩展,比如用户只要敲敲键盘,就能通过用我们的向量数据库,得到各种账单、各种数据和各种报表等。” 

降本增效,提供记忆能力 

腾讯云推出专业向量数据库,源自需求端的强力推动。 

据罗云透露,“基本上每天不止1-2客户前来咨询向量数据库什么时候能给他们使用。” 

向量数据库有三个阶段需求:第一个阶段,类型必须是向量数据库。罗云说,由于腾讯云从2019年就开始持续迭代向量数据库存检引擎,到现在,这步已直接跨越;第二个阶段,要解决成本问题。比如单QPS(每秒查询推理响应速度:Query Per Second)成本,需求方一次查询需要花多少钱。 

第三个阶段,就是B端用向量数据库的易用性,这需要腾讯云具有丰富的行业的AI应用经验。向量数据库,用于向量提供存储和检索,需求方要把非结构化数据(如一段文本变成向量),要把文本分段,分段之后要找到合理模型做Embedding(向量)。 

在ML(机器学习)和NLP中,Embedding是一个N维的实值向量,几乎可用于表达/描述任何形式,如文本、声音或视频等。实值的Embedding能描述单词语义,主要是因为Embedding向量能根据单词在语言上下文(Context)中出现的形式达成学习。 

腾讯云向量数据库已在QQ浏览器、腾讯视频、腾讯游戏、QQ音乐、搜狗输入法等30+业务场景中得到应用。当前,腾讯云团队还处于满足需求的第三个阶段,重点是“围绕AI化提升产品整体的应用性”,罗云说。 

为什么LLM要用到向量搜索技术? 

如果给定一个对象,在一个集合中找到与之最相似的对象的过程,就是向量搜索。文本或图片等内容,都能通过将其转换为向量的表示方式,进而将文本或图片的相似度问题转换为向量的相似度问题。 

这里有个问题,就是LLM场景模型的上下文有个长度限制。比如,ChatGPT 3.5上下文长度限制是4k tokens。超出Context长度,ChatGPT就会“失忆”,影响交互结果(或称Context Learning)的准确性。 

但是,向量搜索拥有的能力之一,就是将超出上下文长度限制的文本划分成较短的组(Chunks),再将不同的组转换为Embedding。这就相当于向量搜索拥有记忆能力。LLM用向量数据库,就类似于有了一个外部大脑。通过Embedding,能找到与提示(Prompt)最相关的信息。 

从这个角度上说,向量数据库承担了LLM的Context Learning的记忆任务,从而提高了GPT的交互准确性。 

此外,由于基于以Transform架构为基础的LLM的AI训练耗时长,成本高,因此就很难将最新的素材(数据)加入LLM,这被称为LLM的时效限制。若终端用户又急需LLM数据做即时更新,这时向量数据库的作用就很显著。 

LLM的空间限制也很明显,比如B端用户的私域数据,不方便提供给LLM训练平台做高频集训。这时,B端用户就能将私域数据放在向量数据库中,需要推理时,就临时取调给LLM。这样做的好处是数据安全,而且训练效率高、成本低。 

为什么能实现这一点? 

因为向量数据库专门用于存储和查询向量数据,业界称之为大模型的“海马体”。 

腾讯云向量数据库最高支持10亿级向量检索规模,延迟控制在毫秒级,相比传统单机插件式数据库检索规模提升10倍,同时具备百万级每秒查询(QPS)的峰值能力。 

将腾讯云向量数据库用于大模型预训练数据的分类、去重和清洗相比传统方式,能提升10倍效率。如将向量数据库作为外部知识库用于模型推理,则可降低2-4个数量级的成本。

风险提示及免责条款
市场有风险,投资需谨慎。本文不构成个人投资建议,也未考虑到个别用户特殊的投资目标、财务状况或需要。用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。
AI全知道

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK