基于多跳查询的检索增强生成(RAG)基准测试数据集——MultiHop-RAG
1. 引言
随着大型语言模型(LLM)如ChatGPT的出现,自然语言处理领域取得了显著进展。然而,这些模型的输出有时可能包含错误或不准确的信息,这限制了它们在实际应用中的可靠性。为了解决这个问题,研究人员提出了检索增强生成(RAG)技术,该技术通过将外部知识库与LLM相结合,提高了生成的响应的质量和准确性。
本文介绍了MultiHop-RAG,这是一个用于评估RAG系统性能的新基准测试数据集。与其他现有的RAG数据集不同,MultiHop-RAG专注于复杂的多跳查询(multi-hop queries),即需要从多个来源收集和整合信息才能正确回答的问题。这种类型的查询更接近于现实世界中用户可能会提出的复杂问题,因此对于开发和评估先进的RAG系统至关重要。
2. 研究问题
MultiHop-RAG旨在解决以下几个关键的研究问题:
- 检索能力: 在面对多跳查询时,不同的嵌入模型是否能够有效地从知识库中检索相关信息?
- 生成质量: 当给定正确的检索文本时,各种LLM的表现如何?它们能否正确理解和整合来自多个源的信息以给出准确的答案?
- 挑战性场景: 如何在数据集中引入更具挑战性的场景,例如那些需要推理和比较能力的查询类型?
- 开放域问答: 如何在构建数据集时考虑到知识的时效性和多样性,以确保其适用于广泛的开放域问答任务?
3. 方法
3.1 数据集构造
MultiHop-RAG的数据集是通过一个五步流程创建的:
- 新闻文章收集: 从Mediastack API获取了一个涵盖多种主题的英语新闻数据库。
- 证据提取: 对每篇文章使用预训练的语言模型提取事实句作为潜在的证据。
- 声明、桥接实体和话题生成: 利用GPT-4自动生成简化的声明、识别桥接实体和话题。
- 查询和答案生成: 根据声明的集合,使用GPT-4生成四种不同类型的多跳查询及其对应的答案。
- 质量保证: 对生成的数据进行了手动检查和GPT-4辅助的验证,以确保数据的质量和一致性。
3.2 数据集特性
MultiHop-RAG包含了超过2500个多跳查询,分为四类:推断查询、比较查询、时间序列查询和空缺查询。每一类都要求不同的推理能力和上下文理解。表1展示了数据集的一些统计数据。
类别 | 数量 | 百分比 |
---|---|---|
推断查询 | 816 | 31.92% |
比较查询 | 856 | 33.49% |
时间序列查询 | 583 | 22.81% |
空缺查询 | 301 | 11.78% |
总计 | 2556 | 100.00% |
表1: MultiHop-RAG中不同类型查询的数量分布
3.3 数据集示例
下面是每个查询类型的一个例子:
推断查询
Query: Based on the evidence provided, which company’s stock price would likely increase if the
market reacts positively to the announced acquisition?
Answer: Company A’s stock price would likely increase.
比较查询
Query: According to the evidence, which product line showed a larger year-over-year growth rate,
Product Line A or Product Line B?
Answer: Product Line B showed a larger year-over-year growth rate.
时间序列查询
Query: When did Company C announce its partnership with Organization D, before or after the
launch of Product E?
Answer: The announcement came before the launch of Product E.
空缺查询
Query: Can Company F’s latest quarterly report be found online anywhere?
Answer: No, insufficient information.
4. 实验与结果
4.1 检索能力评估
首先,评估几种流行的嵌入模型在MultiHop-RAG上的表现,目的是找出最适合检索相关信息的模型。使用OpenAI的ADA Embeddings、Voyager-02、BGE-Large-EN-V1.5等模型,并比较了它们的平均精度(Mean Average Precision, MAP)、均值倒数排名(Mean Reciprocal Rank, MRR)和命中率(Hit Ratio, HR)指标。
嵌入模型 | MAP@10 | MRR@10 | Hit@10 |
---|---|---|---|
ADA Embeddings | 0.4203 | 0.3431 | 0.6381 |
Voyager-02 | 0.3934 | 0.3143 | 0.6506 |
BGE-Large-EN-V1.5 | 0.4298 | 0.3423 | 0.6718 |
JINA | 0.0621 | 0.031 | 0.1479 |
e5-Base-V2 | 0.1843 | 0.1161 | 0.3556 |
表2: 不同嵌入模型的检索性能对比
结果显示,Voyager-02结合BGE-ReRanker-Large可以实现最佳的整体检索效果,特别是在命中率方面。然而,即使使用了重新排序策略,所有模型的性能仍有提升空间,特别是对于较小的前k个结果(例如k=4时的Hit@4为0.6625)。
4.2 生成质量评估
接下来,评估几个强大的LLM在MultiHop-RAG上的表现,包括GPT-4、GPT-3.5、Claude-2、PalM和一些开源模型如Mixtral-8x7B和Llama-2-70B。将这些模型分为两组进行评估:一组使用从知识库中检索到的文本作为输入,另一组直接使用ground truth证据作为输入,以模拟理想情况下的性能上限。
LLM | 使用检索文本 | 使用真实证据 |
---|---|---|
GPT-4 | 0.56 | 0.89 |
GPT-3.5 | 0.44 | 0.57 |
Claude-2 | 0.52 | 0.56 |
PalM | 0.47 | 0.74 |
Mixtral-8x7B | 0.32 | 0.36 |
Llama-2-70B | 0.28 | 0.32 |
表3: LLM在不同条件下的生成质量对比
结果表明,即使在理想的条件下,LLM的生成质量也并非完美。GPT-4表现出最强的推理能力,而其他模型则有较大的改进空间。此外,观察到某些特定类型的查询更容易导致LLM产生错误的答案,这可能是因为它们需要特定的推理技能,而这些技能并不是所有LLM都能很好地掌握。
5. 结论
MultiHop-RAG是一个新的基准测试数据集,它提供了丰富的多跳查询样本,这对于推动RAG技术的进一步发展是非常重要的。初步研究表明,当前的RAG系统和LLM在面对复杂的、需要多步骤推理的多跳查询时仍然存在挑战。未来的工作应该集中在提高检索效率、优化LLM的理解和整合能力,以及探索更好的集成框架,以便更好地应对这类挑战。
6. 讨论
尽管MultiHop-RAG已经取得了一定的成果,但仍然有一些值得注意的局限性:
-
数据规模和时间敏感性: 虽然数据集的大小足以支持初步的分析,但它可能不足以完全捕捉现实世界的复杂性。此外,由于数据是从新闻文章中提取的,随着时间的推移,这些信息的有效性可能会降低。
-
查询多样性和难度: 数据集中的查询可能是人工设计的,因此在覆盖所有可能的查询类型和难度级别方面可能不完整。
-
评估方法的全面性: 目前的评估主要关注检索和生成质量的单个指标,可能无法充分反映系统的整体性能。
为了克服这些问题,未来的工作中可以考虑扩大数据集的范围和规模,增加更多样化和更具挑战性的查询类型,以及开发更加全面的评估框架。