Skip to content

评估#

概念#

在LLM(大型语言模型)的开发中,评估和基准测试是至关重要的概念。要改进LLM应用程序(如RAG、agents)的性能,必须有一种衡量方法。

LlamaIndex提供了关键模块来衡量生成结果的质量。我们还提供了关键模块来衡量检索质量。

  • 响应评估:响应是否与检索到的上下文匹配?它是否还与查询匹配?它是否与参考答案或指南匹配?
  • 检索评估:检索到的来源是否与查询相关?

本节描述了LlamaIndex内的评估组件的工作原理。

响应评估#

评估生成的结果可能很困难,因为与传统的机器学习不同,预测结果不是一个单一的数字,很难为这个问题定义定量指标。

LlamaIndex提供了基于LLM的评估模块来衡量结果的质量。这使用了“金标准”LLM(例如GPT-4)以多种方式决定预测的答案是否正确。

需要注意的是,许多当前的评估模块并不需要地面真实标签。评估可以通过查询、上下文、响应的某种组合来完成,并将其与LLM调用结合起来。

这些评估模块有以下形式:

  • 正确性:生成的答案是否与给定查询的参考答案匹配(需要标签)。
  • 语义相似性:预测的答案是否在语义上与参考答案相似(需要标签)。
  • 忠实度:评估答案是否忠实于检索到的上下文(换句话说,是否存在臆想)。
  • 上下文相关性:检索到的上下文是否与查询相关。
  • 答案相关性:生成的答案是否与查询相关。
  • 指南遵循:预测的答案是否遵循特定的指南。

问题生成#

除了评估查询外,LlamaIndex还可以使用您的数据生成问题进行评估。这意味着您可以自动生成问题,然后运行评估流程,测试LLM是否能够准确回答使用您的数据的问题。

检索评估#

我们还提供模块来帮助独立评估检索。

检索评估的概念并不新颖;在给定问题和地面真实排名的数据集的情况下,我们可以使用排名指标(如平均倒数排名(MRR)、命中率、精确度等)来评估检索器。

核心的检索评估步骤围绕以下内容展开:

  • 数据集生成:给定一个非结构化文本语料库,合成生成(问题,上下文)对。
  • 检索评估:给定一个检索器和一组问题,使用排名指标评估检索到的结果。

集成#

我们还与社区评估工具进行集成。

使用模式#

有关完整的使用详情,请参阅下面的使用模式。

模块#

可以在模块指南中找到使用这些组件的笔记本。

使用LabelledRagDataset进行评估#

有关如何使用各种评估数据集(称为LabelledRagDataset)对RAG系统进行评估的详细信息,请参见下文: