智源联合多家机构推出自动化多样性信息检索评测基准AIR-Bench

智源研究院联合Jina AI、Zilliz、HuggingFace、中国科技大学、中国人民大学、北京邮电大学等多家机构联合推出专门针对检索任务和RAG场景的评测AIR-Bench 。AIR-Bench首次提出在检索评测任务中使用LLMs生产评估数据 ,避免模型过拟合测试数据。同时,由于使用合成数据进行评估,AIR-Bench不需要人工参与标注数据,可以更灵活的覆盖更多的垂直领域和不同语种。在实验中,AIR-Bench生成的数据与人工标注的数据表现出较好的一致性,证明了使用生成数据进行评测的可靠性。

**Github:**https://github.com/AIR-Bench/AIR-Bench

**HuggingFace Leaderboard:**https://huggingface.co/spaces/AIR-Bench/leaderboard

背景介绍

评测基准对于信息检索模型的发展十分重要。近年来,社区内已经出现了一系列具有里程碑意义的工作,如开放领域问答数据集 MS MARCO[1]、NQ[2],多语言检索数据集 MIRACL[3],通用领域检索数据集 BEIR[4]、MTEB[5]。然而,这些已有的评测基准存在两个问题

1. 测不准

模型存在过拟合评测基准的风险,评测基准无法提供准确的结果。目前已有的评测基准的最初设计目的是为了评估模型的泛化性。由于他们都采用了公开数据集合,所以相关数据集的训练集、评测集都是公开可见的。同时SOTA模型为了提高泛化性能力,普遍使用全网的公开数据集进行训练,所以很难避免发生现有评测基准的测试数据被混入训练数据的情况,导致评测基准的结果不准确。

2. 测不全

评测基准无法覆盖实际应用的领域,为实际应用领域提供的参考价值有限。现有的评测基准都是基于已有的人工标注公开数据集。由于人工评测的成本高,所以公开的人工数据集覆盖的领域有限,而且很少更新,无法及时覆盖不同的领域和语言。另一方面,随着大模型技术的普及,AI检索模型被应用到越来越多的领域,现有的评测基准无法覆盖用户对于AI技术日益广泛的评测需求。

AIR-Bench的亮点

1. 自动化

AIR-Bench的测试数据主要使用**大语言模型(Large Language Model,LLM)**进行自动化生产。只需要提供新的语料数据,AIR-Bench便可以迅速扩展为新领域提供评测结果。这种方式同时可以大大减少测试数据出现在任何现有的模型训练数据中的可能性,避免出现模型过拟合评测基准的风险。

2. 专注检索和RAG

AIR-Bench专门针对检索任务进行设计,去除了包括分类、聚类、改写等任务,专注于开放领域问答、释义检索这类检索任务。此外,AIR-Bench 首次包含长文档内检索的场景。在长文档内检索任务中,模型需要从长文档的若干片段中检索出包含了回答输入问题所需关键信息的片段。这与检索增强生成(Retrieval Augmented Generation,RAG)场景下的检索任务密切相关,更能体现模型在RAG场景中的性能。

3. 多样性和动态性

AIR-Bench的测试数据基于真实世界中的多领域和多语言语料库进行生产,从而保证测试数据的多样性。同时,AIR-Bench会定期进行更新,从而满足社区不断变化的评测需求。

AIR-Bench的数据生产和可靠性验证

AIR-Bench使用真实世界的语料库进行数据生产。语料库不需要人工标注,可以是传统检索场景下的大规模语料库,也可以是长文档内检索中的长文档片段。基于语料库随机选出若干文档作为正例,设计复杂的提示词让 LLM 为每个正例生产一条多样化的查询,并生产一些语义相近但是和查询不相关的负例,从而提高任务的难度。最后,AIR-Bench使用向量模型、排序模型和LLM对生成的测试数据进行的质量控制,保证生成数据的质量符合人类偏好。

为了验证AIR-Bench方法的可靠性,我们在相同的语料数据上,对比17个主流模型在使用AIR-Bench生成数据和人工标注数据上的排名顺序。在MS MARCO的DEV数据集上,我们验证AIR-Bench生成数据和人类专家标注数据有较好的一致性(Spearman 相关性系数为 0.8211,p_value=5e-5,详细结果参见附表1)

AIR-Bench 数据集概览

目前,AIR-Bench发布了首个版本24.04,覆盖8个领域和中、英两种语言,总计27个数据集,未来,AIR-Bench将在社区核心贡献者的推动下覆盖更多领域、语言,并不断刷新已存在的测试任务。

AIR-Bench 测试结果

我们在 AIR-Bench 上对部分模型进行了测试,包括传统的稀疏检索方法 BM25[6],开源社区较为流行的向量模型 bge-m3[7]、jina-embeddings-v2-base-en[8]、multilingual-e5-large[9]、e5-large-v2[10]、e5-mistral-7b-instruct[11],以及 OpenAI 的向量模型 text-embedding-3-large[12]、text-embedding-ada-002[13],还测试了"向量模型 + 排序模型"的结果,使用了 bge-reranker-v2-m3[14]、bge-reranker-large[15]、jina-reranker-v1-turbo-en[16]、bce-reranker-base_v1[17]。

在中英文问答任务上的排名结果如下(指标均为 NDCG@10):

在长文本问答任务上的结果如下(指标均为 NDCG@10):

AIR-Bench 的可靠性

附表 1

参考文献

[1] MS MARCO: A Human Generated MAchine Reading COmprehension Dataset, https://microsoft.github.io/msmarco/

[2] Natural questions: A Benchmark for Question Answering Research, https://ai.google.com/research/NaturalQuestions

[3] MIRACL: A Multilingual Retrieval Dataset Covering 18 Diverse Languages, https://github.com/project-miracl/miracl

[4] BEIR: A Heterogeneous Benchmark for Zero-shot Evaluation of Information Retrieval Models, https://github.com/beir-cellar/beir

[5] MTEB: Massive Text Embedding Benchmark, https://github.com/embeddings-benchmark/mteb

[6] BM25, https://github.com/castorini/pyserini

[7] bge-m3, https://huggingface.co/BAAI/bge-m3

[8] jina-embeddings-v2-base-en, https://huggingface.co/jinaai/jina-embeddings-v2-base-en

[9] multilingual-e5-large, https://huggingface.co/intfloat/multilingual-e5-large

[10] e5-large-v2, https://huggingface.co/intfloat/e5-large-v2

[11] e5-mistral-7b-instruct, https://huggingface.co/intfloat/e5-mistral-7b-instruct

[12] OpenAI text-embedding-3-large, https://openai.com/blog/new-embedding-models-and-api-updates/

[13] OpenAI text-embedding-ada-002, https://openai.com/blog/new-and-improved-embedding-model/

[14] bge-reranker-v2-m3, https://huggingface.co/BAAI/bge-reranker-v2-m3

[15] bge-reranker-large, https://huggingface.co/BAAI/bge-reranker-large

[16] jina-reranker-v1-turbo-en, https://huggingface.co/jinaai/jina-reranker-v1-turbo-en

[17] bce-reranker-base_v1, https://huggingface.co/maidalun1020/bce-reranker-base_v1

相关推荐
余炜yw5 分钟前
【LSTM实战】跨越千年,赋诗成文:用LSTM重现唐诗的韵律与情感
人工智能·rnn·深度学习
莫叫石榴姐22 分钟前
数据科学与SQL:组距分组分析 | 区间分布问题
大数据·人工智能·sql·深度学习·算法·机器学习·数据挖掘
如若12344 分钟前
利用 `OpenCV` 和 `Matplotlib` 库进行图像读取、颜色空间转换、掩膜创建、颜色替换
人工智能·opencv·matplotlib
YRr YRr1 小时前
深度学习:神经网络中的损失函数的使用
人工智能·深度学习·神经网络
ChaseDreamRunner1 小时前
迁移学习理论与应用
人工智能·机器学习·迁移学习
Guofu_Liao1 小时前
大语言模型---梯度的简单介绍;梯度的定义;梯度计算的方法
人工智能·语言模型·矩阵·llama
我爱学Python!1 小时前
大语言模型与图结构的融合: 推荐系统中的新兴范式
人工智能·语言模型·自然语言处理·langchain·llm·大语言模型·推荐系统
果冻人工智能1 小时前
OpenAI 是怎么“压力测试”大型语言模型的?
人工智能·语言模型·压力测试
日出等日落1 小时前
Windows电脑本地部署llamafile并接入Qwen大语言模型远程AI对话实战
人工智能·语言模型·自然语言处理
麦麦大数据1 小时前
Python棉花病虫害图谱系统CNN识别+AI问答知识neo4j vue+flask深度学习神经网络可视化
人工智能·python·深度学习