Automated Evaluation of Retrieval-Augmented Language Models with Task-Specific Exam Generation

题目

使用任务特定考试生成功能对检索增强语言模型进行自动评估

在这里插入图片描述

论文地址:https://arxiv.org/abs/2405.13622
项目地址:https://github.com/amazon-science/auto-rag-eval

摘要

    我们提出了一种新方法来测量检索增强大型语言模型 (RAG) 的任务特定准确性。评估是通过对自动生成的综合考试对 RAG 进行评分来执行的,该考试由基于与任务相关的文档语料库的多项选择题组成。我们的方法是一种自动化、经济高效、可解释且强大的策略,用于为 RAG 系统选择最佳组件。我们利用项目反应理论 (IRT) 来评估考试的质量及其对任务特定准确性的信息性。IRT 还提供了一种自然的方法来迭代改进考试,方法是消除那些对模型能力没有足够信息的考试问题。我们根据 Arxiv 摘要、StackExchange 问题、AWS DevOps 故障排除指南和 SEC 文件,在四个新的开放式问答任务上展示了我们的方法。此外,我们的实验揭示了影响 RAG 性能的因素的更一般见解,例如大小、检索机制、提示和微调。最值得注意的是,我们的研究结果表明,选择正确的检索算法往往比简单地使用更大的语言模型带来更大的性能提升。

在这里插入图片描述
图 1. 我们对 AWS DevOps 故障排除任务的考试评估的详细结果。以百分比表示不同检索方法和检索器大小的准确度。直径上的标签显示故障排除类别,即 AWS 资源。颜色对应于不同的检索方法(Oracle、DPRV2、MultiQA、ClosedBook,如第 4.2 节所述),图案对应于基本 LLM 大小(7B、13B 和 70B)。例如,我们观察到,具有 MultiQA 嵌入的小型模型(如 Mistral-7B)对于 AWS 资源“关系数据库服务”(RDS)的准确率约为 80%。

    评估一组有限任务以外的大型语言模型 (LLM) 是出了名的具有挑战性。通过公共基准测试传达的 LLM 的一般能力不一定与狭窄且高度特定的客户任务上的表现有关,当这些任务涉及特定领域的知识语料库时更是如此。评估指标旨在捕捉 LLM 性能的不同方面。没有任何单一指标能够充分涵盖其各个方面。在这项工作中,我们提出了一种 LLM 驱动的基于考试的评估方法来衡量 RetrievalAugmented LLM (RAG) 在给定任务上的准确性。我们的方法是完全自动化的,不需要带注释的真实数据集。我们的指标侧重于事实准确性,即检索和利用正确信息正确回答用户查询的能力。除了使用户能够为他们的检索任务选择 RAG 系统组件的最佳组合之外,我们的方法还揭示了有关 RAG 性能因素的更一般见解,例如大小、检索机制、提示和微调。

    我们的第一个贡献是一种完全自动化的定量考试评估策略,与传统的人工在环评估相比,它保证了可扩展性,同时降低了与专家或注释者参与相关的费用。考试由LLM 使用与手头任务相关的数据语料库。候选人 RAG 系统根据其成功回答考试中的多项选择题的能力进行评估。评估始终是在评分的简易性和代表性之间的权衡。对于事实评估,评分多项选择题考试的简易性不会损害有效可靠地评估事实知识的目标。此外,比较考试结果分析揭示了需要改进的领域,从而能够持续通过反馈驱动增强考试语料库。图 1 显示了 DevOps 领域中的一个示例。我们的第二个贡献是自动考试生成过程中的方法改进策略。值得注意的是,我们利用项目反应理论 (IRT) 来优化生成的考试并最大限度地提高其对特定于任务的模型性能的信息性。我们使用 4 种不同的知识语料库来说明和评估我们在开放式问答任务上的方法:AWS DevOps 故障排除指南、Arxiv 摘要、StackExchange 问题和 SEC 文件。总之,以下是我们贡献的列表。

  • 我们基于特定任务的综合考试,为检索增强生成 LLM 管道的自动评估提供了一种全面的方法。
  • 利用项目反应理论 (IRT),我们开发了稳健性和可解释的评估指标,以量化和阐明影响模型功效的因素。
  • 我们设计了一种原则性的、完全自动化的技术来构建和迭代改进考试,以最大限度地提高信息量。
  • 我们通过基于来自不同领域的公共数据集创建四个新任务,为 RAG 系统评估提供基准数据集。
  • 我们提供了我们提出的考试生成、评估和优化框架的开源实现,允许它在任何 RAG 任务上执行。

相关文献

    我们提出了一种自动化考试生成方法,通过根据每个任务的文档定制多项选择题,实现对特定任务的 RAG 标准化评估。据我们所知,这是第一项以这一特定贡献重点解决 RAG 评估的工作。但是,我们的贡献建立在相关领域的现有文献之上,例如 RAG 系统、语言模型评估框架和项目反应理论。检索增强生成。检索增强生成 (RAG) 将预训练语言模型与信息检索技术相结合,通过外部知识源丰富自然语言处理任务。该方法由进一步发展,他们强调了语言模型中最近邻搜索的有效性。随后的进步包括引入自监督学习目标、将语言模型与检索系统协同以及扩展检索增强方法以处理更大规模的数据。该领域得到了的全面调查。

    NLP、LLM 和 RAG 的评估。随着输出的复杂性增加,自然语言处理 (NLP) 中的评估已从经典的、特定于任务的基准(如机器翻译的 BLEU 分数 )转变为更细致入微的指标,如答案等价。这种转变的例子是 GPT-3 的研究,它以与任务无关的能力挑战了传统的评估方法。尽管取得了这些进展,但该领域仍然面临着有据可查的挑战,尤其是准确衡量模型对细微的人类概念的理解。在评估检索增强生成模型时,由于涉及的组件众多,困难更加严重。对该领域进行了调查,发现“专门用于评估 RAG 模型独特特征的研究明显不足,相关研究屈指可数。”该领域的最新研究强调检索到的信息与生成内容的集成。一些解决方案,如 RAGA、RaLLe和 ARES,在工业和研究应用中得到越来越多地使用,但可解释性有限。此外,尽管某些基准测试已被设计用于评估 LLM 的特定方面(例如,真值-完整性、忠实性和事实性,对这些方面进行全面的任务特定评估仍然是一项重大挑战。

    RAG 管道缺乏规范的评估方法是我们从事这项工作的主要驱动力。项目反应理论。项目反应理论 (IRT) 是一个研究通过考试进行的评估中对问题 (项目) 的反应的框架。IRT 提供了一种基于模型的方法来估计项目特征和个人考生的能力。它的形式化似乎起源于的作品。该理论已得到发展和扩展,可应用于广泛的问

### Retrieval-Augmented Generation (RAG) in NLP #### Definition of RAG Retrieval-Augmented Generation combines the strengths of retrieval-based models with generative models to improve conversational systems' performance. Traditional retrieval methods excel at finding relevant information but lack flexibility when generating responses that require synthesis or creativity. Generative models can produce novel text but may suffer from hallucinations—generating content not grounded in factual knowledge. By integrating both approaches, RAG leverages external databases or corpora as a source of evidence during generation, ensuring outputs are more accurate and contextually appropriate while maintaining natural language fluency[^1]. #### Implementation Details The architecture typically consists of two main components: - **Retriever**: Responsible for fetching documents most pertinent to user queries using techniques like dense passage retrieval. ```python class Retriever: def __init__(self): pass def retrieve(self, query): # Implement document search logic here pass ``` - **Generator**: Utilizes retrieved contexts alongside input prompts to craft coherent replies via transformer architectures such as BART or T5. ```python from transformers import AutoModelForSeq2SeqLM, AutoTokenizer class Generator: def __init__(self): self.tokenizer = AutoTokenizer.from_pretrained("facebook/bart-large") self.model = AutoModelForSeq2SeqLM.from_pretrained("facebook/bart-large") def generate(self, prompt, context): inputs = self.tokenizer(prompt + " " + context, return_tensors="pt", max_length=512, truncation=True) output_ids = self.model.generate(inputs["input_ids"]) response = self.tokenizer.decode(output_ids[0], skip_special_tokens=True) return response ``` To enhance traditional RAG further, Graph RAG introduces graph structures into the mix, allowing better representation of relationships between entities within stored knowledge bases compared to vector representations alone[^3]. This approach facilitates richer contextual understanding across diverse domains including healthcare, finance, etc., where interconnected data points play crucial roles. #### Use Cases One prominent application area lies in customer service automation through virtual assistants capable of providing precise answers based on vast amounts of structured/unstructured textual resources without losing personal touch[^4]. Another potential field is legal research assistance; lawyers could benefit greatly by having access to case law summaries generated dynamically according to specific needs rather than manually sifting through countless precedents. --related questions-- 1. How does Cross-Attention mechanism contribute to improving RAG's effectiveness? 2. What challenges might one encounter when implementing custom retrievers tailored towards specialized industries? 3. Can you provide examples illustrating how Graph RAG outperforms conventional RAG implementations regarding entity relationship handling? 4. In what ways has pre-training large-scale language models impacted advancements made within this domain over recent years?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三月七꧁ ꧂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值