賽道Hyper | 騰訊云的AGI基建:用向量數(shù)據(jù)庫(kù)助推LLM
自ChatGPT爆火,國(guó)內(nèi)頭部平臺(tái)型公司一擁而上,先后發(fā)布AGI或垂類(lèi)LLM,但鮮有大模型基礎(chǔ)設(shè)施,比如向量數(shù)據(jù)庫(kù)。?
(資料圖)
7月4日,騰訊云彌補(bǔ)了這一不足,推出能被廣泛應(yīng)用于大模型訓(xùn)練、推理和知識(shí)庫(kù)補(bǔ)充等場(chǎng)景的騰訊云向量數(shù)據(jù)庫(kù)Tencent Cloud VectorDB,這是國(guó)內(nèi)首個(gè)從接入層、計(jì)算層、到存儲(chǔ)層提供全生命周期AI化的向量數(shù)據(jù)庫(kù)。?
什么是向量數(shù)據(jù)庫(kù)?騰訊的目的是什么?對(duì)B端應(yīng)用方,這有什么好處??
國(guó)內(nèi)首個(gè)全生命周期VectorDB?
ChatGPT讓LLM成為AI賽道焦點(diǎn),向量數(shù)據(jù)庫(kù)也由此成為熱門(mén)話題。向量數(shù)據(jù)庫(kù)就可為L(zhǎng)LM插上一個(gè)廉價(jià)但有效的“外接大腦”。?
這話怎么說(shuō)??
首先,向量通常用于在多維空間中表示數(shù)據(jù)值/點(diǎn)的位置、特征或?qū)傩?;而向量?shù)據(jù)是一種數(shù)學(xué)表達(dá),即用一組有序的數(shù)值(通常是浮點(diǎn)數(shù)),表達(dá)一個(gè)對(duì)象或數(shù)據(jù)值/點(diǎn)。?
舉個(gè)例子,在計(jì)算機(jī)視覺(jué)中,可以通過(guò)數(shù)值(即像素值)表達(dá)圖像,這組數(shù)值構(gòu)成一個(gè)向量。每個(gè)數(shù)值對(duì)應(yīng)圖像某個(gè)像素的顏色強(qiáng)度。比如,一幅8x8的灰度圖像,即一個(gè)包含了64個(gè)數(shù)值的向量。?
其次,向量并非專用于AGI,一開(kāi)始被用于推薦類(lèi)AI。由于向量能被用于在多維空間中的數(shù)據(jù)點(diǎn)的特性,因此被用于推薦類(lèi)AI的個(gè)性化推薦。在推薦系統(tǒng)中,無(wú)論是用戶,還是物品,都能用向量表示。?
比如,某個(gè)用戶對(duì)服飾顏色、款式、材質(zhì)、用途等有個(gè)性化偏好,這些偏好可用數(shù)值向量概括。通過(guò)計(jì)算用戶向量與物品向量之間的相似度,實(shí)現(xiàn)個(gè)性化推薦。?
在AI世界中,向量被用于表達(dá)物理世界的萬(wàn)物,而LLM的興起,對(duì)向量數(shù)據(jù)的存儲(chǔ)和計(jì)算需求,得以大規(guī)模釋放。?
在2022年12月前,向量在各種AI推薦系統(tǒng)中已經(jīng)得到深度應(yīng)用。正因?yàn)槿绱?,向量?shù)據(jù)才會(huì)散落在數(shù)量龐大的推薦系統(tǒng)文件中,沒(méi)有形成專門(mén)的向量數(shù)據(jù)庫(kù)。?
向量數(shù)據(jù)結(jié)構(gòu)雖然較為簡(jiǎn)單,但因?yàn)閼?yīng)用場(chǎng)景極多,比如機(jī)器視覺(jué)、文本和圖像處理、神經(jīng)網(wǎng)絡(luò)、自然語(yǔ)言處理等多模型AGI領(lǐng)域,故算法也相應(yīng)種類(lèi)繁多。?
在多系統(tǒng)中調(diào)取/檢索向量數(shù)據(jù),耗費(fèi)的GPU和CPU資源量級(jí)極為龐大,因而成本高而效率低下。騰訊云數(shù)據(jù)庫(kù)副總經(jīng)理羅云說(shuō),“當(dāng)我們使用向量數(shù)據(jù)庫(kù)Workload(工作量)越來(lái)越大,插件式數(shù)據(jù)庫(kù)就會(huì)面臨挑戰(zhàn)?!?
從2019年開(kāi)始,有些通用/插件數(shù)據(jù)庫(kù),就開(kāi)始增加對(duì)向量數(shù)據(jù)庫(kù)的支持,比如ElasticSearch、Redis和PostgreSQL。?
騰訊云此次發(fā)布的向量數(shù)據(jù)庫(kù),最早也是始于2019年。那會(huì)兒騰訊云推出一個(gè)叫做“OLAMA”的分布式向量數(shù)據(jù)庫(kù)存儲(chǔ)技術(shù)引擎,成為騰訊云向量數(shù)據(jù)庫(kù)底座之一。OLAMA目前可支持十億級(jí)別的單行向量數(shù)據(jù)索引、查詢 QPS達(dá)到百萬(wàn)、響應(yīng)延遲為20毫秒。?
從2019年開(kāi)始,騰訊云持續(xù)地豐富OLAMA引擎的AI能力,比如添加了好幾種向量索引算法,像Embedding算法和Segment算法,還包括NLP(自然語(yǔ)言)檢索能力等等。?
向量數(shù)據(jù)算法的作用是什么??
簡(jiǎn)單地說(shuō),怎么能更快速、更準(zhǔn)確、更低成本和更低時(shí)延找到向量,以及如此找到那些更相似的向量,這是向量數(shù)據(jù)算法的目的,也是此次騰訊推出的向量數(shù)據(jù)庫(kù)改進(jìn)算法能力的體現(xiàn)。?
騰訊PCG大數(shù)據(jù)平臺(tái)部搜索推薦Senior Tech Lead鄭偉說(shuō),“除了快速高效低時(shí)延,騰訊云向量數(shù)據(jù)庫(kù)另外一項(xiàng)大的改進(jìn),就是在做到低成本的同時(shí),OLAMA引擎的穩(wěn)定性還得到了大幅提升?!?
第三,在應(yīng)用性方面,騰訊云向量數(shù)據(jù)庫(kù)做了大量改進(jìn),“怎樣能更自動(dòng)化、更智能地對(duì)外提供服務(wù)。”鄭偉說(shuō),“在大模型出來(lái)后,怎么樣能更好地貼合大模型做更多擴(kuò)展,比如用戶只要敲敲鍵盤(pán),就能通過(guò)用我們的向量數(shù)據(jù)庫(kù),得到各種賬單、各種數(shù)據(jù)和各種報(bào)表等?!?
降本增效,提供記憶能力?
騰訊云推出專業(yè)向量數(shù)據(jù)庫(kù),源自需求端的強(qiáng)力推動(dòng)。?
據(jù)羅云透露,“基本上每天不止1-2客戶前來(lái)咨詢向量數(shù)據(jù)庫(kù)什么時(shí)候能給他們使用?!?
向量數(shù)據(jù)庫(kù)有三個(gè)階段需求:第一個(gè)階段,類(lèi)型必須是向量數(shù)據(jù)庫(kù)。羅云說(shuō),由于騰訊云從2019年就開(kāi)始持續(xù)迭代向量數(shù)據(jù)庫(kù)存檢引擎,到現(xiàn)在,這步已直接跨越;第二個(gè)階段,要解決成本問(wèn)題。比如單QPS(每秒查詢推理響應(yīng)速度:Query Per Second)成本,需求方一次查詢需要花多少錢(qián)。?
第三個(gè)階段,就是B端用向量數(shù)據(jù)庫(kù)的易用性,這需要騰訊云具有豐富的行業(yè)的AI應(yīng)用經(jīng)驗(yàn)。向量數(shù)據(jù)庫(kù),用于向量提供存儲(chǔ)和檢索,需求方要把非結(jié)構(gòu)化數(shù)據(jù)(如一段文本變成向量),要把文本分段,分段之后要找到合理模型做Embedding(向量)。?
在ML(機(jī)器學(xué)習(xí))和NLP中,Embedding是一個(gè)N維的實(shí)值向量,幾乎可用于表達(dá)/描述任何形式,如文本、聲音或視頻等。實(shí)值的Embedding能描述單詞語(yǔ)義,主要是因?yàn)镋mbedding向量能根據(jù)單詞在語(yǔ)言上下文(Context)中出現(xiàn)的形式達(dá)成學(xué)習(xí)。?
騰訊云向量數(shù)據(jù)庫(kù)已在QQ瀏覽器、騰訊視頻、騰訊游戲、QQ音樂(lè)、搜狗輸入法等30+業(yè)務(wù)場(chǎng)景中得到應(yīng)用。當(dāng)前,騰訊云團(tuán)隊(duì)還處于滿足需求的第三個(gè)階段,重點(diǎn)是“圍繞AI化提升產(chǎn)品整體的應(yīng)用性”,羅云說(shuō)。?
為什么LLM要用到向量搜索技術(shù)??
如果給定一個(gè)對(duì)象,在一個(gè)集合中找到與之最相似的對(duì)象的過(guò)程,就是向量搜索。文本或圖片等內(nèi)容,都能通過(guò)將其轉(zhuǎn)換為向量的表示方式,進(jìn)而將文本或圖片的相似度問(wèn)題轉(zhuǎn)換為向量的相似度問(wèn)題。?
這里有個(gè)問(wèn)題,就是LLM場(chǎng)景模型的上下文有個(gè)長(zhǎng)度限制。比如,ChatGPT 3.5上下文長(zhǎng)度限制是4k tokens。超出Context長(zhǎng)度,ChatGPT就會(huì)“失憶”,影響交互結(jié)果(或稱Context Learning)的準(zhǔn)確性。?
但是,向量搜索擁有的能力之一,就是將超出上下文長(zhǎng)度限制的文本劃分成較短的組(Chunks),再將不同的組轉(zhuǎn)換為Embedding。這就相當(dāng)于向量搜索擁有記憶能力。LLM用向量數(shù)據(jù)庫(kù),就類(lèi)似于有了一個(gè)外部大腦。通過(guò)Embedding,能找到與提示(Prompt)最相關(guān)的信息。?
從這個(gè)角度上說(shuō),向量數(shù)據(jù)庫(kù)承擔(dān)了LLM的Context Learning的記憶任務(wù),從而提高了GPT的交互準(zhǔn)確性。?
此外,由于基于以Transform架構(gòu)為基礎(chǔ)的LLM的AI訓(xùn)練耗時(shí)長(zhǎng),成本高,因此就很難將最新的素材(數(shù)據(jù))加入LLM,這被稱為L(zhǎng)LM的時(shí)效限制。若終端用戶又急需LLM數(shù)據(jù)做即時(shí)更新,這時(shí)向量數(shù)據(jù)庫(kù)的作用就很顯著。?
LLM的空間限制也很明顯,比如B端用戶的私域數(shù)據(jù),不方便提供給LLM訓(xùn)練平臺(tái)做高頻集訓(xùn)。這時(shí),B端用戶就能將私域數(shù)據(jù)放在向量數(shù)據(jù)庫(kù)中,需要推理時(shí),就臨時(shí)取調(diào)給LLM。這樣做的好處是數(shù)據(jù)安全,而且訓(xùn)練效率高、成本低。?
為什么能實(shí)現(xiàn)這一點(diǎn)??
因?yàn)橄蛄繑?shù)據(jù)庫(kù)專門(mén)用于存儲(chǔ)和查詢向量數(shù)據(jù),業(yè)界稱之為大模型的“海馬體”。?
騰訊云向量數(shù)據(jù)庫(kù)最高支持10億級(jí)向量檢索規(guī)模,延遲控制在毫秒級(jí),相比傳統(tǒng)單機(jī)插件式數(shù)據(jù)庫(kù)檢索規(guī)模提升10倍,同時(shí)具備百萬(wàn)級(jí)每秒查詢(QPS)的峰值能力。?
將騰訊云向量數(shù)據(jù)庫(kù)用于大模型預(yù)訓(xùn)練數(shù)據(jù)的分類(lèi)、去重和清洗相比傳統(tǒng)方式,能提升10倍效率。如將向量數(shù)據(jù)庫(kù)作為外部知識(shí)庫(kù)用于模型推理,則可降低2-4個(gè)數(shù)量級(jí)的成本。
風(fēng)險(xiǎn)提示及免責(zé)條款 市場(chǎng)有風(fēng)險(xiǎn),投資需謹(jǐn)慎。本文不構(gòu)成個(gè)人投資建議,也未考慮到個(gè)別用戶特殊的投資目標(biāo)、財(cái)務(wù)狀況或需要。用戶應(yīng)考慮本文中的任何意見(jiàn)、觀點(diǎn)或結(jié)論是否符合其特定狀況。據(jù)此投資,責(zé)任自負(fù)。關(guān)鍵詞: