天天看點

微軟開源GraphRAG:極大增強大模型問答、摘要、推理

作者:不秃頭程式員
微軟開源GraphRAG:極大增強大模型問答、摘要、推理

7月3日,微軟在官網開源了基于圖的RAG(檢索增強生成)——GraphRAG。

為了增強大模型的搜尋、問答、摘要、推理等能力,RAG已經成為GPT-4、Qwen-2、文心一言、訊飛星火、Gemini等國内外知名大模型标配功能。

傳統的RAG系統在處理外部資料源時,隻是簡單地将文檔轉換為文本,将其分割為片段,然後嵌入到向量空間中,使得相似的語義對應相近的位置。

但這種方法在處理需要全局了解的海量資料查詢時存在局限,因為它過度依賴局部文本片段的檢索,無法捕捉到整個資料集的全貌。

是以,微軟在RAG基礎之上通過“Graph”圖的方式,例如,文本中的實體,人物、地點、概念等,建構了超大的知識圖譜,幫助大模型更好地捕捉文本中的複雜聯系和互動,來增強其生成、檢索等能力。

開源位址:https://github.com/microsoft/graphrag?tab=readme-ov-file

微軟開源GraphRAG:極大增強大模型問答、摘要、推理

Graph RAG架構簡單介紹

Graph RAG的核心是通過兩階段建構基于圖譜的文本索引:首先,從源文檔中衍生出實體知識圖譜;然後,針對所有緊密相關的實體群組預生成社群摘要。

是以,Graph RAG的第一步就是将源文檔分割成較小的文本塊,這些文本塊随後被輸入到大模型中以提取關鍵資訊。

微軟開源GraphRAG:極大增強大模型問答、摘要、推理

在這個過程中,大模型不僅要識别文本中的實體,還要識别實體之間的關系,包括它們之間的互相作用和聯系,用來建構一個龐大的實體知識圖譜,其中包含了資料集中所有重要實體和它們之間的關系。

簡單來說,這個過程就像殺雞一樣,當一整隻雞(資料)拿上來後,我們就要把它分解成腿、翅膀、胸肉等更細小的組成部分,同時會關注這些部位之間的關系友善後續的處理。

微軟開源GraphRAG:極大增強大模型問答、摘要、推理

接着,Graph RAG使用社群檢測算法來識别圖譜中的子產品化社群。這些社群由相關的節點組成,它們之間的聯系比與圖中其他部分的聯系更為緊密。通過這種方式,整個圖譜被劃分為更小、更易于管理的單元,每個單元都代表了資料集中的一個特定主題或概念。

在基于圖的索引之上,Graph RAG進一步生成社群摘要。這些摘要是對社群内所有實體和關系的總結,它們提供了對資料集中特定部分的高層次了解。

然後要求大模型對每個答案進行打分,分數在0—100之間,得分過低的将被過濾掉,高分則留下。将剩餘的中間答案按照得分高低排序,逐漸添加至新的上下文視窗中,直至詞數限制。

例如,當使用者提問“如何進行有效減肥時?”,系統會利用與問題相關的社群摘要來生成部分答案。這些部分答案随後被彙總并精煉,以形成最終答案。

Graph RAG對大模型的好處

與傳統RAG相比,Graph RAG的全局檢索能力非常強,是以很擅長處理大規模資料集,以下是對大模型的主要幫助。

擴充上下文了解能力:通常大模型受限于其上下文視窗的大小,這限制了它們了解和生成基于長文本的能力。Graph RAG通過建構基于圖的索引,将整個文本集合分解成更小、更易于管理的社群子產品,進而擴充了模型的了解和生成能力。

增強全局查詢:傳統的RAG方法在處理全局資料的查詢時表現不佳,因為依賴于局部文本片段的檢索。Graph RAG通過生成社群摘要,使得模型能夠從整個資料集中提取相關資訊,生成更加全面和準确的答案。

提高摘要的品質和多樣性:Graph RAG方法通過并行生成社群摘要,然後彙總這些摘要來生成最終答案,能幫助大模型從不同的角度和社群中提取資訊,進而生成更豐富的摘要。

微軟開源GraphRAG:極大增強大模型問答、摘要、推理

優化算力、資源使用率:在處理大規模文本資料集時,資源的有效利用至關重要。Graph RAG通過子產品化處理,減少了對算力資源的需求。與傳統的全文摘要方法相比,Graph RAG在生成高品質摘要的同時,顯著降低了對token的需求。

提升資訊檢索和生成的協同:Graph RAG方法通過結合檢索增強和生成任務,實作了兩者之間的協同工作,提高了生成内容的準确性和相關性。

增強了對資料集結構的了解:通過建構知識圖譜和社群結構,Graph RAG不僅幫助模型了解文本内容,還能了解資料集的内在結構。

提高對複雜問題的處理能力:在處理需要多步驟推理或多文檔資訊整合的複雜問題時,Graph RAG能夠通過檢索和摘要不同社群的資訊,提升對問題更深層次的了解。尤其是在解讀PDF、Word等文檔時非常有用。

為了評估Graph RAG的性能,微軟在一個100萬tokens、超複雜結構的資料集上,包含娛樂、播客、商業、體育、技術、醫療等内容,進行了綜合測試。

微軟開源GraphRAG:極大增強大模型問答、摘要、推理

結果顯示,全局檢索方法在全面性和多樣性測試上,超越了Naive RAG等方法。特别是,Graph RAG方法在播客轉錄和新聞文章資料集上都顯示出了超高的水準,多樣性也非常全面,是目前最佳的RAG方法之一。

同時Graph RAG對tokens的需求很低,也就是說可以幫助開發者節省大量成本。

繼續閱讀