引言:邁向更全面的知識理解
大型語言模型 (LLM) 的崛起,為自然語言處理領域帶來了革命性的進展。然而,即使 LLM 再強大,也難以擺脫「知識孤島」的困境:它們的知識僅限於訓練數據,無法獲取最新的資訊,也難以理解複雜的知識體系。為解決這個問題,檢索增强生成 (RAG) 技術應運而生,它允許 LLM 從外部知識庫中檢索相關信息,從而更准确地回答問題或生成文本。
然而,傳統 RAG 在處理長文本和複雜查詢時仍面臨挑戰,例如 LLM 的上下文窗口限制和信息丢失問題。試想,當 LLM 需要處理一篇長篇論文時,關鍵信息可能位於文章的中間部分,而傳統 RAG 可能無法捕捉到這些信息,導致摘要不完整或不準確 [1]。為此,微軟的研究人員提出了名為 GraphRAG 的新方法 [2],它結合了圖結構和 RAG 技術,以實現更全面、更有效的查詢導向摘要生成,為知識理解和資訊整合開啟了全新篇章。
GraphRAG 架構:圖結構與 RAG 的結合
GraphRAG
[2] 的核心思想是將文本語料庫轉換為知識圖譜 (KG),並利用圖結構進行信息檢索和摘要生成。其主要步驟如下:

- 文本分塊: 將源文檔分割成較小的文本塊,以便後續處理。
- 構建知識圖譜: 這一步分為兩個階段 [2]:首先利用 LLM 從文本塊中提取實體和關係,構建 KG;然後,LLM 會為提取的實體生成摘要。
- 社群發現: 在 KG 上進行社群發現,將關係密切的實體劃分為不同的社群。社群發現是一種網絡分析技術 (例如 Leiden 演算法),旨在識別 KG 中聯繫緊密的節點群組。在 GraphRAG 中,社群發現將 KG 劃分為若干個主題相關的子圖。
- 社群摘要生成: LLM 為每個社群生成摘要,涵蓋該社群的關鍵信息。這些社群摘要提供了對圖譜和源文檔的全面覆蓋。
- 查詢相關社群檢索: 根據用戶查詢,檢索相關的社群摘要。
- 整合社群摘要: 將檢索到的社群摘要整合,生成最終的查詢導向摘要。
GraphRAG 的創新之處在於利用圖結構對文本信息進行組織和檢索 1,克服了傳統 RAG 的局限性。通過將文本轉換為 KG,可以更好地捕捉文本中的語義關係,並實現更精細的信息檢索。此外,社群發現和社群摘要生成機制可以有效地處理長文本,並生成更全面、更具針對性的摘要。圖結構的模組化特性允許並行處理社群摘要,從而實現更快、更可擴展的摘要生成過程。
實驗結果與分析:GraphRAG 的優勢與潛力
實驗結果 [2] 表明,GraphRAG 在處理百萬級 token 的數據集時,相較於傳統 RAG,在摘要的全面性和多樣性方面都有顯著提升。例如,在回答關於特定主題的全局性問題(global sensemaking questions)時,GraphRAG 生成的答案包含更多相關信息,並且能夠涵蓋不同的視角。全局性問題是指需要對整個數據集進行理解和分析才能回答的問題,例如「這個數據集中有哪些關鍵主題?」或「不同群體之間有哪些主要差異?」
一些研究 [4] 也對 GraphRAG 進行了評估和討論。例如,Graph Retrieval-Augmented Generation: A Survey 對 GraphRAG 及其相關技術進行了綜述,並探討了其在不同領域的應用。SimGRAG [7] 則提出了一種利用相似子圖改進 GraphRAG 性能的方法。
GraphRAG 的劣勢
- 計算成本高: 建構和維護知識圖譜需要較高的計算成本。 [9]
- 可擴展性挑戰: 隨著 KG 規模的增大,GraphRAG 的可擴展性可能會受到挑戰。 [10]
- 需要領域專業知識: 建立高品質的 KG 需要一定的領域專業知識。 [11]
- 難以處理雜訊和歧義: GraphRAG 依賴檢索到的資訊和圖結構來產生響應。 [10] 但是,檢索到的資訊中的雜訊或歧義資料可能導致不準確或不相關的回應。 [10] 有效處理噪音和歧義仍然是基於圖的模型所面臨的挑戰。
評價與展望:GraphRAG 的未來發展方向
GraphRAG 是一種很有前景的查詢導向摘要生成方法,它結合了圖結構和 RAG 的優勢,可以有效地處理長文本和複雜查詢。
然而,GraphRAG 也存在一些局限性 [2]。例如,構建 KG 和進行社群發現的過程需要一定的計算資源和時間成本。這可能會限制 GraphRAG 在資源受限環境下的應用。此外,GraphRAG 的性能也受到 LLM 質量的影響,如果 LLM 無法準確地提取實體和關係,或者生成的摘要質量較低,那麼 GraphRAG 的效果也會受到影響。
其潛在應用包括:
- 企業知識庫問答: 幫助企業員工從海量文檔中快速找到所需信息。
- 新聞摘要生成: 為用戶提供更全面、更具個性化的新聞摘要。
- 科研文獻綜述: 輔助科研人員快速了解某個領域的最新研究進展。
未來,研究方向可能包括:
- 優化社群發現算法: 針對不同類型的文本數據,設計更合適的社群發現算法,例如考慮節點屬性或邊權重的社群發現算法。
- 動態圖譜更新: 研究如何動態地更新 KG,以適應不斷變化的數據。
- 多模態 GraphRAG: 將 GraphRAG 擴展到多模態數據,例如圖像和視頻。
- 與傳統 RAG 方法的結合: 研究如何將 GraphRAG 與傳統的向量資料庫 RAG 方法相結合,例如 [8] 中提到的方法,以充分利用兩者的優勢。
總結
本文介紹了微軟提出的 GraphRAG,一種基於圖結構的檢索增強生成技術。通過將文本轉換為 KG,並利用圖結構進行信息檢索和摘要生成,克服了傳統 RAG 處理長文本和複雜查詢時的局限性,例如「lost in the middle」問題,即關鍵信息丟失在長文檔中間的問題。實驗結果表明,GraphRAG 在摘要的全面性和多樣性方面都有顯著提升,尤其是在回答全局性問題方面表現出色。GraphRAG 為 RAG 的發展提供了一個新的方向,它將 KG 和 LLM 結合起來,為解決長文本摘要生成問題提供了一種有效的解決方案。隨著技術的不斷發展,GraphRAG 有望在更多領域得到應用,並為用戶帶來更便捷、更智能的信息獲取體驗。
Works cited
- From Local to Global: A Graph RAG Approach to Query-Focused Summarization — Paper Review | by Sulbha Jain | Nov, 2024 | Medium, accessed January 1, 2025, https://medium.com/@sulbha.jindal/from-local-to-global-a-graph-rag-approach-to-query-focused-summarization-paper-review-09be5bc3ee5c
- [2404.16130] From Local to Global: A Graph RAG Approach to Query-Focused Summarization – arXiv, accessed January 1, 2025, https://arxiv.org/abs/2404.16130
- From Local to Global: A Graph RAG Approach to Query-Focused Summarization – Medium, accessed January 1, 2025, https://medium.com/@EleventhHourEnthusiast/paper-review-graph-rag-90257aa62464
- GraphRAG Papers – a graphrag Collection – Hugging Face, accessed January 1, 2025, https://huggingface.co/collections/graphrag/graphrag-papers-667566a057208377a1489c82
- Implementing ‘From Local to Global’ GraphRAG with Neo4j and LangChain: Constructing the Graph, accessed January 1, 2025, https://neo4j.com/developer-blog/global-graphrag-neo4j-langchain/
- An Introduction to Graph RAG – KDnuggets, accessed January 1, 2025, https://www.kdnuggets.com/an-introduction-to-graph-rag
- [2412.15272] SimGRAG: Leveraging Similar Subgraphs for Knowledge Graphs Driven Retrieval-Augmented Generation – arXiv, accessed January 1, 2025, https://arxiv.org/abs/2412.15272
- What is Graph RAG | Ontotext Fundamentals, accessed January 1, 2025, https://www.ontotext.com/knowledgehub/fundamentals/what-is-graph-rag/
- You probably don’t need GraphRAG – Medium, accessed January 1, 2025, https://medium.com/@amrwrites/you-probably-dont-need-graphrag-0bc9cf671db1
- Unveiling the Power of Graph RAG: Revolutionizing Conversational AI and Knowledge Retrieval – Crest Data, accessed January 1, 2025, https://www.crestdata.ai/blogs/unveiling-the-power-of-graph-rag-revolutionizing-conversational-ai-and-knowledge-retrieval
- GraphRAG vs RAG: Which is Better? | by Mehul Gupta | Data Science in your pocket, accessed January 1, 2025, https://medium.com/data-science-in-your-pocket/graphrag-vs-rag-which-is-better-81a27780c4ff