关注我们,一起学习
图片来源网络
RAG又称为检索增强生成,今天借助RAGas [1]这个库介绍相关的评估指标。
上下文精度(context precision)
这里采用了平均精度的方式,假设召回K个相关样本,则Precision@k计算topk情况下的精度,然后对于所有的K个样本,从1到K计算每个topk下的精度,其中表示当前第k个样本是否对回答问题有帮助
- 利用LLM :使用LLM,给定相关的提示词,对于(问题,上下文/回答,检索到的上下文)让LLM判断检索到的上下文对回答问题是否有帮助,比如“Given question, answer and context verify if the context was useful in arriving at the given answer. Give verdict as "1" if useful and "0" if not with json output.” [1],然后基于LLM判断的记过来通过上式计算上下文精度
- 相似度 :采用传统方法来衡量检索到的上下文和引用上下文的相似度,比如编辑距离,汉明距离等,基于相似度和给定的阈值来判断是否相似(0/1)然后计算上下文精度
上下文召回
- 利用LLM :使用LLM判断真实回答中的阐述事实,能否溯源到检索到的样本中,如果能则计数加1,召回率为能溯源到的检索样本数除以回答中的总句子数
- 相似度 :同理,采用传统方法,包括编辑距离,汉明距离等会计算检索到的上下文和引用上下文的相似度,基于阈值判断是否相似,召回率为相似样本数除以总的引用上下文数
上下文实体召回
计算检索的上下文中的实体(CE)和给定的参考上下文中的实体(GE)的交集,然后计算交集样本数与参考上下文中实体个数的比值
回答相关性
计算生成的回答和给定的提示(包含检索到的上下文和问题)的相关性,分数低说明信息缺乏或者信息冗余。这里采用的方式是,先让模型基于检索到的信息和问题进行回答,然后用回答来生成N个问题,分别计算N个问题和原始问题的emb的余弦相似度。该方法的含义是如果一个问题被准确回答了,那么模型应该能从该回答中生成与原始问题一致的问题 。
可信度
用LLM从生成的答案中识别出一组事实阐述,然后计算答案的阐述和上下文的阐述的交集,交集中的样本数除以回答中的总声明数。如果可以从给定的上下文中推断出答案中的所有声明,则生成的答案是可信的。
基于HHEM-2.1-Open模型的可信度
HHEM-2.1-Open是一个分类器(T5)用于检测生成文本中的幻觉,用这个模型直接识别基于检索的上下文生成的回答的可信度。
参考
[1]https://docs.ragas.io/en/stable/concepts/metrics/available\_metrics/faithfulness/
交流群:点击“联系 作者”--备注“研究方向-公司或学校”
欢迎|论文宣传|合作交流
往期推荐
FlashAttention 系列技术详解:加速大模型训练的利器
长按关注,更多精彩
点个在看你最好看