微軟重磅開源 GraphRAG:新一代 RAG 技術(shù)來了! 原創(chuàng) 精華
1、為什么需要 GraphRAG?
7月3日,微軟重磅開源了基于圖的 RAG -- GraphRAG。在 GitHub 上發(fā)布后,短短4天時(shí)間,該項(xiàng)目迅速獲得了 6000 Stars!足見這個(gè)項(xiàng)目的熱度!
Github 地址:https://github.com/microsoft/graphrag
強(qiáng)化主流大模型,比如:GPT-4o、Qwen-2、文心一言、GLM-4、Llama-3 的搜索、問答、摘要及推理等功能,RAG 已成為這些國際國內(nèi)知名 AI 大模型不可或缺的核心技術(shù)。
過往的 RAG 實(shí)踐多沿襲簡約路線:文檔簡化為文本字符串,切割為零碎段落,繼而映射進(jìn)向量空間,實(shí)現(xiàn)語義相似度的直觀展現(xiàn)。然而,這種直白策略在面臨大規(guī)模數(shù)據(jù)全局理解的挑戰(zhàn)時(shí)顯露短板——它偏重局部文本匹配,忽略了對(duì)整體數(shù)據(jù)生態(tài)的全面洞察。
微軟在此基礎(chǔ)上另辟蹊徑,引入“Graph”圖技術(shù)概念,圍繞文本內(nèi)的實(shí)體要素(包括人物、地點(diǎn)、核心概念等)編織龐大知識(shí)圖譜網(wǎng)絡(luò)。這一創(chuàng)新不僅深化了大模型對(duì)文本內(nèi)部復(fù)雜關(guān)聯(lián)與互動(dòng)的理解力,還極大提升了其內(nèi)容生成與信息檢索的智慧邊界,引領(lǐng) RAG 邁向更廣闊的智能應(yīng)用領(lǐng)域。
GraphRAG 方法可以歸結(jié)為:利用大語言模型從您的私有知識(shí)中提取知識(shí)圖譜;將此圖譜聚類成不同粒度級(jí)別的相關(guān)實(shí)體;對(duì)于 RAG 操作,遍歷此知識(shí)圖譜以得到實(shí)體之間的關(guān)系,從而為得到最終的答案提供更多全局的關(guān)系知識(shí)。
2、GraphRAG 架構(gòu)設(shè)計(jì)剖析
Graph RAG 技術(shù)的本質(zhì),在于實(shí)施一個(gè)兩階段策略來建立圖譜驅(qū)動(dòng)的文本索引體系:首步,從原始文獻(xiàn)中挖掘并構(gòu)建實(shí)體的知識(shí)圖譜;緊接著,針對(duì)圖譜中高度關(guān)聯(lián)的實(shí)體集群,預(yù)先制作綜合性社區(qū)摘要內(nèi)容。
Graph RAG 的第一步就是將源文檔分割成較小的文本塊,這些文本塊隨后被輸入到大模型中以提取關(guān)鍵信息。
在這個(gè)過程中,大模型不僅要識(shí)別文本中的實(shí)體,還要識(shí)別實(shí)體之間的關(guān)系,包括它們之間的相互作用和聯(lián)系,用來構(gòu)建一個(gè)龐大的實(shí)體知識(shí)圖譜,其中包含了數(shù)據(jù)集中所有重要實(shí)體和它們之間的關(guān)系。
通俗來講,這一流程堪比烹飪前的食材準(zhǔn)備,以處理西瓜為例:一個(gè)完整的大西瓜(原始數(shù)據(jù))擺在面前時(shí),我們首先要將其切分成可管理的小塊(數(shù)據(jù)片段),比如瓜瓣或是更小的瓜丁,并留意這些瓜塊之間的自然連接點(diǎn),以便之后無論是混搭果盤還是精制果汁,都能得心應(yīng)手,處理起來更加高效順暢。
隨后,GraphRAG 采納了先進(jìn)的社區(qū)檢測(cè)算法,旨在圖譜中精準(zhǔn)識(shí)別出模塊化社區(qū)。這些社區(qū)由緊密相連的節(jié)點(diǎn)構(gòu)成,它們之間的相互作用相較于圖譜其余部分更為頻繁和顯著,從而自然地將龐大的圖譜切割成多個(gè)小型、更便于分析和管理的區(qū)塊,每一區(qū)塊均聚焦于數(shù)據(jù)集內(nèi)的獨(dú)特主題或概念范疇。
依托于上述圖形索引的構(gòu)建,GraphRAG 進(jìn)一步深化其分析層次,通過生成社區(qū)摘要來概括每個(gè)社區(qū)內(nèi)的所有實(shí)體及其相互關(guān)系。這些摘要作為對(duì)特定數(shù)據(jù)集區(qū)域的精煉概覽,極大地促進(jìn)了用戶對(duì)復(fù)雜數(shù)據(jù)的高層次理解。
為提升信息質(zhì)量和相關(guān)性,GraphRAG 引入了一個(gè)大模型評(píng)分機(jī)制,對(duì)所有生成的答案進(jìn)行0至100分的量化評(píng)估。評(píng)分過低的答案將被自動(dòng)剔除,而高分答案則被視為優(yōu)質(zhì)候選,依據(jù)其得分從高到低進(jìn)行排序。隨后,這些精選的答案被逐步整合至新的上下文窗口中,直至達(dá)到預(yù)設(shè)的詞數(shù)上限,確保最終呈現(xiàn)的信息既豐富又精煉。
以用戶查詢“如何進(jìn)行有效減肥?”為例,GraphRAG 能夠智能地利用與減肥主題緊密相關(guān)的社區(qū)摘要,快速生成多個(gè)初步答案片段。這些片段經(jīng)過系統(tǒng)的匯總與精煉處理,最終融合成一個(gè)全面、針對(duì)性的回答,直接響應(yīng)用戶的需求。具體的 workflow 如下圖所示:
3、GraphRAG 相比傳統(tǒng) RAG 的優(yōu)點(diǎn)
Graph RAG 顯著強(qiáng)化了全局檢索能力,尤擅應(yīng)對(duì)大規(guī)模數(shù)據(jù)集,為大模型帶來關(guān)鍵助力:
- 拓展上下文視野:克服傳統(tǒng)大模型上下文窗口局限,GraphRAG 利用圖索引分解文本為小型社區(qū),顯著提升模型對(duì)長文本的理解與生成能力。?
- 全局精準(zhǔn)查詢:超越傳統(tǒng) RAG 的局部檢索限制,GraphRAG 借助社區(qū)摘要技術(shù),從全局?jǐn)?shù)據(jù)中萃取信息,確保答案的全面與精準(zhǔn)。???
- 豐富摘要生成:并行生成并匯總社區(qū)摘要,GraphRAG 促進(jìn)大模型跨社區(qū)、多角度信息整合,生成更高質(zhì)、更多元的摘要內(nèi)容。
- 優(yōu)化算力與資源:GraphRAG 模塊化處理大規(guī)模文本,降低算力需求,同時(shí)減少 token 使用,高效生成高質(zhì)量摘要。
- 強(qiáng)化檢索與生成協(xié)同:結(jié)合檢索與生成,GraphRAG 提升內(nèi)容準(zhǔn)確性與相關(guān)性。
- 深化數(shù)據(jù)集結(jié)構(gòu)理解:構(gòu)建知識(shí)圖譜與社區(qū),GraphRAG 洞悉文本內(nèi)容及數(shù)據(jù)集結(jié)構(gòu)。
- 提升復(fù)雜問題處理能力:GraphRAG 檢索并摘要多社區(qū)信息,深化對(duì)復(fù)雜問題的理解,尤其擅長處理 PDF、Word 文檔。?
4、GraphRAG 效果如何?
為了驗(yàn)證 GraphRAG 效能,以復(fù)雜、意見分歧、信息不全的 VIINA 數(shù)據(jù)集為試金石,該數(shù)據(jù)集因新近發(fā)生未入大模型訓(xùn)練。微軟整合俄烏沖突千余篇英文報(bào)道,創(chuàng)建大模型檢索專用數(shù)據(jù)集。因數(shù)據(jù)量龐大,采用 RAG 技術(shù)處理。微軟團(tuán)隊(duì)率先對(duì)傳統(tǒng) RAG 與 GraphRAG 發(fā)起探索性查詢測(cè)試。
查詢語句:“Novorossiya 做了什么?”
傳統(tǒng) RAG 沒能回答這一問題,因?yàn)閺牟迦肷舷挛拇翱诘脑次募砜?,沒有任何文本片段提及“Novorossiya”,從而導(dǎo)致了這一失敗。
相比之下,GraphRAG 能夠識(shí)別查詢中“Novorossiya”實(shí)體,助大模型構(gòu)建圖譜,聯(lián)結(jié)原文生成帶出處的高質(zhì)答案。如下圖,L大模型斷言 Novorossiya 目標(biāo)某銀行,基于圖譜中兩實(shí)體關(guān)系,源自原文片段。、
為了更大范圍評(píng)估 GraphRAG 的性能,微軟在一個(gè)100萬 tokens、超復(fù)雜結(jié)構(gòu)的數(shù)據(jù)集上,包含娛樂、播客、商業(yè)、體育、技術(shù)、醫(yī)療等內(nèi)容,進(jìn)行了綜合測(cè)試。
總之,結(jié)果表明,GraphRAG 全局檢索方法在全面性和多樣性上優(yōu)于傳統(tǒng) RAG,其中 GraphRAG 在播客與新聞數(shù)據(jù)集上表現(xiàn)卓越,兼具高度多樣性與全面性,堪稱目前最優(yōu)秀的 RAG 方案。此外,Grap RAG 對(duì) tokens 需求低,有效降低了開發(fā)成本。
本文轉(zhuǎn)載自公眾號(hào)玄姐聊AGI 作者:玄姐
原文鏈接:??https://mp.weixin.qq.com/s/21QmpFRMuWcBTPb8VPAIOA??
