《古思为-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