2023助力RAG減少大模型幻覺(jué),看向量數(shù)據(jù)庫(kù)Milvus如何布局2024

提起 2023 年的熱詞,必定繞不開的是 AIGC、RAG、LLM、向量數(shù)據(jù)庫(kù)……作為 AI 應(yīng)用開發(fā)領(lǐng)域的一個(gè)重要轉(zhuǎn)折點(diǎn)年,這一年大語(yǔ)言模型(LLMs)因其卓越的自然語(yǔ)言處理能力而廣受贊譽(yù),極大地拓寬了機(jī)器學(xué)習(xí)應(yīng)用的場(chǎng)景。開發(fā)者們逐漸意識(shí)到,有了 LLMs,他們可以設(shè)計(jì)出更智能、更容易互動(dòng)的應(yīng)用程序。 與此同時(shí),以 Zilliz Cloud、Milvus 為代表的“向量數(shù)據(jù)庫(kù)”已成為業(yè)界的熱門話題,其作為大型模型長(zhǎng)期記憶的角色得到了認(rèn)可。像 RAG(檢索增強(qiáng)生成)模型、智能代理和多模態(tài)檢索等應(yīng)用的興起生動(dòng)地展示了向量數(shù)據(jù)庫(kù)在實(shí)現(xiàn)高效多模態(tài)數(shù)據(jù)檢索、減少大型模型的幻覺(jué)以及補(bǔ)充領(lǐng)域知識(shí)方面的巨大潛力。

此外,2023 年大模型技術(shù)的發(fā)展也帶來(lái)了另一個(gè)重要變化——嵌入提取能力的顯著提升。根據(jù) Huggingface 上的 MTEB排行榜數(shù)據(jù),像 UAE、VoyageAI、CohereV3 和 bge 這樣的性能領(lǐng)先嵌入模型都在 2023 年發(fā)布。它們的迅速發(fā)展進(jìn)一步增強(qiáng)了向量檢索的有效性,為各種 AI 應(yīng)用提供了更精確、更高效的數(shù)據(jù)處理能力。

當(dāng)然,在這一年中,得益于應(yīng)用場(chǎng)景的演變、資本投資和媒體炒作,向量數(shù)據(jù)庫(kù)已成為一個(gè)廣為人知的技術(shù)術(shù)語(yǔ)。數(shù)十家初創(chuàng)公司進(jìn)入向量數(shù)據(jù)庫(kù)領(lǐng)域,許多傳統(tǒng)數(shù)據(jù)庫(kù)開始將向量作為一個(gè)重要的數(shù)據(jù)類型對(duì)待。然而,隨著知名度的提升,爭(zhēng)議也隨之而來(lái),激起了關(guān)于專門向量數(shù)據(jù)庫(kù)必要性的辯論。無(wú)論是關(guān)系型數(shù)據(jù)庫(kù)、NoSQL 還是搜索引擎,在許多情況下似乎都能替代向量數(shù)據(jù)庫(kù)。

回顧完熱鬧的 2023 年,我們來(lái)談?wù)?024年。2024年伊始是個(gè)審視向量數(shù)據(jù)庫(kù)行業(yè)的好時(shí)機(jī),包括在這一領(lǐng)域中獨(dú)樹一幟的 Milvus。以下報(bào)告最初是為Milvus社區(qū)內(nèi)部反思而制作的,通過(guò)大模型重新整理,旨在提供對(duì)過(guò)去一年內(nèi)向量數(shù)據(jù)庫(kù)領(lǐng)域真正進(jìn)步和趨勢(shì)的清晰而詳細(xì)的視角。這將幫助 AIGC 應(yīng)用開發(fā)者在技術(shù)選擇上做出更有教育意義和戰(zhàn)略性的決策。

【數(shù)說(shuō)Milvus 2023】——數(shù)據(jù)不會(huì)說(shuō)謊

Milvus 是全球第一款向量數(shù)據(jù)庫(kù),首次開源是在 2019 年,以其高可靠性、可擴(kuò)展性、搜索質(zhì)量和性能而聞名。2023 年,見(jiàn)證了 AIGC 應(yīng)用場(chǎng)景的演變所驅(qū)動(dòng)一個(gè)向量數(shù)據(jù)庫(kù)重要的轉(zhuǎn)變,以下是一些最能代表 Milvus 在2023年進(jìn)展的關(guān)鍵數(shù)據(jù):

0 -滾動(dòng)升級(jí)期間零停機(jī)時(shí)間

對(duì)于許多向量數(shù)據(jù)庫(kù)的新手來(lái)說(shuō),他們選型的關(guān)注點(diǎn)往往更多地在功能上而非運(yùn)營(yíng)維護(hù)。應(yīng)用開發(fā)者通常對(duì)他們的向量數(shù)據(jù)庫(kù)的穩(wěn)定性的關(guān)注比對(duì)事務(wù)性數(shù)據(jù)庫(kù)的需求要低得多,因?yàn)樗麄兊膽?yīng)用程序通常處于非常早期階段。然而,在AIGC 應(yīng)用領(lǐng)域,如果你想在生產(chǎn)環(huán)境中部署你的應(yīng)用程序并實(shí)現(xiàn)最佳用戶體驗(yàn),穩(wěn)定性和可維護(hù)性就變得不可或缺。意識(shí)到這一點(diǎn),Milvus 從 2.2.3 版本開始引入了滾動(dòng)升級(jí),通過(guò)在多個(gè)版本中持續(xù)改進(jìn),逐漸變得更加穩(wěn)定,并最終實(shí)現(xiàn)了零停機(jī)時(shí)間的滾動(dòng)升級(jí).

3X -生產(chǎn)環(huán)境中的性能提升

向量檢索的性能一直是向量數(shù)據(jù)庫(kù)的關(guān)注焦點(diǎn)。Zilliz 發(fā)布了 VectorDB bench,以幫助測(cè)試不同場(chǎng)景下的向量檢索性能。與過(guò)去的方法不同,VectorDB bench 現(xiàn)在專注于真實(shí)世界的數(shù)據(jù),包括更接近實(shí)際嵌入模型的數(shù)據(jù)集(如最新的 OpenAI 嵌入和 Clip 數(shù)據(jù)集)、更廣泛的測(cè)試場(chǎng)景(包括過(guò)濾、實(shí)時(shí)更新、刪除)和更大的測(cè)試數(shù)據(jù)集(大多數(shù)當(dāng)前的測(cè)試框架針對(duì)的是小而固定的數(shù)據(jù)點(diǎn),如果某些 vectordb 在數(shù)據(jù)集上作弊可能會(huì)誤導(dǎo))。

目前,大多數(shù)向量檢索供應(yīng)商提供的解決方案都圍繞開源 HNSW 算法的調(diào)整,這在各種生產(chǎn)部署中遇到顯著的性能挑戰(zhàn),尤其是在涉及高過(guò)濾(超過(guò) 90%)和頻繁刪除的場(chǎng)景中。Milvus 在 2023 年不僅專注于最大化實(shí)驗(yàn)室性能,而且轉(zhuǎn)向解決用戶生產(chǎn)環(huán)境中的這些真實(shí)世界性能問(wèn)題,在過(guò)濾、流式插入查詢等實(shí)際生產(chǎn)場(chǎng)景實(shí)現(xiàn)了 3 倍以上的性能提升。

5% - Beir數(shù)據(jù)集上的召回率提升

Dense Embedding 雖然有效,但在某些場(chǎng)景中依然存在局限性,如搜索特定名稱、對(duì)象、某些縮寫和短查詢上下文。Sparse Embeding 在這些情況下可以與 Dense Embedding 互補(bǔ),結(jié)合 ReRanking,在一些數(shù)據(jù)集上實(shí)現(xiàn)了 5% 的 NDCG@10 提升。 除了搜索質(zhì)量之外,Milvus 還引入了一種基于圖的 Sparse Embedding 檢索解決方案,顯著超過(guò) WAND 等傳統(tǒng)搜索方法。在 NeurIPS BigANN 競(jìng)賽中,Zilliz 員工王子豪提出的名為 Pyanns 的解決方案,并獲得了全球第一的成績(jī),這個(gè)解決方案也是生產(chǎn) Sparse Sembedding 方案的前身。隨著稀疏嵌入提取模型和Reranker的不斷發(fā)展,向量數(shù)據(jù)庫(kù)中混合查詢的重要性將越來(lái)越大。(事實(shí)上,盡管 Splade 目前是最佳的稀疏向量提取模型,效果大大超過(guò)了 BM25 的檢索結(jié)果,根據(jù)測(cè)試結(jié)果它可能不久后就不再是最佳的稀疏嵌入模型了。)

10倍-內(nèi)存節(jié)省

在 2023 年,檢索增強(qiáng)生成(RAG)模型被廣泛認(rèn)為是向量數(shù)據(jù)庫(kù)的最主要應(yīng)用之一。在文檔被分割成塊之后,一個(gè)含有 500 個(gè) Token 的 Chunk(通常 1000 字節(jié))會(huì)轉(zhuǎn)換成一個(gè) 1536 維的 float32 向量(通常 6000 字節(jié)),這意味著向量數(shù)據(jù)的體積可能會(huì)超過(guò)原始文檔的大小,給成本帶來(lái)了重大挑戰(zhàn)。

作為第一個(gè)支持基于磁盤索引的開源向量數(shù)據(jù)庫(kù),Milvus 通過(guò)磁盤混合存儲(chǔ)實(shí)現(xiàn)了5倍的內(nèi)存節(jié)省。2023 年末的 Milvus 新版本允許通過(guò)內(nèi)存映射文件(MMap)將標(biāo)量和向量數(shù)據(jù)/索引加載到磁盤,與傳統(tǒng)的內(nèi)存索引相比,這可以實(shí)現(xiàn)超過(guò) 10 倍的內(nèi)存節(jié)省。特別值得注意的是,RAG 應(yīng)用常展現(xiàn)出對(duì)冷熱數(shù)據(jù)不同的使用模式,這使得 MMap 數(shù)據(jù)緩存能力對(duì)于 RAG 應(yīng)用尤其有益。

20次-版本迭代

2023 年對(duì) Milvus 而言是一個(gè)轉(zhuǎn)折性的年份。隨著應(yīng)用場(chǎng)景的顯著演變,Milvus 的設(shè)計(jì)理念也相應(yīng)地發(fā)生了改變。在 2.2.9 版本中引入的動(dòng)態(tài) Schema,標(biāo)志著 Milvus 從優(yōu)先追求絕對(duì)性能向更強(qiáng)調(diào)用戶友好性的轉(zhuǎn)變。在 2.3 版本中加入了諸如 Upsert、范圍搜索以及余弦相似度等關(guān)鍵特性,均來(lái)自于用戶的呼聲。整個(gè)年度的 20 次版本更新不僅體現(xiàn)了超過(guò) 300 名社區(qū)開發(fā)者的心血,也足以證明了社區(qū)以用戶為中心的開發(fā)模式所帶來(lái)的積極成果。

100萬(wàn)-單個(gè)集群支持的租戶數(shù)量

在構(gòu)建大模型應(yīng)用時(shí),多租戶支持是關(guān)鍵特性,特別是在 RAG 和代理應(yīng)用場(chǎng)景中,用戶對(duì)數(shù)據(jù)隔離的要求越來(lái)越高。在面向消費(fèi)者(ToC)的環(huán)境下,租戶數(shù)量可能高達(dá)數(shù)百萬(wàn),這使得物理數(shù)據(jù)隔離變得不實(shí)際(在關(guān)系型數(shù)據(jù)庫(kù)中創(chuàng)建數(shù)百萬(wàn)個(gè)表是不可行的)。為應(yīng)對(duì)這一挑戰(zhàn),Milvus 引入了 Partition Key 功能,使得基于 Partition Key 的邏輯隔離和高效數(shù)據(jù)過(guò)濾成為可能。

在面向企業(yè)(ToB)的場(chǎng)景中,租戶數(shù)量通常在數(shù)萬(wàn)級(jí)別,實(shí)施物理資源隔離策略更加可行和可控。因此,在 2.3.4 版本中,Milvus 對(duì)內(nèi)存管理、協(xié)程處理和 CPU 優(yōu)化進(jìn)行了顯著改進(jìn)。這些改進(jìn)使得在單個(gè)集群中創(chuàng)建數(shù)萬(wàn)個(gè) Collection 變得可行,從而可以使用一個(gè) Collection 一個(gè)租戶的方式支持多租戶。

1000萬(wàn)次- Docker鏡像拉取

在 2023 年的最后一天,Milvus 慶祝了一個(gè)引人注目的里程碑:達(dá)到 1000 萬(wàn)次 Docker 鏡像下載。這一成就不僅凸顯了海內(nèi)外開發(fā)者對(duì) Milvus 的興趣與日俱增,也強(qiáng)調(diào)了 Milvus 在向量數(shù)據(jù)庫(kù)領(lǐng)域中日益增長(zhǎng)的重要性。作為全球第一個(gè)云原生向量數(shù)據(jù)庫(kù),Milvus 一直與 Kubernetes 和容器生態(tài)系統(tǒng)緊密結(jié)合。那么未來(lái)呢?很多開發(fā)者都會(huì)好奇,向量數(shù)據(jù)庫(kù)領(lǐng)域的下一個(gè)熱點(diǎn)會(huì)是什么?可能是無(wú)服務(wù)器架構(gòu)(Serverless)嗎?這里先賣個(gè)關(guān)子。

100億-單個(gè)Collection中的實(shí)體數(shù)量

盡管在當(dāng)前的 AI 熱潮中,可擴(kuò)展性可能不是最吸引眼球的部分,但它仍然對(duì)業(yè)務(wù)的成功至關(guān)重要。

以一個(gè)實(shí)例來(lái)說(shuō)明,向量數(shù)據(jù)庫(kù)Milvus就曾用 Milvus 幫助一個(gè)大模型供應(yīng)商從一個(gè)龐大的 100 億數(shù)據(jù)點(diǎn)集合中提取出深層價(jià)值。當(dāng)然,并非所有用戶的數(shù)據(jù)量都如此龐大,但 Milvus 以強(qiáng)大的可擴(kuò)展性輕松適配不同數(shù)據(jù)體量的用戶。例如,在面對(duì) 1000 萬(wàn)個(gè)數(shù)據(jù)點(diǎn)時(shí),Milvus 的處理速度堪稱“如手指滑過(guò)絲綢般順滑”,為相應(yīng)用戶業(yè)務(wù)的持續(xù)發(fā)展打下堅(jiān)實(shí)的基礎(chǔ)。在面對(duì) 1 億個(gè)數(shù)據(jù)點(diǎn)時(shí),Milvus 可能是唯一一個(gè)能夠有序、靈活處理該規(guī)模的向量數(shù)據(jù)庫(kù)。當(dāng)數(shù)據(jù)點(diǎn)高達(dá) 10 億時(shí),用戶往往面臨成本與性能的雙重挑戰(zhàn),Milvus 則可以通過(guò)多種優(yōu)化方式幫助用戶解決這一困境。最后,如果大家有誰(shuí)正面臨著處理 100 億數(shù)據(jù)實(shí)體的挑戰(zhàn)——請(qǐng)毫不猶豫地聯(lián)系我們!可以共同探索如何支持和管理上述海量數(shù)據(jù)。

【數(shù)字之外】—— 2023年向量數(shù)據(jù)庫(kù)的新認(rèn)知

除了數(shù)字上的里程碑,2023 年業(yè)務(wù)模式的改變也帶來(lái)了很多定性的認(rèn)知。這些認(rèn)知幫助我們深化了對(duì)向量這種數(shù)據(jù)類型的理解,也引導(dǎo)了我們思考向量數(shù)據(jù)庫(kù)未來(lái)的發(fā)展方向。

大模型應(yīng)用仍處于初期階段:避免重蹈智能手機(jī)時(shí)代“手電筒應(yīng)用”的覆轍

回顧移動(dòng)互聯(lián)網(wǎng)早期,許多開發(fā)者創(chuàng)建了如手電筒或天氣預(yù)報(bào)等簡(jiǎn)單應(yīng)用,這些應(yīng)用最終被整合到智能手機(jī)操作系統(tǒng)中。如今,大多數(shù) AI 原生應(yīng)用,例如迅速在 GitHub 上獲得 100,000 星的 AutoGPT,并未提供實(shí)際的業(yè)務(wù)價(jià)值,只是一些有價(jià)值的嘗試。這意味著 AIGC 場(chǎng)景對(duì)大模型和向量數(shù)據(jù)庫(kù)的應(yīng)用都處于早期階段,對(duì)今年的向量數(shù)據(jù)庫(kù)使用場(chǎng)景可能只是 AI 原生轉(zhuǎn)型的第一波浪潮,期待真正的殺手級(jí)應(yīng)用出現(xiàn)。

向量數(shù)據(jù)庫(kù)持續(xù)分化

就像數(shù)據(jù)庫(kù)發(fā)展為 OLTP、OLAP 和 NoSQL 等不同類型一樣,2023 年的向量數(shù)據(jù)庫(kù)開始顯示出多樣化的趨勢(shì)。超越傳統(tǒng)的在線服務(wù)范圍,離線分析領(lǐng)域變得更為重要,已經(jīng)有專門的向量數(shù)據(jù)庫(kù)系統(tǒng)面向數(shù)據(jù)準(zhǔn)備和分析領(lǐng)域。GPTCache是向量數(shù)據(jù)庫(kù)Milvus在 2023 年開源的項(xiàng)目,旨在利用向量檢索 Cache 大模型輸出,這也為向量數(shù)據(jù)庫(kù)開拓了緩存這一全新的賽道。未來(lái),向量數(shù)據(jù)庫(kù)Milvus滿懷希望并期待在來(lái)年見(jiàn)證向量數(shù)據(jù)庫(kù)在更多樣化的應(yīng)用場(chǎng)景和設(shè)計(jì)。

向量語(yǔ)意的復(fù)雜性日增

ANN 并非向量數(shù)據(jù)庫(kù)的唯一特性。許多人認(rèn)為,支持最近鄰搜索就足以稱之為向量或 AI 原生數(shù)據(jù)庫(kù)。然而,向量所需的操作比想象中更為復(fù)雜。除了標(biāo)量過(guò)濾和混合查詢外,為 AI 原生應(yīng)用量身定制的數(shù)據(jù)庫(kù)應(yīng)支持更復(fù)雜的語(yǔ)義能力,如 NN 過(guò)濾、KNN 聯(lián)接和集群查詢。

對(duì)于AI原生應(yīng)用而言,高彈性至關(guān)重要,但向量數(shù)據(jù)庫(kù)可能成為瓶頸

像 ChatGPT 這樣的 AI 應(yīng)用,僅兩個(gè)月時(shí)間月活躍用戶就超過(guò) 1 億,其增長(zhǎng)速度遠(yuǎn)超以往任何業(yè)務(wù)。一旦業(yè)務(wù)開始加速增長(zhǎng),從 100 萬(wàn)到 10 億數(shù)據(jù)點(diǎn)的快速擴(kuò)展至關(guān)重要。AI 應(yīng)用開發(fā)者受益于大型模型提供商提供的按需付費(fèi)服務(wù)模式,顯著降低了運(yùn)營(yíng)成本。同樣,以符合這一模式的方式存儲(chǔ)向量數(shù)據(jù)對(duì)開發(fā)者有利,使他們能夠更專注于核心業(yè)務(wù)邏輯。與大模型和其他依賴項(xiàng)不同,向量數(shù)據(jù)庫(kù)本質(zhì)上維護(hù)狀態(tài),這在可擴(kuò)展性和彈性方面帶來(lái)了更大的挑戰(zhàn)。因此,在選擇向量數(shù)據(jù)庫(kù)時(shí),彈性和可擴(kuò)展性必須被視為關(guān)鍵因素。

將機(jī)器學(xué)習(xí)應(yīng)用于向量數(shù)據(jù)庫(kù)可以帶來(lái)驚人的高回報(bào)

2023 年,向量數(shù)據(jù)庫(kù)Milvus大力投資 AI4DB,并取得了顯著的回報(bào)。與傳統(tǒng)數(shù)據(jù)庫(kù)相比,向量數(shù)據(jù)庫(kù)的固有不精確性使其更易于使用機(jī)器學(xué)習(xí)算法進(jìn)行優(yōu)化。向量數(shù)據(jù)庫(kù)Milvus引入了兩個(gè)關(guān)鍵能力:基于機(jī)器學(xué)習(xí)的自動(dòng)參數(shù)調(diào)整索引AutoIndex、基于數(shù)據(jù)聚類的數(shù)據(jù)分區(qū)策略,這兩者都顯著提高了 Milvus 企業(yè)版在云上的搜索性能。

開源與閉源

在大語(yǔ)言模型領(lǐng)域,OpenAI 和 Claude 的閉源模型目前領(lǐng)先,而開源社區(qū)在沒(méi)有相當(dāng)?shù)挠?jì)算資源和數(shù)據(jù)的情況下依然在苦苦掙扎。對(duì)于向量數(shù)據(jù)庫(kù),開源最終將成為用戶的首選。開源意味著更豐富的應(yīng)用場(chǎng)景、更快的迭代和更強(qiáng)大的生態(tài)系統(tǒng)。更重要的是,數(shù)據(jù)庫(kù)是復(fù)雜的系統(tǒng),不能像大型模型那樣不透明,用戶必須充分理解數(shù)據(jù)庫(kù)本身才能找到最合理的使用的方式,開源的透明度對(duì)于用戶來(lái)講不僅意味著自由更意味著可控。

新的開始

2023 年在大模型的變革中迅速流逝,而向量數(shù)據(jù)庫(kù)的故事似乎才剛剛開始。對(duì)于被認(rèn)為是非典型向量數(shù)據(jù)庫(kù)的 Milvus 而言,旅程并不是迷失在AIGC的熱潮中。相反,專注于精心打造產(chǎn)品,識(shí)別并培育最適合的應(yīng)用場(chǎng)景,并致力于服務(wù)理想的用戶群體。希望對(duì)開源的承諾能夠彌合與用戶之間的距離,讓他們即使在世界的任意一個(gè)角度都能感知到向量數(shù)據(jù)庫(kù)Milvus的善意和工匠精神。

2023年也見(jiàn)證了大量人工智能初創(chuàng)企業(yè)的成立和首輪融資??吹竭@些開發(fā)者的創(chuàng)新令人激動(dòng),這讓人想起了最初為何投身于向量數(shù)據(jù)庫(kù)這一賽道。2024 年將是這些創(chuàng)新應(yīng)用開始真正獲得關(guān)注的一年,不僅吸引融資,還會(huì)吸引真正的付費(fèi)客戶。這將為這些開發(fā)者帶來(lái)一系列全新的要求,因?yàn)闃?gòu)建一個(gè)幾乎不間斷、完全可擴(kuò)展的解決方案至關(guān)重要。

(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來(lái)自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。
任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書面權(quán)利通知或不實(shí)情況說(shuō)明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )