发布时间 2024 年 11 月 25 日
作者:Darren Edge , 高级总监 Ha Trinh , 高级数据科学家 Jonathan Larson , 高级首席数据架构师
LazyGraphRAG: Setting a new standard for quality and cost - Microsoft Research
摘要:
微软研究院推出了LazyGraphRAG,这是一种新型的图谱增强生成增强检索(RAG)方法。这种方法显著降低了索引和查询成本,同时在回答质量上保持或超越竞争对手,使其在多种用例中具有高度的可扩展性和高效性。
关键要点:
- **成本效益**:LazyGraphRAG在数据索引成本方面大幅下降,仅为GraphRAG的0.1%。同时,其成本与向量RAG相当。
- **查询性能**:在与向量RAG相近的查询成本下,LazyGraphRAG在本地查询方面的性能超越了其他竞品。
- **全局查询质量**:对全局查询,LazyGraphRAG在查询成本下降超过700倍的情况下,其答案质量与GraphRAG全球搜索相当。
- **可伸缩性**:LazyGraphRAG的性能随着相关性测试预算的调整而扩大,提供了成本和质量之间的权衡选择。
- **几乎无需索引成本**:该方法的索引成本几乎为零,适合进行一次性查询、探索性分析和流数据处理。
- **灵活性**:LazyGraphRAG的灵活性使其能在本地和全局查询范围内超越传统的专门查询机制。
- **开源可用性**:LazyGraphRAG将很快在开源的GraphRAG库中提供。
Source:
https://www.microsoft.com/en-us/research/blog/lazygraphrag-setting-a-new-standard-for-quality-and-cost/
正文:
适用于各种用例的经济实惠的 GraphRAG
https://aka.ms/graphrag 项目旨在通过利用非结构化文本中的隐式关系来扩展 AI 系统可以在私有数据集上回答的问题类别。
与传统向量 RAG(或“语义搜索”)相比,GraphRAG 的一个关键优势是它能够回答针对整个数据集的全局查询,例如“数据中的主要主题是什么”或“对 X 最重要的影响是什么?相反,矢量 RAG 擅长于答案类似于查询并且可以在特定文本区域中找到的本地查询,例如“who”、“what”、“when”和“where”问题的典型情况。
在这篇博文中,我们介绍了一种完全不同的支持图的 RAG 方法,该方法不需要事先对源数据进行总结,从而避免了对某些用户和用例来说可能令人望而却步的前期索引成本。我们将这种方法称为 “LazyGraphRAG”。
LazyGraphRAG 的一个关键优势是它在成本和质量方面固有的可扩展性。在一系列竞争方法(标准载体 RAG、RAPTOR, 和GraphRAG local,全局搜索机制),LazyGraphRAG 在成本质量范围内显示出强大的性能,如下所示:
-
LazyGraphRAG 数据索引成本与矢量 RAG 相同,是完整 GraphRAG 成本的 0.1%。
-
对于与矢量 RAG 相当的查询成本,LazyGraphRAG 在本地查询上优于所有竞争方法,包括长上下文向量 RAG 和 GraphRAG 漂移搜索(我们最近推出的 RAG 方法显示性能优于矢量 RAG)以及 GraphRAG 本地搜索。
-
对于全局查询,相同的 LazyGraphRAG 配置也显示出与 GraphRAG Global Search 相当的答案质量,但查询成本低 700 倍以上。
-
对于 GraphRAG 全局搜索 4% 的查询成本,LazyGraphRAG 在本地和全局查询类型上都明显优于所有竞争方法,包括 C2 级别的 GraphRAG 全局搜索(为大多数应用程序推荐的社区层次结构的第三级)。
LazyGraphRAG即将在我们的开源GraphRAG库中推出,提供一个统一的查询接口,用于轻量级数据索引的本地和全局查询,其成本可与标准向量RAG相媲美。
将向量 RAG 和GraphRAG 与延迟 LLM 使用混合
LazyGraphRAG 旨在融合向量RAG 和GraphRAG 的优点,同时克服它们各自的局限性:
-
矢量 RAG 是一种最佳优先搜索形式,它使用与查询的相似性来选择最匹配的源文本块。但是,它不知道全局查询要考虑的数据集的广度。
-
GraphRAG 全局搜索是一种广度优先搜索形式,它使用源文本实体的社区结构来确保在考虑数据集的全部广度的情况下回答查询。但是,它不知道本地查询要考虑的最佳社区。
LazyGraphRAG 以迭代深化的方式结合了最佳优先和广度优先搜索动态(表 1)。与完整 GraphRAG 的全局搜索机制相比,这种方法在延迟 LLM 使用并显着提高答案生成效率的方式上是“懒惰的”。整体性能可以通过一个主要参数(相关性测试预算)进行扩展,该参数以一致的方式控制成本-质量权衡。
|
| GraphRAG | LazyGraphRAG |
| — | — | — |
| Build index构建索引 | 使用 LLM 提取和描述实体及其关系,b) 使用 LLM 总结每个实体和关系的所有观察结果,c) 使用图形统计来优化实体图并提取分层社区结构 | 使用 NLP 名词短语提取来提取概念及其共现,b) 使用图形统计来优化概念图并提取分层社区结构 |
|
|
|
|
| 优化查询 | None – 整个过程中使用原始查询 | 使用 LLM 来 a) 识别相关的子查询并将它们重新组合成一个扩展的查询,b) 使用概念图中的匹配概念来优化子查询 |
| 匹配查询 | None – 使用所有社区摘要回答所有查询 ( 广度优先 ) | 对于每个 q 子查询 [3-5]:
– 使用文本块嵌入和块-社区关系,首先按与查询的相似性对文本块进行排名,然后按其排名靠前的社区排名对社区进行排名k 个文本块 ( 最好在前 )
– 使用基于 LLM 的句子级相关性评估器来评估前 -k 个来自社区的未经测试的文本块(按排名顺序排列)( 广度优先 )
– 递归到子社区之后z个连续社区产生零相关文本块,或达到相关性测试预算 / Q( 迭代加深 ) |
| 地图答案 | 使用 LLM 并行回答随机批次社区摘要的原始查询 | 对于每个 q 子查询 [3-5]:
– 从相关文本块构建概念子图
– 使用概念的社区分配将相关块分组在一起
– 使用 LLM 从相关块组中提取与子查询相关的声明,作为仅关注相关内容的一种方式
– 对提取的声明进行排名和过滤,以适应预定义的上下文窗口大小 |
| 减少答案 | 使用 LLM 通过映射的答案来回答原始查询 | 使用 LLM 通过提取的 map 声明来回答扩展的查询 |
LazyGraphRAG答案质量是最先进的
我们将不同水平相关性测试预算的 LazyGraphRAG 与一系列竞争方法进行了比较,如下所示:
-
数据集:5,590 篇美联社新闻文章(需使用许可证)
-
查询:100 个综合查询(50 个本地查询和 50 个全局查询),使用新方法生成,将在以后的博客文章中介绍
-
指标:全面性、多样性、赋权(如此处所述,LLM 用于直接比较每个指标的答案对)
-
条件:包括具有三个相关性测试预算设置的 LazyGraphRAG,以及来自 GraphRAG 和文献的八个竞争条件(表 2)。
条件 | 描述 |
---|---|
Z100_Lite | LazyGraphRAG 的相关性测试预算为 100,并在所有步骤中使用低成本的 LLM 模型 |
Z500 | LazyGraphRAG,相关性测试预算为 500,使用低成本的 LLM 进行相关性测试,使用更高级(成本更高)的 LLM 进行查询细化和 map/reduce 答案生成 |
Z1500 | LazyGraphRAG 的相关性测试预算为 1,500,使用低成本的 LLM 进行相关性测试,使用更高级(成本较高)的 LLM 进行查询细化和 map/reduce 答案生成 |
C1 | 社区级别 1 的 GraphRAG 全局搜索 |
C2 | 社区级别 2 的 GraphRAG 全局搜索 |
C3_Dynamic | 使用动态社区选择在社区级别 3 进行 GraphRAG 全局搜索(我们之前的博客文章中介绍了一种节省成本的解决方案) |
LS | GraphRAG 本地搜索 |
DRIFT | GraphRAG DRIFT 搜索 |
SS_8K | 使用向量 RAG 进行语义搜索,检索 8k 个输入令牌 |
SS_64K | 使用向量 RAG 检索 64k 输入标记的语义搜索(包括用于检查长上下文窗口对向量 RAG 的影响) |
RAPTOR | 一种基于分层聚类的 RAG 方法,与 LazyGraphRAG 有一些相似的功能 |
图 1 显示了 LazyGraphRAG 在八种竞争条件下的胜率。在使用低成本 LLM 模型的 100 次相关性测试的最低预算水平(与 SS_8K 的成本相同)时,LazyGraphRAG 在本地和全局查询上的表现明显优于所有条件,除了全局查询的 GraphRAG 全局搜索条件。在使用更高级的 LLM 模型(C2 查询成本的 4%)增加 500 次相关性测试的预算下,LazyGraphRAG 在本地和全局查询上都明显优于所有条件。随着相关性测试预算增加到 1,500,LazyGraphRAG 的胜率不断提高,证明了它在成本与质量方面的可扩展性。
图 1.簇状条形图显示了 LazyGraphRAG 的胜率,相关性测试预算为 (100、500、1,500) 在竞争条件下,针对(本地、全球)查询和(全面性、多样性、赋能)指标的每种组合
表 3 显示了一个示例比较。
查询:描述美国个人在 2024 年健康保险计划的开放注册期间选择健康保险计划时应考虑哪些因素。
矢量 RAG(64K 上下文) | LazyGraphRAG |
---|---|
# 在 2024 年开放注册期间选择健康保险计划时要考虑的因素 |
在开放注册期间选择健康保险计划可能是一个复杂的过程,但了解要考虑的关键因素可以帮助个人做出明智的决定。以下是一些需要牢记的重要方面:
## 覆盖范围和网络
主要考虑因素之一是计划的覆盖网络。保险公司形成了医院和医生的覆盖网络,确保您首选的医疗保健提供者包含在您正在考虑的计划网络中至关重要。许多市场计划,例如健康维护组织 (HMO) 和独家提供者组织 (EPO),不涵盖其网络外的大多数非紧急护理的索赔 [数据:来源 (47419, 47421, 47420, 47410, 47408)]。
## 费用:保费、免赔额和自付费用最高限额
了解与健康保险计划相关的费用至关重要。这包括每月保费、免赔额、共付额和共同保险。计划通常分为不同的级别,例如白金、黄金、白银和青铜,青铜计划的保费通常较低,但自付费用较高 [数据:来源(47411、47412、47416、47414、47418)]。此外,重要的是要考虑自付费用的最高限额,这是在保险开始承保所有费用之前,您在一年内必须为承保服务支付的最高金额 [数据:来源 (47416, 47415)]。
## 税收抵免和成本分摊减免
收入较低的个人可能有资格获得基于收入的税收抵免,以帮助降低保费成本。在申请这些抵免时,准确估计您来年的收入非常重要,以避免偿还收到的任何超额抵免 [数据:来源 (47412, 47413)]。此外,那些收入低于联邦贫困线 250% 的人如果选择白银计划,可能有资格获得成本分摊减免,这可以降低免赔额和自付费用最高限额 [数据:来源 (47417, 47418)]。
## Medicaid 和 Medicare 的特殊注意事项
对于那些从 Medicaid 过渡的人来说,重要的是要了解与 Medicaid 相比,市场计划可能具有更高的保费和共付额。此外,许多被从 Medicaid 中删除的人可能有资格通过延长的注册期加入市场计划 [数据:来源 (6284, 6285, 6286, 6287)]。对于老年人,Medicare 开放注册期允许在传统 Medicare 和 Medicare Advantage 计划之间切换,并考虑处方药承保范围和牙科和视力等额外福利 [数据:来源(72060、72061、72062、72063、72064)]。
## 援助和资源
驾驭健康保险的复杂性可能具有挑战性,寻求保险代理人或政府资助的导航员的帮助可能是有益的。这些专业人员可以帮助个人了解他们的选择并做出明智的决定,而无需推荐具体计划 [数据:来源 (47424, 47425, 47426)]。
# 结论
选择合适的健康保险计划需要仔细考虑各种因素,包括覆盖网络、成本、税收抵免和成本分摊减免的资格以及可用的帮助。通过彻底评估这些方面,个人可以选择最能满足他们来年的医疗保健需求和财务状况的计划。 | ### 健康保险计划的类型
在 2024 年开放注册期间选择健康保险计划时,美国个人有几种选择可供考虑:
1. **Marketplace 计划**:这些计划根据《平价医疗法案》(ACA) 提供,分为白金、黄金、白银和青铜级别。青铜计划的保费通常较低,但自付费用较高,而白金计划的保费较高,但自付费用较低 [数据:来源 (47411, 47420, 47421)]。
2. **低成本市场计划**:这些通常带有高免赔额,需要患者支付数千美元才能获得大多数保险。他们的年度自付费用最高限额可能超过 9,000 美元,家庭最高可达 18,000 美元 [数据:来源 (47415, 47416, 47414)]。
3. **独家提供者组织 (EPO) 和健康维护组织 (HMO)**:EPO 和 HMO 通常将患者限制在医生网络中,并需要初级保健医生指导护理。它们往往更便宜,但缺乏网络外的灵活性 [数据:来源 (47420, 47421, 43218, 43217)]。
4. **首选提供商组织 (PPO)**:这些计划允许网络外服务,但成本更高。与 HMO 和 EPO 相比,它们提供了更大的灵活性 [数据:来源 (43217)]。
5. **高免赔额健康计划 (HDHP)**:定义为个人保险免赔额至少为 1,600 美元或家庭保险至少 3,200 美元的计划,自付费用最高限额分别为不超过 8,050 美元或 16,100 美元。HDHP 的保费通常较低,有时公司会向健康储蓄账户 (HSA) 供款以帮助支付免赔额 [数据:来源 (43227, 43226)]。
6. **Medicare Advantage**:这些是联邦政府 Medicare 计划的私人版本,主要面向 65 岁及以上的人。它们通常包括处方药保险,并可能提供传统 Medicare 未提供的额外福利,例如牙科或视力保险 [数据:来源 (72063, 72061, 72060, 72062)]。
7. **短期健康保险计划**:根据新规定,这些计划限制为三个月,并且最多只能续订四个月。它们旨在提供临时保险,但通常缺乏全面的保障 [数据:来源 (97999, 97995, 97996, 97997)]。
### 成本因素:保费、免赔额、共付额和自付费用最高限额
2024 年健康保险计划的总体成本受以下几个因素影响:
– **保费**:这是您为健康保险计划支付的固定每月费用。保费一直在上涨,2023 年家庭和单身计划的保费均显着增长了 7%,部分原因是通货膨胀 [数据:来源(83383、83382、83384、83385、83381、+更多)]。
– **免赔额**:在保险开始支付之前,您自掏腰包支付的医疗保健服务金额。对于 HDHP,个人保险的免赔额至少为 1,600 美元或家庭保险至少 3,200 美元 [数据:来源 (43226, 43225)]。
– **共付额和共同保险**:这些是您每次接受医疗服务时支付的费用。共付额是固定金额,而共同保险是服务成本的一定百分比。
– **自付费用最高限额**:这是您在一年内为承保服务支付的最高金额。例如,HDHP 的个人保险自付费用最高限额不超过 8,050 美元,家庭保险的最高自付费用不超过 16,100 美元 [数据:来源 (43227, 43226)]。
### 提供商网络:网络内与网络外
医疗保健提供者网络是选择健康保险计划的关键因素:
– **网络内提供者**:这些是与您的保险计划达成协议以较低费率提供服务的医生和医院。确保您首选的医生和专家在网络内可以为您节省大量费用 [数据:来源 (43216, 47419)]。
– **网络外提供者**:这些提供者的服务通常更昂贵,除非在紧急情况下,否则可能根本不在承保范围内。PPO 计划提供一些网络外保险,但成本较高,而 HMO 和 EPO 通常不承保非紧急网络外护理 [数据:来源 (43217, 47421)]。
### 特定医疗需求和服务
在选择健康保险计划时,个人应考虑他们的特定医疗需求:
– **处方药**:确保您的药物包含在计划的处方集范围内,因为药物承保范围每年都会发生变化 [数据:来源 (43220, 43218, 43219)]。
– **心理健康服务**:心理健康治疗的承保范围是必不可少的,尤其是在新规则推动保险公司增加这些服务的承保范围的情况下 [数据:来源(97031、97028、97027、97030、97033、+更多)]。
– **慢性病**:计划应涵盖针对慢性病的持续治疗和药物。Medicare 补充保险 (Medigap) 可以帮助弥补 Medicare 在慢性病管理方面的差距 [数据:来源 (93367, 93368)]。
– **预防保健**:ACA 强制要求涵盖癌症筛查和 HIV 预防等预防服务,但由于正在进行的法律斗争,其未来不确定 [数据:来源(71106、71109、71098、71099、71100、+更多)]。
### 开放注册的关键日期和步骤
2024 年健康保险计划的开放注册期涉及几个关键日期和步骤:
– **市场计划**:开放注册从 2023 年 11 月 1 日开始,在大多数州持续到 12 月中旬,到 2024 年 1 月 16 日结束 [数据:来源(47419、47411、47416、47421、47409、+更多)]。
– **医疗保险**:Medicare 的开放注册时间为 2023 年 10 月 15 日至 2023 年 12 月 7 日。在此期间,个人可以在传统的 Medicare、Medicare Advantage 计划和处方药计划之间进行选择 [数据:来源 (72061, 72063, 72060, 72062)]。
– **特殊注册期**:由于失业或搬家等生活事件而失去保险的个人可能有资格参加特殊注册期。例如,那些被从 Medicaid 中删除的人可以在 2024 年 7 月之前加入市场计划 [数据:来源 (6288, 6289)]。
通过考虑这些因素,个人可以就 2024 年的健康保险范围做出明智的决定,确保他们选择最能满足其医疗需求和财务状况的计划。 |
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。