专栏名称: 知识图谱科技
务实的人工智能布道者。跟踪介绍国内外前沿的认知智能技术(知识图谱,大语言模型GenAI)以及医药大健康、工业等行业落地案例,产品市场进展,创业商业化等
目录
相关文章推荐
鱼羊史记  ·  752年,唐玄宗抱住虢国夫人:“朕能给玉环的 ... ·  23 小时前  
史事挖掘机  ·  21个鲜为人知的冷野史,个个惊艳!颠覆你的认知! ·  23 小时前  
历史大学堂  ·  1、AA制聚餐,选择性地参与。 2、与人聊天 ... ·  2 天前  
上下五千年故事  ·  他被蒋介石软禁33年,妻子让他婚内娶一护士, ... ·  5 天前  
51好读  ›  专栏  ›  知识图谱科技

微软GraphRAG最新动态:通过动态社区选择改善全球搜索

知识图谱科技  · 公众号  ·  · 2024-11-20 08:01

正文

GraphRAG: Improving global search via dynamic community selection

发布时间 2024 年 11 月 15 日

作者:Bryan Li , 研究实习生 Ha Trinh ,高级数据科学家 Darren Edge , 高级总监 Jonathan Larson , 高级首席数据架构师

摘要

微软研究人员开发了一种名为GraphRAG的动态社区选择方法,显著降低了全局搜索的成本(平均降低77%),同时保持了与静态方法相当的响应质量,甚至在某些方面有所改进。

Key Takeaways:

* GraphRAG使用分层知识图来回答需要整体数据集理解的“全局”查询。

* 动态社区选择方法通过预先评估社区报告的相关性来减少计算成本。

* 与静态方法相比,动态方法在保持类似响应质量的同时,将标记成本降低了77%。

* 动态方法允许搜索整个知识图,而不是预定义静态社区级别,从而可能产生更详细的答案。

* 使用较小的LLM模型进行相关性评分,降低了计算成本。

* 在AP新闻数据集上的实验表明,动态方法在全面性和赋权方面略有改进。

* 该方法的代码已在GraphRAG GitHub仓库上公开。

Source:

https://www.microsoft.com/en-us/research/blog/graphrag-improving-global-search-via-dynamic-community-selection/?msockid=319530cad9d968a21ba425f0d8bf692c

正文

检索增强生成 (RAG) 允许 AI 系统在生成对用户查询的响应时为大型语言模型 (LLM) 提供额外的信息和上下文。但是,基于 RAG 的传统方法可能难以检索需要整个数据集的高级知识的信息,尤其是对于抽象和全局问题,例如无关键字的查询:“Catch me up on the last two weeks of updates.”这些类型的查询称为 “全局” 查询,因为它们需要全面了解数据集才能回答问题。GraphRAG 旨在通过两个主要步骤来解决这些问题:索引和查询。索引引擎首先将文本文档的集合分解为多个段,然后这些段被聚集到分层社区中,其中的实体和关系通过更高级别的抽象将每个段连接起来。然后,我们使用 LLM 生成每个社区的摘要,称为社区报告。因此,索引引擎会创建数据集的分层知识图谱,层次结构中的每个级别都代表原始材料的不同抽象和总结级别。在查询步骤中,GraphRAG 使用此结构化知识为 LLM 提供额外的上下文,以帮助回答问题。在这篇博文中,我们展示了一种执行“全局”查询的新方法,该方法有效地利用了知识图谱表示并优化了 GraphRAG 中全局搜索的性能。

静态与动态全局搜索

GraphRAG 中的全局搜索算法旨在回答需要了解整个数据集的抽象问题。它通过在知识图谱中预先确定的级别搜索社区来生成答案。然后,LLM 在此抽象级别组合并总结所有社区报告。最后,摘要用作 LLM 的附加上下文,以生成对用户问题的响应。这个 map-reduce 过程允许 LLM 从所有社区报告中选择相关文本来生成其最终答案。这种静态方法成本高昂且效率低下,因为它包含许多对用户查询没有信息性的较低级别报告。由于不太可能所有社区报告(尤其是高级别报告)都与回答查询相关,因此非常可取在资源密集型 map-reduce 操作之前首先考虑报告的相关性的方法。

在这里,我们将动态社区选择引入全局搜索算法,该算法利用了索引数据集的知识图谱结构。从知识图谱的根开始,我们使用 LLM 来评估社区报告在回答用户问题方面的相关性。如果报告被认为不相关,我们只需从搜索过程中删除它及其节点(或子社区)即可。另一方面,如果认为报告相关,则我们向下遍历其子节点并重复该操作。最后,仅将相关报告传递给 map-reduce 操作,以生成对用户的响应。图 1 说明了动态社区选择过程。

图 1:动态社区选择工作流程

动态全局搜索方法有两个主要好处。首先,它会在早期删除不相关的报告,从而减少 map-reduce 操作中要考虑的社区报告总数。其次,它使用户能够搜索整个知识图谱,而不是预定义静态社区级别,并且可以获得更详细的答案。这允许它收集各种抽象级别的信息。此外,评级操作是一个分类问题,比摘要和文本生成要容易得多,因此可以使用不太复杂的模型。在我们利用 OpenAI 模型的实验中,GPT-4o-mini 评分者实现了与 GPT-4o 评分者非常相似的检索率,同时以极低的成本和时间运行。总体而言,我们在 rate 操作中使用更小、更具成本效益的模型 GPT-4o-mini 来删除任何不相关的社区报告,然后使用 GPT-4o 执行 map-reduce 操作以生成最终响应。

美联社新闻数据集上的动态社区选择

为了证明动态全局搜索在保持相似响应质量的同时带来的成本节约,我们在 AP News 的数据集上并排评估了这两种方法。我们测试了 50 个全局问题的静态和动态搜索,并使用 LLM 评估器评估了最终的回答质量。此外,我们比较了两种方法的总代币成本。为了直接比较这两种方法,我们限制了动态全局搜索的最大搜索深度,以便两种方法使用相同的基础信息。

我们使用 LLM 评估器根据 3 个关键指标选择最佳响应(即胜率):

  • 全面性:答案提供了多少细节来涵盖问题的所有方面和细节?

  • 多样性:在对问题提供不同的观点和见解时,答案的多样性和丰富性如何?

  • 赋权:答案在多大程度上帮助读者理解并对主题做出明智的判断?

在保持输出质量的同时显著降低成本


动态社区选择生成的响应质量与其静态响应质量相当,同时降低了总代币成本。我们的 LLM 评估表明,在 AP News 数据集的 50 个全球问题中,两种方法的输出质量在三个关键指标上相似,它们之间没有统计意义。更重要的是,我们观察到使用新方法时,代币总成本显著降低,与社区级别 1 的现有静态全局搜索相比,平均成本降低了 77%。这是因为通过评级过程会消除大量社区报告,因此 map-reduce 操作中需要的提示和输出令牌更少。例如,现有的静态全局搜索方法在 map-reduce 操作中处理大约 1500 份 1 级社区报告,而在动态搜索中平均只选择 470 份社区报告来生成最终答案。

此外,如果我们允许动态搜索继续评级流程,以进一步处理更深层次的社区报告,我们会观察到其最终响应有所改进。在这里,我们进行了相同的实验,但允许动态搜索持续到社区级别 3。在 50 个全局问题中,有 29 个包含的社区报告比我们的静态搜索基线多,这表明一些更深层次的社区报告与用户问题相关。事实上,我们观察到在综合性和赋权方面都有适度且具有统计学意义的改善。使用 LLM 评估器对响应对进行评分,我们观察到动态全局搜索的胜率分别为 58% 和 60%,而静态搜索位于 1 级。然而,虽然评级操作由较小的模型执行,因此产生的成本可以忽略不计,但由于 map-reduce 操作处理的社区报告数量增加,它仍然可能导致更高的总成本。在此实验中,第 3 级动态搜索的总成本平均高出 34%。表 1 总结了级别 1 的静态搜索与级别 1 和 3 的动态搜索的结果。

动态搜索 查询数量 静态搜索胜率(1 级) 相对成本
全面性 多样性 授权
1 级 50 49.5% 46.0% 48.0% -77%
3 级 29* 58.8% 48.0% 60.0% +34%

表 1.不同社区级别对全球问题动态搜索与静态搜索的法学硕士评估。

我们显示了 1 级和 3 级动态搜索相对于 1 级静态搜索的胜率,即 LLM 评估者更喜欢动态搜索生成的响应而不是静态搜索的次数。绿色背景表示胜率具有统计意义,如果胜率不显著,则为灰色单元格。最右侧的列显示 1 级静态搜索的平均相对标记成本。* 请注意,我们只评估社区级别 3 的动态搜索的答案,与级别 1 的静态搜索相比,动态搜索包含的社区报告更多。

总体而言,动态社区选择实现了 77% 的成本降低,同时实现了与基线静态方法相似的输出质量。这些数字似乎很有希望,但结果质量如何呢?让我们通过一个示例来研究一些直接的并排比较:

可比的响应质量和细节

查询:在整个数据集中,描述主要疾病疫苗接种率的常见趋势。
1 级静态全局搜索 全局搜索,在 3 级进行动态社区选择

### 主要疾病疫苗接种率的常见趋势

#### 疫苗接种率下降

在各个地区观察到的一个重要趋势是主要疾病的疫苗接种率下降。例如,明尼苏达州的免疫接种率下降,导致最近爆发了麻疹疫情 [数据:报告 (335)]。同样,COVID-19 大流行加剧了这个问题,导致密歇根州和其他地区的儿童免疫接种率下降 [数据:报告 (1231, 915)]。这种下降通常归因于有关疫苗的错误信息,特别是将 MMR 疫苗与自闭症联系起来的错误声明 [数据:报告 (912, 1335)]。

#### COVID-19 的影响

COVID-19 大流行对疫苗接种率产生了深远影响。努力提高 COVID-19 疫苗接种率一直是公共卫生政策的主要重点,但大流行也导致儿童常规疫苗接种率下降 [数据:报告 (920, 194)]。大流行影响了公众对健康措施和疫苗接种的态度,导致了更广泛的公共卫生挑战 [数据:报告 (920)]。

#### 区域差异

疫苗接种率因地区而异。例如,西弗吉尼亚州拥有美国最严格的学校疫苗接种政策之一,导致儿童免疫接种率很高 [数据:报告 (1199)]。相比之下,爱达荷州的总体儿童疫苗接种豁免率是美国最高的,构成重大的公共卫生风险 [数据:报告 (998)]。伊利诺伊州面临学校疫苗接种率低的挑战,导致麻疹爆发 [数据:报告 (108, 82)]。

#### 公共卫生倡议

已经实施了各种公共卫生举措来解决疫苗接种率问题。CDC 在监测和报告麻疹、腮腺炎和脊髓灰质炎等疾病的疫苗接种率方面发挥着至关重要的作用,并提供有关可预防疾病的重要信息 [数据:报告 (914)]。西弗吉尼亚州的“Do It For Babydog”抽奖活动等项目鼓励居民接种疫苗 [数据:报告 (1199)]。此外,比尔和梅琳达·盖茨基金会积极参与资助和支持针对脊髓灰质炎、疟疾、艾滋病毒和霍乱等主要疾病的疫苗接种项目[数据:报告(1091)]。

## 结论

该数据集揭示了受区域政策、公共卫生举措和 COVID-19 大流行影响的疫苗接种率的复杂情况。虽然一些地区通过严格的政策和公共卫生活动设法保持了高疫苗接种率,但其他地区由于错误信息和豁免率而面临重大挑战。全球努力和合作对于应对这些挑战和提高全球疫苗接种覆盖率仍然至关重要。

### 主要疾病疫苗接种率的常见趋势

#### 疫苗接种率下降

在整个数据集中观察到的一个重要趋势是各种疾病的疫苗接种率下降,包括麻疹、腮腺炎、风疹 (MMR) 和脊髓灰质炎。这种下降在美国幼儿园中尤为明显,疫苗接种覆盖率从 2019-2020 学年的 95.2% 下降到 2022-2023 学年的 93.1%。这一减少低于实现群体免疫所需的 95% 阈值,每年使大约 250,000 名幼儿园儿童处于风险之中 [数据:报告(5668、15469、15703、15481、15471、+更多)]。

#### COVID-19 大流行的影响

COVID-19 大流行对疫苗接种率产生了深远影响。推广 COVID-19 疫苗接种的努力一直是一个主要重点,密歇根州和伊利诺伊州等地区的举措为学生提供免费膳食并推广更新的 COVID-19 疫苗 [数据:报告 (19125, 15466)]。然而,大流行也扰乱了常规疫苗接种计划,导致麻疹等疾病的覆盖率降低,并导致最近的疫情爆发 [数据:报告(15464、15674、15482、15481、+更多)]。

#### 地区差异和立法措施

美国各地的疫苗接种率和豁免率存在显着的地区差异。例如,西弗吉尼亚州对入学儿童实施了严格的免疫接种要求,导致儿童免疫接种率很高 [数据:报告 (5674, 18874, 18899)]。相比之下,明尼苏达州和伊利诺伊州等州的非医疗豁免有所增加,导致疫苗接种率降低和最近的疫情爆发 [数据:报告(15483、15481、108、2705、+更多)]。

#### 提高疫苗接种率的努力

已经采取了各种举措和立法措施来应对疫苗接种率下降的问题。例如,信德省政府提出了一项脊髓灰质炎疫苗接种法案,其中包括对不为孩子接种疫苗的父母的监禁条款 [数据:报告 (15398)]。在美国,CDC 建议 6 个月及以上的每个人接种新的 COVID-19 疫苗,并发起了确保公平获得疫苗的举措,尤其是在发展中国家 [数据:报告(15847、15571、15691、15694、+更多)]。

# 结论

该数据集揭示了受 COVID-19 大流行、疫苗犹豫、错误信息和地区差异影响的疫苗接种率的复杂情况。虽然正在努力提高疫苗接种率,但免疫覆盖率的下降构成了重大的公共卫生风险,凸显了持续警惕和采取积极措施的必要性,以确保高疫苗接种率并防止疫苗可预防疾病的爆发。

表 2.从静态搜索(1 级)和动态搜索(3 级)对 AP News 数据集上的同一全局问题生成的响应。

表 2 显示了 1 级静态搜索和3 级动态搜索对同一问题的输出示例。虽然这两个输出包含类似的高级主题,但动态搜索的响应提供了具体数据,例如某些人群中疫苗接种率的降低。我们还注意到,动态搜索的响应对源材料的引用明显更多,如文本中的“[数据报告]”所示。通过选择性地提供与问题相关的信息,这减轻了 map-reduce 操作的负担,使其不必一次筛选和处理所有社区报告,因此它可以生成更全面、更特定于用户问题的响应。

总体而言,动态社区选择提出了一种在 GraphRAG 中执行全局搜索的替代方法,该方法利用索引知识图谱和在速率相关性操作中使用更便宜的 LLM 模型。这些更改降低了总令牌成本,并可能改善响应的细节和质量。

可用性

您可以在 GraphRAG GitHub 存储库

(https://github.com/microsoft/graphrag) 上尝试动态全局搜索。

动态全局搜索是 GraphRAG 正在探索的几项主要优化中的第二项。

如果您对本地问题的优化感兴趣,请查看我们最近关于 DRIFT 搜索的博客文章 微软GraphRAG 0.4.0&DRIFT图推理搜索更新 。请继续关注我们即将开展的工作,我们将探索一种完全不同的图形支持 RAG 的方法,该方法明显更具成本效益,同时提高了本地和全球问题的答案质量。

参考文献

  1. 微软GraphRAG 0.4.0&DRIFT图推理搜索更新

  2. 企业级知识库为什么要用GraphRAG - 硅谷企业级ChatGPT独角兽Glean系列之二

  3. 企业智能知识库企业Glean利用GraphRAG融资2.6亿美元

  4. 重磅 - 微软官宣正式在GitHub开源GraphRAG

  5. 开源GraphRAG解读:微软的人工智能驱动知识发现方法

  6. GraphRAG工程落地成本详细解读和实例分析

  7. GraphRAG类型、限制、案例、使用场景详细解析

  8. 引入GraphRAG的场景条件分析

  9. 不适用生成式人工智能的场景







请到「今天看啥」查看全文