前言
在大型语言模型(LLM)的前沿研究中,一个核心挑战与机遇并存的领域是扩展它们的能力,以解决超出其训练数据范畴的问题。这不仅要求模型在面对全新数据时仍能保持卓越表现,还意味着开辟了全新的数据分析可能性,如在各种数据集中识别主题和语义概念,同时保留上下文和实体关系。在此背景下,微软研究院自豪地推出了GraphRAG——一项旨在显著提升LLM能力的重大突破。
开源项目地址 :https://github.com/microsoft/graphrag
RAG:检索增强生成技术的进化
传统的检索增强生成(RAG)方法通过基于用户查询搜索信息,并将结果作为AI生成答案的参考,已成为大多数LLM工具不可或缺的一部分。多数RAG方案依赖于向量相似性来进行搜索。然而,当涉及复杂信息的文档分析时,GraphRAG利用由LLM构建的知识图谱,显著提高了问答性能,展现了在处理未见数据集时的强大优势。
GraphRAG:连接点线,构建全面理解
GraphRAG的创新之处在于它能够“连点成线”,即在回答问题时,它能跨越分散的信息片段,通过共享属性将它们串联起来,提供合成的新见解。此外,GraphRAG在被要求整体理解并总结大型数据集合或单一长篇文档的语义概念时,表现尤为出色。这些能力超越了传统RAG方法的局限,后者在处理此类任务时往往力不从心。
案例研究:GraphRAG在VIINA数据集上的应用
为了验证GraphRAG的有效性,我们将其应用于Violent Incident Information from News Articles(VIINA)数据集上,这是一个包含复杂信息、多角度观点和不完整细节的真实世界测试案例。我们使用了数千篇来自俄罗斯和乌克兰新闻来源的文章,创建了一个庞大的私有数据集,其规模远超LLM的情境窗口限制,因此需要采用RAG方法。
在对比实验中,针对“Novorossiya是什么?”这一探究性问题,GraphRAG的表现明显优于基线RAG系统。GraphRAG不仅准确地捕捉到了数据集的核心主题,还提供了支持细节和原始材料的追溯,展现出对数据集整体情况的深刻洞察。
将 RAG 应用于私有数据集
为了证明 GraphRAG 的有效性,我们首先使用新闻文章中的暴力事件信息 (VIINA)数据集进行调查(在新标签页中打开)。之所以选择这个数据集,是因为它的复杂性以及存在不同意见和部分信息。这是一个混乱的真实世界测试案例,而且时间还不长,因此没有被纳入 LLM 基础模型的训练中。
在本研究中,我们使用了 2023 年 6 月来自俄罗斯和乌克兰新闻来源的数千篇新闻文章(翻译成英文),以创建一个私有数据集,我们将在该数据集上执行基于 LLM 的检索。该数据集太大,无法放入 LLM 上下文窗口,因此需要采用 RAG 方法。
我们从一个探索性查询开始,该查询针对基线 RAG 系统和我们的新方法 GraphRAG 提出:
疑问:“新俄罗斯是什么?”
传统RAG | GraphRAG |
---|---|
在提供的上下文中没有提到“新俄罗斯”一词。但是,为了提供一些信息,新俄罗斯是一个历史术语,指的是乌克兰南部的一个地区,该地区于 18 世纪被俄罗斯帝国征服。近年来,俄罗斯支持的乌克兰东部分离主义者重新使用这个词来指代他们声称拥有的领土,但它并未被国际机构正式承认为一个独立实体 | 新俄罗斯,又称新俄罗斯,是一个具有历史和当代意义的术语。从历史上看,它指的是俄罗斯帝国南部的一个地区,现在是乌克兰的一部分。在当代背景下,亲俄分裂分子用它来指代乌克兰的某些地区 [数据:实体 (6494, 912, 6493)]。 新俄罗斯一词曾用于乌克兰的政治运动,尤其是俄罗斯民族主义者。这场运动与破坏乌克兰稳定和建立所谓的“新俄罗斯”的努力有关 [数据:实体 (912);关系 (15211, 15206)]。该术语还被用来表示乌克兰的一个分离主义国家,即新俄罗斯联邦共和国 (FRN) [数据:实体 (7690)]。 |
在这些结果中,我们可以看到两个系统都表现良好 - 突出显示了基线 RAG 表现良好的一类查询。让我们尝试一个需要连接点的查询:
疑问:“新俄罗斯做了什么?”
传统RAG | GraphRAG |
---|---|
文中没有提供新俄罗斯所做之事的具体信息。 | 乌克兰的一个政治运动组织新俄罗斯参与了一系列破坏活动,特别是针对乌克兰的各种实体 [实体 (6494, 912)]。该运动与破坏乌克兰多个实体财产的计划有关,包括罗森、敖德萨罐头厂、敖德萨地区广播电视传输中心和乌克兰国家电视公司 [关系 (15207, 15208, 15209, 15210)]。除此之外,新俄罗斯还与破坏罗森、敖德萨音乐学院工厂、敖德萨地区广播电视传输中心和乌克兰国家电信公司的财产的计划有关 [关系 (8329, 8330, 8331, 8332)]。此外,新俄罗斯还涉嫌炸毁乌克兰最大国有银行 PrivatBank 的自动取款机 [关系 (8335, 8335)]。 乌克兰总检察长办公室报告了新俄罗斯的成立,表明政府对该运动活动的认识和潜在担忧 [关系 (8264, 8264)]。新俄罗斯的破坏性活动对目标实体产生了重大影响,并可能加剧了该地区持续的紧张局势和冲突。 总之,新俄罗斯参与了一系列针对乌克兰各实体的破坏性活动。这些活动对目标实体产生了重大影响,并可能加剧了该地区持续的紧张局势和冲突。乌克兰政府通过总检察长办公室承认了新俄罗斯的存在和活动,表明对该运动的行为感到一定程度的担忧。 |
传统RAG 无法回答这个问题。查看插入上下文窗口的源文档(图 1),没有任何文本片段讨论新俄罗斯,导致此问题。
相比之下,GraphRAG 方法在查询 Novorossiya 中发现了一个实体。这使得 LLM 能够在图中立足,并通过指向原始支持文本的链接得出包含出处的更优答案。例如,下图 2 显示了 LLM 用于 LLM 生成的声明“Novorossiya 涉嫌炸毁 ATM 机的计划”的确切内容。我们看到了原始源文档(经过英文翻译)中的片段,LLM 使用该片段通过图中两个实体之间存在的关系来支持特定银行是 Novorossiya 的目标这一断言。
通过使用 LLM 生成的知识图谱,GraphRAG 极大地改进了 RAG 的“检索”部分,用更高相关性的内容填充上下文窗口,从而得到更好的答案并捕获证据来源。
能够信任和验证 LLM 生成的结果始终很重要。我们关心的是结果是否正确、连贯,并准确代表源材料中的内容。GraphRAG 在生成每个响应时提供出处或来源基础信息。它表明答案是基于数据集的。随时提供每个断言的引用来源还使人类用户能够快速准确地直接对照原始源材料审核 LLM 的输出。
然而,这并不是使用 GraphRAG 所能实现的全部。
整个数据集推理
传统 RAG 很难处理需要汇总整个数据集的信息才能得出答案的查询。诸如“数据中的前 5 个主题是什么?”之类的查询表现不佳,因为 传统 RAG 依赖于对数据集内语义相似的文本内容进行向量搜索。查询中没有任何内容可以将其引导至正确的信息。
但是,使用 GraphRAG,我们可以回答这些问题,因为 LLM 生成的知识图谱的结构告诉我们整个数据集的结构(以及主题)。这允许将私有数据集组织成预先汇总的有意义的语义集群。在响应用户查询时,LLM 使用这些集群来总结这些主题。
我们通过向这两个系统提出以下问题来说明整个数据集的推理能力:
查询:“数据中的前 5 个主题是什么? ”
传统RAG | GraphRAG |
---|---|
1. 改善城市生活质量和城市发展。 2 . 弗拉基米尔·普京与阿联酋总统穆罕默德·本·扎耶德·阿勒纳哈扬会晤。 3 . 俄罗斯各地区投资环境全国评级。 4 . 俄罗斯经济状况和国内品牌增长。 5 . 讨论生命的意义以及科学在理解生命中的作用。 | 数据呈现出广泛的主题,但最常见的五个主题可以确定如下: 1.冲突与军事活动:很大一部分数据围绕乌克兰持续的冲突,许多报告详细介绍了各种实体的军事活动、占领和袭击。这一主题包括乌克兰军队、俄罗斯军队和其他各种军事单位和实体的行动 [数据:报告(513、241、151、493、343、+更多)]。 2.政治和政府实体:许多报告关注政治人物和政府实体,强调他们在当前形势下的角色、关系和行动。这包括克里姆林宫、乌克兰总统、美国国务院和各地区政府等实体 [数据:报告(98、493、265、129、196、+更多)]。 3.基础设施和环境问题:多份报告强调了潜在的环境影响和基础设施威胁。这些包括因工业活动造成的潜在环境破坏、洪水危机以及军事冲突对基础设施造成的威胁 [数据:报告(308、154、201、348、216、+更多)]。 4.社区分析和威胁评估:有几份报告对特定社区进行了详细的分析,通常以特定的地点或实体为中心。这些分析通常讨论社区内的关键实体、它们的关系以及任何相关威胁。许多报告还包括对与他们讨论的实体或情况相关的潜在威胁的评估 [数据:报告(323、596、518、583、179、+更多)]。 5.健康、人道主义关切和紧急情况:一些报告重点关注健康和人道主义问题,例如 Shereshevsky-Turner 综合征社区和敖德萨地区肠道疾病的潜在风险。数据还涵盖紧急情况,包括自然灾害、事故和袭击 [数据:报告(204、149、372、154、532 等)]。 这些主题全面概述了当前局势,突出了当前问题的复杂性和相互关联性。 |
查看基线 RAG 的结果,我们发现列出的主题与两国之间的战争没有太大关系。正如预期的那样,向量搜索检索到不相关的文本,这些文本被插入到 LLM 的上下文窗口中。所包含的结果很可能与“主题”一词有关,导致对数据集中发生的事情的评估不太有用。
通过观察 GraphRAG 的结果,我们可以清楚地看到,结果与整个数据集的情况更加一致。答案提供了在数据集中观察到的五个主要主题以及支持细节。参考报告由 LLM 为 GraphRAG 中的每个语义集群预先生成,进而提供对原始源材料的出处。
结论:GraphRAG——开启LLM的智慧新篇章
GraphRAG通过结合LLM生成的知识图谱与图机器学习,实现了查询时的提示增强,从而在处理上述两类问题时展现出超越其他方法的智能水平。这一创新不仅推动了LLM在未见数据上的表现边界,也为未来的研究和应用开辟了广阔前景。随着GraphRAG的应用,LLMs将在更广泛的领域展现其真正的潜力,为数据探索和分析带来前所未有的效率和深度。
通过GraphRAG,我们见证了LLMs如何克服挑战,实现对复杂和私有数据的深入理解和利用。这项技术不仅体现了微软研究院在LLM领域的持续创新,也为全球数据科学家和企业开辟了新的可能,让他们能够更有效地挖掘和利用内部数据的价值。