《古思為-slides_cn-export.pdf》由會員分享,可在線閱讀,更多相關《古思為-slides_cn-export.pdf(33頁珍藏版)》請在三個皮匠報告上搜索。
1、GraphRAG 進展分享GenAI TeamIntroductionSiwei GUNebulaGraph GenAI LeadNebulaGraph CommitterMicrosoft MVP(Python,AI)Open-Source,GenAI,Graph,Python,Believe in Open Source&build things with magicto help people do the same.wey-guwey_guhttps:/www.siwei.ioRAG 范式Retrieval Augmented索引:準備數據以進效檢索查詢:搜索和檢索相關參考材料Gene
2、ration:從檢索到的信息中進上下學習基準 RAG索引:Chunk and Embedding/BM25成 QA 對分層塊摘要查詢:Vector/Hybrid SearchRewrite Query遞歸搜索/復合搜索Agentic重排RAG 挑戰1細粒度檢索:碎化知識2全局上下:丟失連接3語義相似度:相關性錯配4分層摘要:宏觀問題挑戰海撈針(Needle in Haystack)細粒度,分散的上下檢索(Chunking)分割內容可能會使檢索細粒度、分散的知識變得具有挑戰性。分區可能會在多個段中稀釋關鍵信息,使其更難捕獲完整的上下。穿針引線(Connecting the Dots)全局上下/向
3、連接的檢索(Chunking)線性分割塊知識可能會導致丟失全局上下/連接。向連接的檢索在 上下分散在多來源(不具有局部性)時 可能有挑戰。相似性 vs.相關性語義相似度 上下相關性(基于嵌的 RAG)基礎模型通常依賴于 常識或字意義,導致相關性(相關性幻覺)的錯誤正例。相似度(例如,95%)并不保證相關性;上下關的段可能看起來常相似(例如,虛構的譜或不存在的情節)。保溫杯保溫棚盲摸象(Tree vs.Forest)全局問題挑戰難以從多個來源的分散信息中回答泛、全局的問題需要從整個數據集中總體獲得洞察,不是某個孤的段圖結構數據直觀上:圖結構數據是種以節點和邊為基礎的數據結構,于表示實體之間的關系
4、。知識圖譜是知識的 _ 形式:精煉和簡潔的細粒度的分段相互連接的結構現存知識圖譜中的知識是準確的查詢知識圖譜是穩定可復現的領域知識通過圖的 Schema 以 Entity&Relationships 形式被下推到圖譜中GraphRAG定義:種利圖結構數據/知識來輔助檢索、重排、合成的 RAG 法。SubGraph RAG:低垂果實的策略、法獲取任務中關鍵實體的圖與其他 RAG 檢索結果重排Generate QuestionLLMGraph StoreRAG Query EngineAgentic or RAG RouterUserGenerate QuestionLLMGraph StoreR
5、AG Query EngineAgentic or RAG RouterUserRequest TaskInitiate RAG QueryFetch SubGraph of Key EntitiesReturn SubGraphBuild Chunk with SubGraphRerank with Vector/BM25 RetrievalGenerate QuestionRequest LLM ProcessingProvide Processed DataDeliver Final QuestionGraphRAG Examples相關性 vs 相似性海撈針穿針引線投影 Meta/Do
6、main 知識到 PipelineGraph Algo:Node Importance(HippoRAG)Community Detection(MS From Local to Global)結構化數據 RAG相關性 vs 相似性AspectChunk-Based Baseline RAGGraph RAG檢索法-基于整體相似性的語義向量搜索。-查詢與塊匹配以尋找相似上下。-從關鍵實體開始的圖形檢索。-使圖推理或圖檢索通過關系找到相關上下。相關性評估-依賴語義相似性,基于概率閾值較整個查詢與塊。-傾向于找到相似的上下,即使它們不相關。-從細粒度實體提取開始。-遵循質量關系(動定義或由型語模型
7、定義)進精確的上下匹配。成準確性-產幻覺答案。-正確識別缺乏相關內容。Question:During their mission on Xandar,the Guardians discover an ancient Kree weapon called the Cosmic Scepter.WhichGuardian secretly considers using it to enhance their own abilities?A question based on a fictional movie plotQuestion:How to cook 珍珠翡翠湯?A question
8、based on a made-up dishrefs:https:/bit.ly/graph-rag-workshop海撈針(Needle in Haystack)AspectBaseline RAGGraphRAG&VectorRAG檢索法-依賴向量搜索基于查詢的整體相似性檢索塊。-結合向量搜索和基于圖的索引,以實現更全的上下檢索。細粒度檢索-成功檢索出包含濃度NASA相關內容的塊。-然,些細粒度的信息可能在聚焦于其他主題的塊中被稀釋。-有效捕獲濃度NASA塊和較的、分散的相關信息段。-圖索引有助于連接分散的知識。上下完整性-由于稀釋存在遺漏關鍵段的險。-可能導致不完整的答案。-通過合并向
9、量和圖法實現最佳性能。-通過鏈接相關實體確保更完整和連貫的問題相關知識檢索。refs:https:/bit.ly/graph-rag-workshop穿針引線(Connect the Dots)AspectBaseline RAGGraphRAG檢索法-利語義向量搜索基于整體相似性匹配查詢與整個知識庫塊。-對于需要多跳推理和理解復雜互連的查詢效果不佳。-采基于圖的檢索,從關鍵實體開始,跨多個跳躍遍歷關系。-利知識圖譜來連接實體并追蹤相關路徑,以全收集信息。多跳查詢-在處理多跳查詢時遇到困難,因為法有效地跟蹤分段塊之間的關系。-除信息在同塊內(這并不總是如此),否則法連接分散的信息段。-通過遵循
10、知識圖譜中的關系,效管理多跳查詢。-可以從(全球融危機)縫導航到(監管變化),然后到(銀X的信貸政策)。關系撈取-捕捉分布在不同塊中的實體之間復雜相互關系的能有限。-可能忽視對全理解關重要的關鍵連接。-擅識別和利實體之間的相互關系。-整合來各種相互連接節點的信息,提供全和準確的響應。Question:How to evaluate the impact ofregulatory changes in different countries on BankXs credit policies in various countries followingthe 2008 global financ
11、ial crisis?Global Financial CrisisRegulatory Changes in Various CountriesBank Xs Credit PoliciesU.S.Regulatory ChangesEuropean Regulatory ChangesAsian Regulatory ChangesU.S.Credit PoliciesEuropean Credit PoliciesAsian Credit Policies領域知識、數據的理解到 RAG Pipeline 的投射(Projection of Meta/Domain Knowledge to
12、 Pipeline)在優化RAG時,我們通常將對元知識/領域知識的理解投射到pipeline中。圖建模,隨后是GraphRAG,是種將深度推理和靈活性嵌系統的有效法。AspectTraditional RAGGraph RAG索引策略樹狀結構,硬編碼檢索具有靈活查詢策略的圖索引知識集成有限,缺乏深度推理封裝元知識和推理檢索效率僵化,需要定義邏輯靈活,使現有查詢語(Cypher)和/或GraphRAG策略泛化能適應性有限,特定于案例除圖建模本身外,泛適于各個領域refs:https:/arxiv.org/abs/2404.17723author:Zhentao Xu(LinkedIn),et a
13、l.Node ImportanceHippoRAG:Neurobiologically Inspired Long-Term Memoryrefs:https:/arxiv.org/abs/2405.14831author:Bernal Jimnez Gutirrez,et al.Community DetectionGraphRAG:From Local to Globalrefs:https:/arxiv.org/abs/2404.16130author:Darren Edge(Microsoft Research),et al.結構化數據 RAG些 text-to-SQL 的案例在 te
14、xt-to-GraphQuery 時可能更效。?PATH SEARCH on Tabular DBMSWITH RECURSIVE AnyRelationshipPath AS(SELECT id,source_id,target_id,relationship_typeFROM RelationshipsWHERE(source_id=start_node AND target_id=end_node)UNION ALLSELECT r.id,r.source_id,r.target_id,r.relationship_typeFROM Relationships rINNER JOINAn
15、yRelationshipPath p ON r.source_id=p.target_id)SELECT p1.name AS Person1,p2.name AS Person2,AnyRelationshipPath.relationship_type AS RelTypeFROM AnyRelationshipPathINNER JOIN Persons p1ON AnyRelationshipPath.source_id=p1.idINNER JOIN Persons p2ON AnyRelationshipPath.target_id=p2.id;我們的觀點:GraphRAG 昂貴
16、嗎?不Graph RAG 將上下學習轉移到索引階段推理成本最多約為原始知識的 20 倍 token存在權衡取舍,有多種可選策略這是種饋贈負擔,我們可以選擇哪些知識進開卷考試的預先學習索引階段的優勢:批量 API 使微調的型模型有NER-Link 模型可以利何時/為何使 GraphRAG海撈針(Needle in a Haystack):當需要細粒度檢索或連接分散信息時,Graph Index 和 Retrieval 提供最佳解決案。分層索引與摘要:當需要分層索引和摘要時,將 RAPTOR/Tree-RAG 集成到 Graph DB 中可以將檢索轉化為靈活的查詢模式模板。全局搜索:當需要全局上下
17、或全理解時,GraphRAG 中的社區檢測摘要優于傳統法。預先學習的整體知識表現更好,等效查詢時間的(不使 GraphRAG 的)RAG需要將所有知識傳遞給 LLM。領域知識集成:當將領域知識嵌到流程中時,將這些知識投影和抽象到圖模式中是元法,能夠實現穩健的推理和效的檢索。Graph RAG vs KG-RAGGraph RAG:個更泛的概念,具有靈活的圖形索引結構。對圖結構的要求較低;更具成本效益。檢索通常涉及對圖的較少嚴格推理,對圖索引質量的依賴性較低。KG-RAG:Graph RAG 的個特殊(更理想)情況。圖索引涉及完整的知識圖譜構建。將現有或公共知識圖譜集成到 RAG 流程中,利其結
18、構化、質量的數據進精確推理和檢索。Graph RAG 通常涉及對圖的較少嚴格推理如果我們確實想要進嚴格推理呢?Graph RAG 分類Domain SpecificGeneralKnowledgeAnalyticalSchema:Schema 知識圖譜(Knowledge Graph Schema-less)有 Schema 知識圖譜(Knowledge Graph Schema-full)圖索引中的元知識(Meta Knowledge in Graph Index)編排(Orchestration):與其他 RAG 檢索結果重新排序(Rerank with other RAG retriev
19、al results)代理式圖查詢模板(Agentic Graph Query Template)全圖處理(All in Graph)檢索(Retrieval):圖檢索(SubGraph Retrieval)路徑檢索(Path Retrieval)基于模板的復雜查詢(Template based Complex Query)本到圖查詢(Text-to-Graph Query)基于規劃的圖檢索(Planning based Graph Retrieval)我們的作分享在 NebulaGraph GenAI Suite 中實現。Graph-IndexingText-to-QueryKG-Reaso
20、ningGraph RAG PipelineGraph IndexingGraph Construction SDKCoT based PromptingPredefined General SchemaRemote Callable ExtractorSchema Auto-Templating(WIP)Text to QueryText2Query SDKSchema,Syntax and Performance OptRule based CorrectionAgentic Self-Reflection(Optional)AST based Correction(WIP)Chain o
21、f ExplorationThe planning based KG reasoning in Graph RAG Retrival Stratgies 基于規劃的 KG 推理法的圖檢索策略refs:https:/ 編排在 RAG 管道中引 GraphRAG 的策略。SubGraph RAG(less invasive)Existing KG RAG with CoEDoc-AwareDoc-Aware with Community SummaryDoc-Aware with Community Summary+CoENebulaGraph RAG 企業知識管理與應構建平臺知識集管理SOTA
22、的索引策略Meta Agent 構建和迭代應程序Nebula_Pensieve_and_CatalystSystem_ComponentsIndexing_EngineLlamaIndexAPI_Service_BackendPensieve_APIKnowledge_Set_and_AssetsKnowledge_Asset_OperationsIndexing_APIIndex_OperationsKnowledge_Set_OperationsCRUD_Knowledge_SetCRUD_Knowledge_AssetCRUD_INDEXManage_INDEX_JobsCatalyst
23、_APICatalyst_App_ManagementCatalyst_App_OperationsCRUD_Catalyst_AppCRUD_Meta_ThreadMeta-Chat_OperationsCRUD_Meta_Thread_MessagesMeta_thread_Assistant_APICatalyst_App_TenantCRUD_Tenant_ThreadCRUD_Tenant_MessagesTenant_Thread_Assistant_APIGenAI_SuiteNebulaGraphStoreLLM_UtilsLiteLLMToolsLlamaIndex_Tool
24、sLangChain_ToolsDify_Tools_and_SandboxOpen_Code_IntepritorsWebUINextJSReactTailwindCSSShadcn_UIReaGraphReactFlowPersistent_StorageMeta_DatabaseSQLAlchemySQLitePostgreSQLGraph_StorageNebulaGraphbm25_IndexElasticsearchObject_StorageMinIOS3Vector_StorageMilvusPGVectorAsset_ParsersJINA_readerothers未來作Me
25、mory:級 Graph-BasedMemoryDAG Store:元知識持久化層原向量存儲:規模統知識層微調具包/微調模型于 GraphRAG 索引/檢索回顧 GraphRAG 的背景動機從低垂果實到創新探索的旅程我們的 GraphRAG洞察 我們分享的法檢索策略、圖索引、然語到查詢轉換、RAG 流程NebulaGraph RAG 未來作Memory:Advanced Graph-Based MemoryDAG Store:Meta Knowledge Persistent LayerNative Vector Storage:Knowledge Persistent Layer at scaleFine-tuning Toolkit/Model for Graph RAG Index/RetrievalSlides:siwei.io/talks/vldb2024Thank YOU!nebula-graph.io nebulagraph siwei.io/talks/vldb2024Powered by