跳到内容

评估#

概念#

评估和基准测试是 LLM 开发中的关键概念。要提高 LLM 应用(RAG、代理)的性能,必须有衡量它的方法。

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

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

本节描述了 LlamaIndex 中的评估组件是如何工作的。

响应评估#

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

LlamaIndex 提供基于 LLM 的评估模块来衡量结果质量。这使用一个“黄金”LLM(例如 GPT-4)来以各种方式判断预测答案是否正确。

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

这些评估模块采用以下形式:

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

问题生成#

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

检索评估#

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

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

核心检索评估步骤围绕以下几点:

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

集成#

我们还集成了社区评估工具。

使用模式#

有关完整的用法详细信息,请参阅下面的使用模式。

模块#

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

使用 LabelledRagDataset 进行评估#

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