在现代企业知识管理中,随着业务的不断发展和扩展,各种文档和数据呈现爆炸式增长。为了有效且高效地管理这些知识,企业通常会导入大量文档。然而,当涉及到对文档切片质量和回答准确度的判断时,传统的人工方法显得既费时又费力。既然我们已经在使用AI技术,那么能否让AI来接管这部分工作?答案是肯定的,这正是RAG评估的用武之地。
https://github.com/explodinggradients/ragas?tab=readme-ov-file
今天,我们将深入探讨一个名为Kernel Memory中的一个实验性项目,它还未正式发布,但已经在AI社区中引起了广泛关注。Kernel Memory中的Evaluation模块包含两部分:TestSetGenerator和TestSetEvaluator,分别用于生成测试数据集和基于数据集进行质量评估。使用这些工具,我们可以显著降低人工成本,提高文档处理的效率和准确性。
TestSetGenerator:生成测试数据集
在进行Kernel Memory评估之前,首先需要创建一个测试集,这个测试集包含查询和预期的答案。虽然这是一个手工过程,但对于大数据集来说,可能非常繁琐。为了简化这个过程,我们提供了一个生成器,它可以从给定的Kernel Memory内存和索引中创建测试集。
以下是一个简单的示例代码:
using Microsoft.KernelMemory.Evaluation;
var testSetGenerator = new TestSetGeneratorBuilder(memoryBuild