贝莱德&英伟达 - HybridRAG:整合GraphRAG和VectorRAG以实现金融信息高效提取

Abstract 摘要

从金融应用中产生的非结构化文本数据中提取和解释复杂信息,例如收益电话会议记录,即使使用当前最佳实践进行检索增强生成(RAG)(称为利用向量数据库进行信息检索的VectorRAG技术),也对大型语言模型(LLMs)提出了重大挑战,原因包括领域特定术语和文档复杂格式等挑战。我们提出了一种基于组合的新方法,称为HybridRAG,它结合了基于知识图谱(KGs)的RAG技术(称为GraphRAG)和VectorRAG技术,以增强从金融文档中提取信息的问题回答(Q&A)系统,已证明能够生成准确且具有上下文相关性的回答。通过对一组以Q&A格式呈现的金融收益电话会议记录文档进行实验,从而提供了一组自然的真实Q&A对,我们显示HybridRAG从向量数据库和KG中检索上下文的能力,在检索准确性和答案生成方面,在检索和生成阶段的评估中,优于传统的VectorRAG和GraphRAG。该技术的应用超出了金融领域。

1.Introduction 简介

对于金融分析师来说,从非结构化数据源中提取和分析信息至关重要,诸如新闻文章、财报及其他金融文件,以便至少有一些机会相比竞争对手获取潜在信息的不对称。这些源中包含的宝贵见解可能影响投资决策、市场预测和整体情绪。然而,传统数据分析方法在有效提取和利用这些信息方面由于其非结构化特性而面临挑战。大型语言模型(LLMs)已经成为金融服务和投资管理的强大工具。它们处理和理解大量文本数据的能力使其在情感分析、市场趋势预测和自动报告生成等任务中不可或缺。具体而言,从年度报告及其他金融文件中提取信息可以大大提高金融分析师的效率和准确性。一个强大的信息提取系统可以帮助分析师快速收集相关数据,识别市场趋势并做出明智决策,从而制定更好的投资策略和风险管理。

尽管LLMs在金融应用中具有相当大的潜力,但在使用预训练模型从其训练数据之外的金融文件中提取信息时,仍存在明显的挑战,同时还要减少幻觉。金融文件通常包含领域特定的语言、多种数据格式以及独特的上下文关系,而通用训练的LLMs并不能很好地处理。此外,由于不同文本源之间术语、格式和上下文的差异,从多个金融文件中提取一致且连贯的信息可能会面临挑战。金融文件中的专业术语和复杂数据格式使得模型难以提取有意义的见解,反过来又导致不准确的预测、被忽视的见解和不可靠的分析,这最终阻碍了做出明智决策的能力。(注:这些问题和医药领域面临的挑战有类似)

当前解决这些问题的方法包括各种检索增强生成技术RAG,旨在通过结合相关的检索技术来提高大型语言模型LLM的性能。VectorRAG(基于向量数据库的传统RAG技术)专注于通过检索相关的文本信息来支持生成任务,从而改善自然语言处理NLP任务。在需要从相关文本文档中获取上下文以生成有意义且连贯的响应时,VectorRAG表现出色。基于RAG的方法确保LLM生成的响应相关且连贯,与原始输入查询保持一致。

然而,对于金融文档,这些方法作为单一解决方案面临重大挑战。例如,传统RAG系统通常使用段落级分块技术,该技术假设文档中的文本长度是统一的。这种方法忽视了财务报表的层次特性,可能导致在准确分析中丧失关键的上下文信息。由于分析金融文档的复杂性,从广泛且异质的语料库中检索到的LLM上下文质量可能不一致,导致不准确和不完整的分析。这些挑战表明,需要更复杂的方法,能够有效整合和处理金融文档中详细且特定领域的信息,从而确保为知情决策提供更可靠和准确的结果。

知识图谱(KGs)可能为查看金融文件提供不同的视角,这些文件被视为一组三元组及其关系的集合,如文件文本中所示。KGs已成为数据管理和分析中的关键技术,通过实体和关系提供结构化的知识表示,并已在多个领域广泛应用,包括搜索引擎、推荐系统和生物医学研究。KGs的主要优势在于其提供结构化表示的能力,这促进了高效的查询和推理。然而,构建和维护KGs,并将来自不同来源的数据(例如文件、新闻文章和其他外部来源)整合成一致的知识图谱,面临重大挑战。

金融服务行业已认识到KGs在增强异构数据源的数据集成、风险管理和预测分析方面的潜力。金融KGs整合了各种金融数据源,如市场数据、财务报告和新闻文章,创建了对金融实体及其关系的全面视图。这种统一的视图提高了金融分析的准确性和全面性,通过识别隐藏的关系促进风险管理,并支持更准确的市场预测和投资决策的高级预测分析。然而,处理大量金融数据并持续更新知识图谱以反映金融市场的动态特性可能是具有挑战性的且资源密集型的。

GraphRAG(基于图的检索增强生成)是一种新颖的方法,利用知识图谱(KGs)提升自然语言处理任务的性能,例如问答系统。通过将KGs与RAG技术相结合,GraphRAG能够基于从金融文件中提取的结构化信息,更准确且具上下文感知地生成响应。但GraphRAG在抽象问答任务中表现不佳,或者当问题中没有明确提及实体时。

在本研究中,我们提出了一种结合VectorRAG和GraphRAG的方法,称为HybridRAG,旨在从外部文档中检索与给定查询相关的信息,以便将两种RAG的优点结合起来,为查询提供明显更准确的答案。

1.1.前期工作和我们的贡献

VectorRAG在近年来得到了广泛的研究,重点是通过检索相关文本信息来支持生成过程,从而增强NLP任务。然而,在多个文档和较长上下文中检索机制的有效性在提取相关响应方面提出了重大挑战。GraphRAG结合了知识图谱(KGs)与RAG的能力,以改善传统的NLP任务。

在我们对VectorRAG和GraphRAG技术的实现中,我们明确添加了文档元数据的信息,这也被证明改善了VectorRAG的性能。根据我们所知,目前的工作是首次提出结合VectorRAG和GraphRAG的混合RAG方法,并展示了通过利用VectorRAG和GraphRAG的结合优势来更有效分析和利用金融文档的潜力。

我们还利用了从Nifty-50指数中包含的公司的公开财务电话会议记录中提取的新的真实答案问答数据集,Nifty-50指数是一个代表在国家证券交易所上市的50家最大的印度公司的加权平均的印度股票市场指数。

2.Methodology 方法

在本节中,我们提供了所提议方法的详细信息,首先讨论VectorRAG的细节,然后讨论从给定文档构建知识图谱的方法,以及我们提出的GraphRAG方法,最后介绍HybridGraph技术。

2.1.VectorRAG

传统的RAG过程始于与外部文档中所拥有的信息相关的查询,这些文档并不是LLM训练数据集的一部分。该查询用于搜索外部存储库,例如向量数据库或索引语料库,以获取包含有用信息的相关文档或段落。这些检索到的文档随后被反馈回LLM作为额外的上下文。因此,对于给定的查询,语言模型生成的响应不仅基于其内部训练数据,还结合了检索到的外部信息。这种整合确保生成的内容基于更新且可验证的数据,从而提高响应的准确性和语境相关性。通过将外部信息的检索与大型语言模型的生成能力相结合,RAG提高了生成文本的整体质量和可靠性。

在传统的VectorRAG中,由于语言模型上下文大小的限制,给定的外部文档被分成多个块。这些块使用嵌入模型转换为嵌入,然后存储到向量数据库中。之后,检索组件在向量数据库中执行相似性搜索,以识别和排名与查询最相关的块。排名最高的块被检索并聚合,以提供生成模型的上下文。

随后,生成模型将此检索到的上下文与原始查询结合,合成响应。因此,它将从检索到的块中获取的实时信息与其现有知识相结合,确保响应既相关又详细。

图1中的示意图提供了传统VectorRAG方法中从给定外部文档生成向量数据库的RAG部分的详细信息,我们还包括了对元数据的明确引用。第4.2节将提供我们实验的实现细节。

图1.RAG应用程序的向量数据库创建示意图

2.2.Knowledge Graph Construction 知识图谱构建

知识图(KG)是对现实世界实体、其属性及其关系的结构化表示,通常存储在图数据库或三元组存储中,即知识图由表示实体的节点和表示关系的边组成,以及两者的标签和属性。图三元组是知识图中的基本信息单元,由主题、谓词和对象组成。

在大多数构建知识图的方法论中,从给定文档中涉及三个主要步骤:

知识提取、知识改善和知识融合。在这里,我们不使用知识融合,而是将知识图视为静态图。

知识提取:此步骤旨在从非结构化或半结构化数据(如文本、数据库和现有本体)中提取结构化信息。此步骤中的主要任务是实体识别、关系提取和共指消解。实体识别和关系提取技术通过典型的自然语言处理任务从文本源中识别实体及其关系。共指消解识别并连接同一实体的不同引用,保持知识图的一致性。例如,如果文本中将一家公司称为“公司”和“它”,共指消解可以将这些提及链接到图中的同一实体节点。

知识改善:此步骤旨在通过消除冗余和解决提取信息中的空白来增强知识图的质量和完整性。此步骤中的主要任务是知识图补全和融合。知识图补全技术使用链接预测和实体解析等方法推断图中缺失的实体和关系。链接预测基于图结构和特征预测两个实体之间关系的存在性和类型,而实体解析则匹配和合并来自不同来源的同一实体的不同表示。

知识融合则是结合来自多个来源的信息,以创建一个连贯且统一的知识图。这涉及解决来源之间的冲突和冗余,比如矛盾或重复的事实,并根据规则、概率或语义相似性聚合或协调这些信息。

我们采用了一种稳健的方法,从非结构化文本数据中创建知识图三元组,特别关注企业文件,如财报电话会议记录,改编自文献。此过程涉及多个相互关联的阶段,每个阶段都旨在有效地提取、精炼和结构化信息。

我们实施了一个两层的LLM链,用于内容精炼和信息提取。第一层使用一种LLM生成每个文档块的抽象表示。这个精炼过程至关重要,因为它提炼出本质信息,同时保留原始意义和概念之间的关键关系,作为后续处理的更集中输入,从而提高我们三元组提取管道的整体效率和准确性。我们LLM链的第二层专注于实体提取和关系识别。

两个步骤都是通过对预训练LLM进行精心设计的提示工程来执行的。关于该方法实现的详细讨论将在第4.1节中提供。

2.3.GraphRAG

KG 基于 RAG 或 GraphRAG 也以用户输入为基础开始查询,与 VectorRAG 相同。VectorRAG 和 GraphRAG 之间的主要区别在于检索部分。这里的查询现在用于搜索知识图谱,以检索与查询相关的节点(实体)和边(关系)。从完整的知识图谱中提取出一个子图,该子图由这些相关节点和边组成,以提供上下文。

然后,这个子图与语言模型的内部知识结合,通过将图结构编码成模型可以解释的嵌入。语言模型使用这种结合的上下文生成响应,这些响应由知识图谱中的结构化信息和其预训练知识共同支持。关键是,在回应用户关于特定公司的查询时,我们利用元数据来选择性地过滤和获取仅与 queried company 相关的文档段落。这种整合有助于确保生成的输出是准确的、具有上下文相关性的,并且基于可验证的信息。

图 2 给出了 GraphRAG 检索方法的示意图。在这里,我们首先撰写一个提示以清理数据,然后在第二阶段撰写另一个提示以创建知识三元组和元数据。将在第 4.1 节中详细介绍。

在这里插入图片描述

图2.GraphRAG知识图谱创建过程示意图

2.3.1.HybridRAG 混合RAG

对于HybridRAG技术,我们建议整合上述两种不同的RAG技术:VectorRAG和GraphRAG。这种整合涉及系统性地结合从传统的基于向量的检索机制和专门为本研究构建的KG基础检索系统中检索的上下文信息。

这两种上下文的结合使我们能够利用两种方法的优势。VectorRAG组件提供了广泛的、基于相似性的相关信息检索,而GraphRAG元素则贡献了结构化的、富有关系的上下文数据。然后,将这种组合上下文用作LLM生成最后响应的输入。关于HybridRAG实施的详细信息将在第4.4节中提供。

2.4.Evaluation Metrics 评估指标

为了评估这一综合方法的有效性,我们在一个受控实验设置中对三种方法进行了比较分析:VectorRAG、GraphRAG和HybridRAG。使用组合的VectorRAG和GraphRAG上下文生成的响应与VectorRAG和GraphRAG分别单独生成的响应进行了对比。这一比较评估旨在辨别由于这两种RAG方法的协同整合而可能带来的响应质量、准确性和全面性方面的潜在改进。

为了客观评估不同的RAG方法(在这种情况下是VectorRAG和GraphRAG),参考文献[22]采用了诸如全面性(即答案提供多少细节来涵盖问题的所有方面和细节)、多样性(即答案在提供不同观点和见解方面的丰富程度)、赋能性(即答案对读者理解该主题并做出明智判断的帮助程度)和直接性(即答案在回应问题时的清晰度)等指标。在这里,LLM被提供了一组问题、目标指标和一对答案,并被要求根据该指标评估哪一个答案更好以及为什么。

这些指标虽然比较最终生成的答案,但不一定直接评估检索和生成部分。相反,在这里我们实施了一套全面的评估指标,旨在捕捉给定RAG系统输出质量的不同方面,重点关注忠实性、答案相关性和上下文相关性。每个指标都为系统的能力和局限性提供了独特的见解。

2.4.1.Faithfulness 忠诚度

忠诚度是一个关键指标,用来衡量生成的答案在多大程度上可以从提供的上下文中推断出来。我们实施忠诚度指标的过程分为两个步骤:

声明提取:我们使用大型语言模型(LLM)将生成的答案分解为一组简洁的声明。这个步骤对于将复杂的答案分解为更易管理和可验证的单元至关重要。这个步骤使用的提示是:

“给定一个问题和答案,从给定答案的每个句子中创建一个或多个声明。问题:[问题] 答案:[答案]”。

声明验证:对于每个提取的声明,我们使用LLM来确定它是否可以从给定的上下文中推断。这个验证过程使用以下提示:

“考虑给定的上下文和以下声明,然后判断它们是否得到上下文中信息的支持。在得出结论(是/否)之前,为每个声明提供简要解释。在最后以给定格式依次为每个声明提供最终判决。请勿偏离指定格式。声明:[声明1] … 声明:[声明n]”。

忠诚度评分(F)为F=|V|/|S|,其中|V|为支持的声明数量,|S|为声明的总数量。

2.4.2.Answer Relevance:-回答相关性

答案相关性指标评估生成的答案在多大程度上解决了原始问题,而不考虑事实的准确性。该指标有助于识别不完整的答案或包含无关信息的回复。我们的实现包括以下步骤:

问题生成:我们提示大型语言模型生成n个基于给定答案的潜在问题:

“为给定答案生成一个问题。答案:[答案]”。

然后,我们使用OpenAI的text-embedding-ada-002模型为所有生成的问题和原始问题获取嵌入。接着,我们计算每个生成问题的嵌入与原始问题的嵌入之间的余弦相似度。

最后,答案相关性得分(AR)计算为所有生成问题的平均相似度:A⁢R=1n⁢∑(s⁢i⁢m⁢(q,qi)),其中s⁢i⁢m⁢(q,qi)是原始问题q的嵌入与每个n个生成问题qi的嵌入之间的余弦相似度。

2.4.3.Context Precision 上下文精准度

这是一个用于评估检索到的上下文块与给定问题的指定真实情况的相关性的指标。它计算在上下文的最高排名中出现的相关项目的比例。K位置上下文精度的公式是每个排名k的精度与二元相关性指示器v_k的乘积之和,除以前K个结果中相关项目的总数。每个排名k的精度由k处的真正例与k处的真正例和假正例之和的比例决定。该指标有助于评估上下文对真实情况的支持程度,目标是获得更高的分数,以表明更好的精度。

2.4.4.Context Recall 上下文召回率

它是用于评估检索到的上下文与真实答案的对齐程度的指标,真实答案被视为最终的正确回复。它通过比较真实答案中的每个句子来量化,以查看是否可以追溯到检索到的上下文。上下文召回率的公式是可以归因于上下文的真实句子的数量与真实句子总数的比率。值越高,范围从0到1,表示对齐程度越好,因此上下文召回率越高。这个指标对评估信息检索系统在提供相关上下文方面的有效性至关重要。

3.Data Description 数据描述

虽然确实存在一些公共金融数据集,但没有一个适合目前的实验,例如,FinQA、TAT-QA、FIQA、FinanceBench等数据集仅限于特定用例,例如基准测试大型语言模型在进行复杂数字推理或情感分析方面的能力。另一方面,FinTextQA数据集在撰写本作品时并未公开。此外,在大多数这些数据集中,无法访问生成真实问题和答案的实际文档,从而使我们无法将其用于评估我们的RAG技术。因此,我们不得不依靠一个自己的数据集,尽管是通过公开可用的文档,但我们最终能够访问实际的金融文档和真实问题及答案。像FinanceBench5这样的数据集提供问题-上下文-答案三元组,但由于我们在比较VectorRAG、GraphRAG和HybridRAG,它们并没有提供来自知识图的上下文,因此没有用处。根据我们所知,最近的一篇论文也未公开其算法构建的知识图和三元组。

总之,基于我们所知,目前没有可以公开使用的基准数据集来比较VectorRAG和GraphRAG,无论是在金融领域还是一般领域。因此,我们不得不依赖我们自己构建的数据集,如下所述。

我们在分析中使用了Nifty 50成分股的财报电话会议记录。NIFTY 50是印度股市的一个热门指数,代表在国家证券交易所(NSE)上市的50家最大的印度公司的加权平均值。Nifty 50公司财报电话会议记录的数据集在投资领域广受认可,被视为权威和广泛的财报电话会议记录集合。在我们的研究中,我们关注的数据覆盖至2023年6月结束的季度,即2024财年的第一季度财报(印度的财年从4月1日开始,到3月31日结束,因此4月1日至6月30日的季度是2024财年的第一季度)。

我们的数据集涵盖了这一季度的50份会议记录,涵盖了Nifty 50宇宙内超过50家来自不同领域的公司,包括基础设施、医疗保健、消费品、银行、汽车、金融服务、能源 - 石油和天然气、电信、消费品、制药、能源 - 煤炭、材料、信息技术、建筑、多元化、金属、能源 - 电力和化学,为我们的研究提供了一个实质的和多样的基础。

我们开始数据收集过程,专注于通过开发和部署自定义网络爬虫工具,从Nifty 50宇宙内公司的官方网站获取财报。该工具可以系统地浏览每个Nifty 50指数公司的网站,检索2024财年第一季度的相关财报。通过这种网络爬虫方法,我们旨在编制一个包含成分公司财报的全面数据集。

表1总结了我们将要在本工作的剩余部分中进行实验的文档的基本统计数据。

表1 本研究中使用的电话记录文件的摘要统计。

这些电话记录文件包含了金融分析师与各公司代表之间的问答,因此,这些文件中已经存在某些问答对以及额外的文本。我们检查了Nifty50整体的财报,从所有文件中系统性地策划出了一套全面的随机选择的400个在电话会议上提问的问题,并收集了与这些问题对应的确切回答。这些问题构成了金融分析师在这些电话会议上向管理层提出的具体查询。

4.Implementation Details 实施细节

在本节中,我们提供所提方法的实施细节。

4.1.Knowledge Graph Construction 知识图谱构建

我们方法的初始阶段集中在文档预处理上。我们使用PyPDFLoader6导入PDF文档,然后使用RecursiveCharacterTextSplitter将其分割成可管理的块。该分块策略使用2024个字符的大小和204个字符的重叠,确保覆盖全面,同时在段落边界保持上下文。

在预处理阶段之后,我们实施了两层语言模型链以进行内容精炼和信息提取。由于空间有限,这里无法包含确切的提示,但可以在参考文献[18]中找到基线提示。

表2总结了使用我们基于提示的方法从财报电话会议纪要中提取的实体的详细信息。同时,LLM使用精心策划的动词集识别这些实体之间的关系,捕捉公司叙事中的细微互动。我们方法的一个关键改进是增强的提示工程,以生成知识三元组的结构化输出格式。每个三元组表示为嵌套列表[’h’, ’type’, ’r’, ’o’, ’type’, ’metadata’],其中’h’和’o’分别表示头实体和对象实体,’type’指定实体类别,’r’表示关系,’metadata’封装额外的上下文信息。这个格式允许丰富的多维信息表示,促进更细致的下游分析。

我们的过程结合了几个先进的特性,以提高提取三元组的质量和实用性。采用实体歧义消解技术,整合对同一实体的不同引用,提升知识图谱中的一致性。我们还优先考虑实体表示的简洁性,力求在可能的情况下描述不超过四个字,这有助于维护干净和可导航的图结构。

提取管道对每个文档块进行迭代应用,结果汇总形成整个文档的综合知识图谱表示,从而允许对大文档进行可扩展的处理,同时保持每个块内的本地上下文。我们已根据参考文献[8]为VectorRAG和GraphRAG添加了获取元数据的明确指示。

最后,我们实施了一种数据持久化策略,将提取的三元组从初始字符串格式转换为Python数据结构,并将其存储在一个pickle文件中。这便于在后续分析阶段轻松检索和进一步操作知识图谱数据。

我们的方法代表了从公司文档中自动知识提取的重大进展。通过将先进的自然语言处理技术与信息表示的结构化方法相结合,我们创建了一个丰富的、可查询的知识库,捕捉到公司叙事中复杂的关系和关键信息。这种方法为金融分析和商业领域的自动推理开辟了新的可能性,未来将进一步探讨。

4.2.VectorRAG

我们的 methodology 建立在 RAG 的概念之上,这使得我们能够创建一个能够为关于公司财务信息的查询提供上下文感知和准确响应的系统,利用大型语言模型的强大以及语义搜索的高效性。

我们系统的核心是 Pinecone 向量数据库,它为我们的信息检索过程提供基础。我们使用 OpenAI 的 text-embedding-ada-002 模型将来自财报电话会议的文本数据转化为高维向量表示。这个向量化过程使得语义相似搜索成为可能,显著提高了检索信息的相关性和准确性。表 3 提供了我们实验中使用的设置配置的摘要。

问答管道是使用LangChain框架构建的该管道从上下文检索步骤开始,我们查询Pinecone向量存储,以获得与特定问题最相关的文档块。这一检索过程通过针对季度、年份和公司名称的具体过滤条件进行微调,确保获取的信息既相关又及时

在检索后,我们实施了上下文格式化步骤,将检索到的文档块整合成一个连贯的上下文字符串。这个格式化后的上下文作为语言模型生成响应的基本信息来源。

我们开发了一种复杂的提示模板,指示语言模型充当专业问答系统,强调仅利用所提供的上下文信息,避免在生成的响应中直接引用上下文的重要性

对于核心语言处理任务,我们集成了OpenAI的GPT-3.5-turbo模型,该模型处理格式化的上下文和查询,以生成信息丰富、连贯且符合上下文的自然语言响应

为了评估我们系统的性能,我们开发了一个综合框架,包括准备一个特定于每家公司财报电话会议的问答对的自定义数据集。

我们的系统处理该数据集中的每个问题,根据检索到的上下文生成答案。评估结果,包括原始问题、生成答案、检索到的上下文和真实答案,汇总成结构化格式(CSV和JSON),以便进行进一步分析。我们系统生成的输出以CSV和JSON格式存储,便于与各种分析工具和仪表板的轻松集成。这种方法促进了对系统响应的定量性能指标和定性评估,提供了其有效性的全面视图

通过对公司名称、季度和年份进行参数化,我们可以轻松地将系统适应于不同的数据集和时间段。这一设计选择允许新数据的无缝集成,并扩展覆盖多个公司和财报电话会议

4.3.GraphRAG

对于GraphRAG,我们开发了一个专门针对公司财报电话会议记录的问答系统。我们对GraphRAG的实现利用了几个关键组件和技术

知识图谱构建:我们首先从公司文件中提取一组知识三元组,利用第4.1节中描述的基于提示工程的方法构建知识图谱。这些三元组存储在pickle文件中,以主语-谓语-宾语关系的形式表示结构化信息。我们使用LangChain库中的NetworkxEntityGraph类来创建和管理这个图结构。每个三元组被添加到图中,图 encapsulates 头实体、关系、尾实体和附加元数据。

我们使用LangChain中的GraphQAChain类实现问答功能。该链将知识图谱与一个大型语言模型(在我们的例子中是OpenAI的GPT-3.5-turbo)结合起来生成响应。GraphQAChain遍历知识图谱以查找相关信息,并利用语言模型根据检索到的上下文制定连贯的答案。我们的LLM模型和用于GraphRAG的其他库的配置摘要见表4。

由于在知识图谱中,信息以实体和关系的形式存储,并且一个实体可能派生出多个关系,在本实验中,为了从知识图谱中提取相关信息,我们采用深度优先搜索策略,限制从指定实体出发的深度为一。

为了评估我们的GraphRAG系统的性能,我们按照以下步骤进行准备:

数据集准备:我们使用一个预生成的CSV文件,包含特定于财报电话会议记录的问题和答案对。

迭代处理:对于数据集中的每个问题,我们运行GraphQAChain以生成答案。

结果汇编:我们将结果汇编成结构化格式,包括原始问题、生成的答案、检索到的上下文和真实答案。

最后,评估结果以CSV和JSON格式保存,以便进一步分析和比较。然后,我们将这些输出送入我们的RAG评估管道。对于数据集中的每个问答对,我们计算三项指标:忠实度、答案相关性、上下文精确度和上下文召回率。

4.4.HybridRAG

对于提议的HybridRAG技术,在从VectorRAG和GraphRAG获得所有上下文信息后,我们将这些上下文连接起来,形成一个统一的上下文,利用这两种技术。然后将这个组合的上下文输入到答案生成模型中,以生成响应。用于响应生成的上下文相对较大,这影响了生成响应的精确度。VectorRAG的上下文首先被添加,其次是GraphRAG的上下文。因此,生成答案的精确度依赖于源上下文。如果答案是从GraphRAG上下文生成的,它的精确度会较低,因为GraphRAG上下文是在提供给答案生成模型的上下文序列中最后添加的,反之亦然。

5.Results 结果

我们评估了三种不同RAG管道中RAG的检索和生成部分。评估RAG输出也是一个活跃的研究领域,目前还没有被普遍接受的标准工具,尽管我们在本工作中使用了当前流行的框架RAGAS来评估这三种RAG管道,并对此进行了适当的修改以进行更精确的比较。

我们的比较分析结果显示出VectorRAG、GraphRAG和HybridRAG方法在性能上的显著差异,如表5所总结。在忠实性方面,GraphRAG和HybridRAG表现优越,均达到了0.96的分数,而VectorRAG略微落后,分数为0.94。答案相关性得分在各方法之间有所差异,HybridRAG以0.96的成绩优于其他方法,其次是VectorRAG的0.91和GraphRAG的0.89。上下文精确度方面,GraphRAG以0.96的分数最高,明显超过VectorRAG(0.84)和HybridRAG(0.79)。然而,在上下文召回方面,VectorRAG和HybridRAG均达到了完美的1分,而GraphRAG则落后,得分为0.85。

总体而言,这些结果表明GraphRAG在忠实性和上下文精确度方面对VectorRAG有所改善。此外,HybridRAG作为最平衡和有效的方法,在忠实性和答案相关性等关键指标上超越了VectorRAG和GraphRAG,同时保持了高上下文召回率。

HybridRAG相对较低的上下文精确度(0.79)可以归因于其独特的将VectorRAG和GraphRAG方法的上下文结合起来的方式。虽然这种整合允许进行更全面的信息检索,但也引入了可能无法与真实值精确对齐的额外内容,从而影响了上下文精确度指标。尽管存在这种权衡,HybridRAG在忠实性、答案相关性和上下文召回方面的优越表现突显了其有效性。在考虑整体评估指标时,HybridRAG显现为最有前途的方法,平衡了高质量答案与全面的上下文检索。

总体而言,GraphRAG在抽取性问题中表现优于VectorRAG。而VectorRAG在信息未在原始数据中明确提及的抽象性问题上表现更好。此外,GraphRAG在问题中没有明确提及实体时,有时会无法正确回答问题。因此,HybridRAG在整体上表现良好,因为每当VectorRAG在抽取性问题中无法提取正确上下文时,它会退回到GraphRAG生成答案。而每当GraphRAG在抽象性问题中无法提取正确上下文时,它会退回到VectorRAG生成答案。

在这里插入图片描述

表5.不同RAG管道的性能指标. 这里,F、AR、CP和CR分别指代忠实度、答案相关性、上下文精确度和上下文召回率.

6.结论与未来方向

目前用于缓解从不属于LLM训练数据的外部文档中提取信息问题的方法中,检索增强生成(RAG)技术已成为最受欢迎的方法,旨在通过结合相关的检索机制来提升LLM的性能。RAG方法通过检索相关文档或文本来提供额外的上下文,从而增强LLM的能力。然而,当这些方法应用于专门且复杂的金融文档领域时,它们面临着重大限制。此外,从庞大而异质的语料库中检索到的上下文质量可能不一致,导致不准确和不完整的分析。这些挑战突显了迫切需要更复杂的方法,这些方法能够有效整合和处理金融文档中详细且特定于领域的信息,从而为知情决策提供更可靠和准确的输出。

在本研究中,我们提出了一种新颖的方法,通过开发混合RAG系统显著推动了从金融文件中提取信息的领域。这个系统被称为HybridRAG,它结合了知识图谱(KG)和高级语言模型的优势,代表了我们从非结构化金融文本中提取和解释复杂信息能力的一次飞跃。混合RAG系统通过结合传统的基于向量的RAG和基于KG的RAG,在检索准确性和答案生成方面显示出卓越的性能,标志着朝着更有效的金融分析工具迈出了重要一步。

通过使用客观评估指标的比较分析,我们突出了HybridRAG方法相较于其基于向量和基于KG的同行在性能上的明显优势。HybridRAG系统在可靠性、答案相关性和上下文回忆方面表现出色,尽管在上下文精确度方面可能存在潜在的权衡,但仍然展示了整合VectorRAG和GraphRAG方法上下文的好处。

这项研究的影响超越了金融分析的直接领域。通过开发一种能够理解和响应关于复杂金融文件的细微查询的系统,我们为更复杂的AI辅助金融决策工具铺平了道路,这些工具可能会使获得金融洞察变得更为大众化,使更广泛的利益相关者能够参与并理解金融信息。

未来该研究的方向包括扩展系统以处理多模态输入,整合数值数据分析能力,以及开发更复杂的评估指标,以捕捉金融语言的细微差别和响应中数据信息的准确性。此外,探索将该系统与实时金融数据流的整合,可能进一步增强其在动态金融环境中的实用性。

如何学习大模型 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 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值