RAG evaluation

RAG的评测数据集该如何准备?

前面我们介绍过了如何使用RAGAS做评测,介绍了几种指标的评测。从前面的示例我们知道了,要想做评测,我们需要提供数据集,数据集中包括原始问题、AI的回答、标准答案以及参考资料等信息。 这几种数据生成方式其实可以分为两类:一类是“从文…

TL;DR

前面我们介绍过了如何使用RAGAS做评测,介绍了几种指标的评测。从前面的示例我们知道了,要想做评测,我们需要提供数据集,数据集中包括原始问题、AI的回答、标准答案以及参考资料等信息。 这几种数据生成方式其实可以分为两类:一类是“从文…

前面我们介绍过了如何使用RAGAS做评测,介绍了几种指标的评测。从前面的示例我们知道了,要想做评测,我们需要提供数据集,数据集中包括原始问题、AI的回答、标准答案以及参考资料等信息。 这几种数据生成方式其实可以分为两类:一类是“从文档出发”的生成法(包括 LLM 自动生成、RAGAS 自带工具),另一类是“从真实提问出发”的提取法(包括用户日志提取、人工构建)。

基于LLM生成

基于LLM生成的核心逻辑是,让大模型阅读你的“知识文档”来自动出题。这种方式可生成: - 原始问题、 - 标准答案(作为评估基准的groud truth)。

✅基于文档生成用于评测的数据集

前面我们介绍过了如何获取测评集,有一种方式是通过文档可以生成一些问题和答案。那么ragas就只次,我们介绍下如何使用。 基于AI生成数据集 比如我们提前准备一份文档,markdown格式最好,放到docs目录下 运行以下脚本代码: LLMentor

历史数据加工

如果系统之前有一些已有的数据,比如历史的客户咨询、历史的Q&A、工单数据、论坛中的用户发帖等,这些数据可以稍作清洗,用来作为评测的数据集。 一般来说,我们可以从这些数据中获取到: - 原始问题 - 真实答案

人工构建

人工构建指的是,从已有的知识中,人工的构建一些Q&A对,一般是由专业的人员基于文档内容、历史用户问题等提炼出来的常见的问题和答案。这种方式构建出来的数据也是包含: - 原始问题 - 真实答案

线上AI问答

线上AI问答,指的是如果你有了问题,可以把问题直接输入给你的RAG系统,让他作答,这样就能获取到: - AI回答 - 参考材料 所以,数据集的构建分两类。 如果你想要获取原始问题+真实答案: - 基于LLM生成 - 历史数据加工 - 人工构建 如果你想要获取AI回答+参考资料: - 线上AI问答

版本提示

模型、框架与接口会持续变化。涉及版本号、参数与生产配置时,请在实践前对照对应官方文档。

LLMentor系统化学习大模型应用工程

内容来自个人课程知识库备份,并经过结构化整理。技术版本持续演进,生产使用前请结合官方文档验证。