兩個多月完成全自研:大模型之爭,從 GPU 卷到了向量資料庫

2023-08-04     InfoQ

原標題:兩個多月完成全自研:大模型之爭,從 GPU 卷到了向量資料庫

作者|冬梅

採訪嘉賓 | 羅雲、鄒鵬

在大模型爆火之前,國內向量資料庫賽道略顯荒蕪,市場上獨立開發向量資料庫的廠商只有個位數。

這是因為向量資料庫的應用場景比較單一,大多用於推薦、圖搜圖等場景中,因此在 AI 技術沒有取得突破性進展之前,向量資料庫一直不溫不火,這種狀態直到去年 ChatGPT 問世後才有所改變。

去年 10 月,OpenAI 發布了智能聊天機器人 ChatGPT,隨後短短几天內註冊用戶就突破上億人,一時間,與 AIGC 等大模型相關的技術成為了 VC 眼中炙手可熱的投資項目。

從目前 VC 的投資數據來看,投資者對於 AI 的關注點主要有三個:第一個是基礎大模型 LLM,第二個是具體某個場景的應用(包括小模型),第三個就是基礎模型與應用層之間的中間層(開發者工具和資料庫等)。

隨著各種 AI 應用誕生,中間層已經成為各大 VC 爭搶的投資標的,早期默默無聞的向量資料庫一躍成為當下最大的一個熱門,各資料庫廠商摩拳擦掌都想在這一垂直賽道分一杯羹。機構觀點認為,AI 大模型或催生向量資料庫應用驟增,向量資料庫或迎重要發展機遇。

最近,騰訊雲團隊也正式發布了專業型向量資料庫(Tencent Cloud VectorDB),InfoQ 有幸採訪到了騰訊雲資料庫團隊,與他們一同探討了騰訊雲向量資料庫背後的故事以及他對於向量資料庫現在所面臨的挑戰和未來發展趨勢的思考。

定調資料庫,從擁抱開源到發展自研

「走了不少彎路,也踩過很多坑,但最終還是遇見了星辰大海。」

2010 年,騰訊這家千億巨頭還埋頭在自家地里辛勤耕耘,QQ 空間等一眾應用的爆火,讓騰訊的伺服器忙得不可開交,為了承接住如此高並發的流量洪潮,騰訊在短短一個月內額外購買了上千台伺服器。

但流量不會永遠停在峰值上,當流量回落後,閒置的伺服器就造成了資源的浪費。

另一方面,應用的爆火也為騰訊下游的小程序和遊戲方們帶去了巨大的流量,但他們有限的伺服器無法承接住如此龐大的流量洪流。

天下苦伺服器,久矣,騰訊說,別急,伺服器我有。

找上門的生意沒有不做的道理,就這樣,2011 年左右騰訊開始籌備組建一支十幾人的雲團隊,將內部技術能力以產品和服務的形式對外銷售,當時他們做了一個產品,叫 Open Cloud(開放雲),這就是後來騰訊雲的雛形。

有了一眾明星級應用等加持,騰訊雲團隊的技術實力很快得到了市場的認可,同年年底,騰訊就已經積累了近 3000 家客戶。

雲計算是一個人力密集型的賽道,需要投入大量人力才能把客戶維護好。就這樣,為了更好地支持騰訊雲業務,騰訊深圳大本營分別在深圳、北京和成都扎了根,隨後擴展到了多個城市。

隨著 Open Cloud 打磨了雲技術的底座,騰訊成立了獨立的雲計算品牌騰訊雲,正式開啟了公有雲的萬里征程。

擔任騰訊雲資料庫副總經理的羅雲,就是騰訊雲業務團隊的創始成員之一。

據羅雲介紹,從 2011 年開始做雲業務至今,整個團隊經歷了多次方向上的調整,直到 2017 年看到國產資料庫這個大趨勢後,成都團隊才定下調來主攻資料庫賽道。

與很多網際網路公司不同的是,騰訊初始的業務發展並未對資料庫有過強依賴,騰訊內部沒有去 IOE 的過程。

一開始,騰訊雲資料庫建設主要引入了當時業界較為主流的開源資料庫,如 MySQL、Redis、MariaDB、PostgreSQL 等。隨後針對雲上客戶定製需求,騰訊雲在資料庫中衍生研發了如資料庫並行複製、審計日誌、在線加欄位等核心功能,並計劃逐步將以上功能回饋給 MariaDB 和 MySQL 社區。

隨著騰訊雲資料庫積累的客戶越來越多,客戶的需求越來越定製化且應用場景更加複雜,在業務倒逼之下,從 2012 年開始,騰訊雲研發了適配內部業務自研資料庫 TDSQL,此後又推出多款自研資料庫 TDSQL-C、TBase 等產品。

在習慣了 Oracle、MySQL 等國外十分成熟的資料庫後,客戶對新興資料庫產品的要求很高,既要求高並發、高可用、低延遲等高性能,還要保證數據持久化,因此對團隊的技術水平要求極高。

羅雲舉例稱,「在資料庫每次熱升級時,要做到讓用戶無感是非常困難的。在斷開又重連的過程中,我們的團隊能做到秒級別的抖動。因為我們在資料庫的內核上做了很多工作,比如做了兩層架構,軟體的第一層叫 proxy(接入層),下面有 cache(存儲層),我們通過一些邏輯使這兩層疊加後就可以實現做業務替換時讓客戶毫無感知。」

為了應對高性能和數據持久化的要求,騰訊內部還 100% 自研了 KeeWiDB 資料庫,這是一款完全兼容 Redis 協議的新一代分布式 KV 存儲資料庫,實現了數據的冷熱分級,滿足業務高性能、持久化、低成本、大規模的四大訴求,這也為後面騰訊自研向量資料庫打下了堅實的技術基礎。

此外,KeeWiDB的技術背後,騰訊雲與中科大聯合撰寫的論文《PLIN: A Persistent Learned Index for Non-Volatile Memory with High Performance and Instant Recovery》已被資料庫國際頂會 VLDB 收錄。

兩個多月做完一款自研資料庫

在大模型浪潮爆發後,騰訊雲在一眾大廠中搶先發布了自己的向量資料庫產品。據悉,整個產品從立項到最終完成產品化僅用了不到 3 個月的時間。

之所以能如此快地推出這款產品,羅雲表示,這主要得益於兩方面:一個是雲團隊內部多年的技術積累;另一方面是這個團隊中每個人都是能打「硬仗」的好兵。

去年年初,隨著 ChatGPT 的爆火,國內「百模大戰」趨勢日漸明顯。騰訊雲也在思考從哪個方向找到突破口切入到大模型「軍備競賽」中。隨後到了 3 月份,ChatGPT 發布了一個叫「Plugin」的插件功能,Plugin 的標準案例中提到向量資料庫是大模型產品中必不可少的一個組件。因為當前的大模型都是預訓練大模型,它能夠學到的數據只是公開數據,更多的企業私有數據和實時數據大模型是學不了的。

既無法學習實時數據,又學不到企業私有數據,這是預訓練大模型在時間和空間上的兩大限制。基於這個邏輯,大模型一定會需要一個外部的「海馬體」,也就是存儲組件來存儲這些知識。

另一方面,市場上很多做大模型的企業也在向騰訊雲團隊尋求一款企業級的向量資料庫產品。

就這樣,在加深了對大模型的探索和對行業有了更清晰的認知後,騰訊雲團隊認為向量資料庫是一個必須要做並且要趕緊做出來的產品。

對齊了需求後,就來到了執行層面。擺在騰訊雲面前的第一個選擇就是到底要做什麼類型的向量資料庫類型,究竟是做插件式還是自研?

出於市場需求側的壓力,騰訊雲想快速推出一款產品,所以剛開始也考慮了用 Redis Search 插件式的方案來做產品。但經過調研發現,這種全內存的方案成本太高,這也騰訊雲堅定了要做自研的決心。

據騰訊雲向量資料庫產品負責人鄒鵬介紹,騰訊雲向量資料庫真正立項時間是在 5 月中下旬,隨後技術團隊就著手調研研發方案了。既然時間如此緊迫,那不如從騰訊的內部項目中考察是否有能夠匹配得上的產品,這樣是最高效的解決方案。

鄒鵬認為,做一款雲資料庫最核心的兩大要素就是管控和內核:管控是指要給資料庫做一些功能,把它產品化,就比如資料庫的控制台上一系列可操作的功能;內核就是資料庫數據層面的東西。

在管控層面,通過多年的技術積累,騰訊雲沉澱出了一個比價成熟的雲原生管控平台——雲巢,這是一款 PaaS on IaaS 方案,自 2019 年上線後一直穩定地為所有騰訊雲資料庫產品服務。

在內核層面的選擇上就要比管控層複雜一些。因為騰訊集團內部有多款資料庫內核可供選擇,究竟該選擇哪一款就是個問題。

經過調研後,騰訊雲資料庫團隊認為,使用規模和體量最大的向量引擎 Olama 是向量資料庫內核的最佳選擇。

QQ、QQ 空間、騰訊視頻、騰訊新聞這些業務場景中都會涉及推薦、搜索等向量技術,也從一定程度上驗證了 Olama 的技術實力。此外,Olama 採用了比較前沿的分布式的、Raft 架構設計,這種架構設計邏輯也更偏向於資料庫的架構邏輯,且易於維護。更重要的是,Raft 架構在彈性上也設計得非常靈活,它甚至能夠做到表級別的資源擴展。

鄒鵬稱,在和 PCG 團隊溝通後,了解到他們也有非常強烈的上雲需求,兩個團隊一拍即合,管控層和內核層全部塵埃落定,這個項目基本上已經完成了大半。

Olama 和雲巢都是騰訊集團內部非常成熟的產品,如何高效強執行的將兩者融合在一起的過程中還是給團隊帶來了一些挑戰。

整個團隊花費時間和精力比較多的工作在接口和協議的處理上。由於 Olama 和雲巢此前都是騰訊內部自用的產品,它們接口的一些功能設計無法友好地對外服務,因此需要進行重新設計接口,這是對內核改造最大的一部分工作,也會占用一些新的研發資源並加大在這方面的投入。

經過了兩個多月的摸爬滾打後,騰訊雲向量資料庫現已在官網上線。

要想做出一款好產品,僅有技術上的積累是不夠的,背後團隊的技術實力也同樣重要。

羅雲稱,「資料庫是個比較卷的賽道,沒有最卷,只有更卷。在這麼短的時間內推出上線一款全新的自研資料庫,對團隊成員來說是不小的挑戰。但好在我們的工程師都是很『能打』的。」

向量資料庫是風口,更是剛需

「專業的向量資料庫需要有長時間的積累和投入才能做得出來,但相應的它的天花板也更高。」

AIGC 技術迎來大爆發後,國內外科技公司紛紛推出自家大模型產品,這一波浪潮把向量資料庫這一原本沒那麼火爆的賽道推到了聚光燈下。

向量資料庫本質有三種形態:第一種是純單機向量資料庫,它不是分布式的;第二種是在傳統資料庫上加上一個具備向量檢索能力的插件;第三種是獨立的、專業的企業級向量資料庫。

目前國內的許多企業並沒有採用專門的向量資料庫,而是在原來傳統資料庫上增加了一項向量檢索能力,也就是上述提到的第二種形態。從表面上看,獨立的、專業的向量資料庫看起來並不是那麼剛需,但事實的確如此嗎?

這就要從傳統資料庫和向量資料庫的區別來看了。傳統資料庫和向量資料庫的主要區別在於它們的數據存儲方式、數據規模、查詢方式和計算密集型。

  • 數據存儲方式:傳統資料庫存儲的是結構化數據,而向量資料庫存儲的是向量數據,即將非結構化數據(如圖片、音頻、文章等)轉換為向量方式來存儲。
  • 數據規模:傳統關係型資料庫的管理數據規模通常為千萬級,而向量資料庫的需求數據規模則以達到千億級。
  • 查詢方式:傳統資料庫的查詢通常是精確查詢,即查詢結果要麼符合條件要麼不符合條件。而向量資料庫則使用相似性查找,即查找與查詢條件最相似的結果,這需要更高的計算能力。
  • 計算密集型:傳統資料庫的查詢主要是事務處理,而向量資料庫的查詢則是計算密集型,需要進行大量的向量計算和比較。

總而言之,向量資料庫的主要特點是能夠高效地存儲和查詢大規模的向量數據。它通常採用基於向量相似度的查詢方式,即根據向量之間的相似度來檢索數據。這種查詢方式可以用於各種應用場景,例如圖像搜索、音樂推薦、文本分類等。維度越高、信息量越大,這些特性都是傳統資料庫很難做到的。

這種專門用於存儲、索引和查詢嵌入向量的資料庫系統,可以讓大模型更高效率的存儲和讀取知識庫,並且以更低的成本進行 finetune(模型微調),還將進一步在 AI Native 應用的演進中扮演重要作用。

目前,大語言模型(LLM)往往包含數十億個參數,嵌入則廣泛作用於這些模型的訓練和微調過程,使其獲得執行各種 NLP 任務的能力。在 MaaS 業務的訓練、推理等場景,向量資料庫都非常重要。

更重要的是,向量資料庫可以大幅度拓展大模型的時間邊界和空間邊界。目前的大模型都是預訓練模型,對於訓練截止日之後發生的事情一無所知。向量資料庫可以通過存儲最新信息後給大模型訪問來彌補這點不足。

此外,通過向量數據的本地存儲,向量資料庫能夠協助解決目前企業界最擔憂的大模型泄露隱私的問題。向量資料庫還自帶多模態功能,能夠實現用中文搜索英語圖書、用俄文搜索圖片內容等操作,向量資料庫的近似搜索能力能夠給向量資料庫帶來巨大的商業化潛力。

在羅雲看來,現在我們無法完全篤定地說最終向量資料庫會停留在哪個形態上,但他認為第三種形體是可以向下兼容前面兩種形態的,只是這種專業的向量資料庫需要有長時間的積累和投入才能做得出來。第一個形態它可能邊界就在幾十萬行的下面,第二個形態它可能做到幾百萬行到億可能就搞不定了,如果要做到億到 10 億的數據規模,就需要專業的企業級分布式向量資料庫了。

未來發展趨勢展望

雖然去年至今年國內外大模型產品和企業層出不窮,但羅雲認為,目前大模型還處於技術發展的初期階段,相應地,與之相關的技術也處於較早期。以向量資料庫技術發展現狀來看,向量資料庫的發展可以分為三個演進階段:

第一個階段,是向量資料庫概念的定義和規範階段。也就是一款資料庫它要具備向量資料庫所有的特徵,在向量存儲能力、檢索能力上達到向量資料庫的要求,能夠滿足客戶的基本需求,才可以稱之為向量資料庫。

第二個階段,是向量資料庫核心成本優勢的競爭階段。當我們把向量資料庫的概念和特徵明確後,就要求資料庫廠商們「捲起來」了。他們要去真刀真槍地對比誰家的產品成本更低,比如單 QPS 查詢需要客戶付多少錢、它節省了多少人力和時間成本等。

第三個階段,是向量資料庫的易用性打磨階段。這個階段就主要去解決客戶「既要又要」的問題了。客戶已經不再只要求成本上的降低,還會更加關注資料庫性能的極致體驗,這也是向量資料庫廠商們要大力投入的方向。

目前來看,客戶的需求還只是停留在需要一款真正的向量資料庫上。

相比於傳統資料庫,客戶在做向量資料庫選型時就容易得多,因為應用場景單一,不會涉及太多混合場景需求。羅雲稱,「在市場側,國內客戶在做資料庫選型時更傾向於選擇有持久性保障的廠商,客戶們會考慮你的服務的可延續性,這個比較重要。」

在技術層面,羅雲預判向量資料庫未來會朝著與雲和雲的基礎設施結合的發向發展,也就是 AI Native 化的向量資料庫。

他進一步解釋道:「在向量裡面,決定向量資料庫核心性能的指標是它的向量檢索算法,而這個算法其實比較成熟了。所以當我們要攻破資料庫單 QPS 查詢成本的時候,就會考慮如何將整個雲服務結合 IaaS、容器的核心競爭力都組合在一起去打磨向量資料庫,這也是我認為在向量資料庫賽道未來雲廠商能夠跑出來的第一個點」。

此外,隨著向量資料庫和 AI 的結合更加緊密,客戶向量資料庫的易用性會有更高要求,這也是剛才羅雲提到的第三個發展階段,有了 AI 和資料庫相關技術的積累後,就可以很方便地將這些能力組裝進向量資料庫里,產生核心競爭力。

採訪嘉賓簡介:

羅雲,騰訊雲資料庫副總經理

鄒鵬,騰訊雲向量資料庫產品負責人

內容推薦

都在追「新潮」技術,但你有大廠們的動作快嗎?

大模型競爭突然升級!亞馬遜 CEO 親自監督、組建新的核心技術團隊,集中優勢資源打造「最具野心」的大語言模型

一場 AI 引發的開源革命迫在眉睫?Hugging Face 更改文本推理軟體許可證,不再「開源」

「Twitter如今就像瘋人院!」睡地板仍被裁女高管爆料:馬斯克帶來「恐懼文化」,被裁是最大解脫

活動推薦

以「啟航·AIGC 軟體工程變革」為主題的 QCon 全球軟體開發大會·北京站將於 9 月 3-5 日在北京•富力萬麗酒店舉辦,此次大會策劃了向量資料庫、大前端融合提效、大模型應用落地、面向 AI 的存儲、AIGC 浪潮下的研發效能提升、LLMOps、異構算力、微服務架構治理、業務安全技術、構建未來軟體的程式語言、FinOps 等近 30 個精彩專題。

點擊「 閱讀原文」即可查看全部專題,期待與各位開發者現場交流。

讀者福利

2023 必備 AIGC 知識庫

文章來源: https://twgreatdaily.com/zh-cn/5bd62eb8877be755e524949404af3a5f.html