自然语言处理: RAG优化之Embedding模型选型重要依据:mteb/leaderboard榜

ops/2024/11/29 20:45:09/

本人项目地址大全:Victor94-king/NLP__ManVictor: CSDN of ManVictor

git地址:https://github.com/opendatalab/MinerU


写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!

写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!

写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!



近期RAG 应用不断涌现,它们的性能表现各具特色。尽管我们可以通过多个方面(例如查询改写、图像数据处理、分块策略、元数据管理、密集检索、稀疏检索、结果重排、排序融合、提示词优化以及上下文压缩等)逐步优化这些应用,但在选择 SOTA(State-of-the-Art)模型时,参考开源排行榜依然是必不可少的步骤。mteb/leaderboard 是一个极为有用的资源,它能帮助您了解并选择符合您需求的多语言文本生成模型。例如,在RAG系统中,无论是中文还是英文的向量化模型、重排模型或摘要模型的选择,都可以通过该榜单获得直观且量化的参考依据。

图片

MTEB Leaderboard

MTEB(Multilingual Text-to-Text Evaluation Benchmark)是一个多语言文本嵌入的评估基准,旨在评估和比较不同多语言文本生成模型的性能。排行榜页面展示了各种模型在多个任务上的表现,这些任务可能包括但不限于翻译、摘要、问答等。

  • https://huggingface.co/spaces/mteb/leaderboard

  • C-MTEB(Chinese Massive Text Embedding Benchmark)中文语义向量评测基准

  • 评测任务:包括涵盖112种语言的58个数据集

    图片

在 MTEB 的排行榜页面上,可以看到:

  • 不同模型的名称 :列出参与评估的各种模型。
  • 各项任务的得分 :每个模型在不同任务上的性能评分。
  • 综合排名 :根据各项任务的得分对模型进行综合排名。

这个排行榜页面对于研究人员和开发者非常有用,因为它提供了:

  • 模型性能的直观对比 :帮助选择最适合特定任务的模型。
  • 最新进展的跟踪 :了解当前多语言文本生成领域的最新进展和技术趋势。
  • 基准测试的参考 :为新模型的开发和评估提供基准。
如何使用
  • 查看模型性能 :浏览排行榜,了解不同模型在各个任务上的表现。
  • 获取模型信息 :点击模型名称或链接,可以跳转到模型的详细页面,获取更多信息和使用方法。
  • 参与评估 :如果你有自己的模型,可以按照 MTEB 的评估标准提交模型进行测试,加入排行榜。

了解任务相关概念

TASK CATEGORY(任务类别)

枚举值中文翻译含义解释
s2s句子到句子任务涉及将单个句子转换或处理成另一个句子。
s2p句子到段落任务涉及将单个句子转换或处理成段落。
p2p段落到段落任务涉及将段落转换或处理成另一个段落。

TASK TYPE(任务类型)

枚举值中文翻译含义解释
Retrieval检索从大量数据中检索出相关信息。
Reranking重排根据某种标准重新排序数据。
STS语义文本相似度评估两个文本之间的语义相似度。
Summarization摘要生成文本的简短摘要。
InstructionRetrieval指令检索检索与特定指令相关的信息。
Speed速度评估处理或响应的速度。
BitextMining双语文本挖掘从双语文本中挖掘信息。
Classification分类将数据分配到预定义的类别中。
MultilabelClassification多标签分类为数据分配多个类别标签。
Clustering聚类将数据分组,使得同一组内的数据点相似度高。
PairClassification配对分类对成对的数据进行分类。

TASK SUBTYPE(任务子类型)

枚举值中文翻译含义解释
Article retrieval文章检索从大量文章中检索出与查询相关的文档。
Conversational retrieval对话检索检索与对话上下文相关的信息或回复。
Dialect pairing方言配对识别和匹配不同方言之间的对应关系。
Dialog Systems对话系统构建能够与用户进行自然对话的系统。
Discourse coherence话语连贯性评估或生成连贯、逻辑一致的长篇话语。
Language identification语言识别识别文本所使用的语言。
Linguistic acceptability语言可接受性评估文本是否符合语言学的规范。
Political classification政治分类根据政治倾向对信息进行分类。
Question answering问答回答用户提出的问题。
Sentiment/Hate speech情感/仇恨言论识别文本中的情感倾向或仇恨言论。
Thematic clustering主题聚类将文本根据主题进行分组。
Scientific Reranking科学重排对科学文献或信息进行重新排序。
Claim verification事实核查验证声明或信息的真实性。
Topic classification主题分类将文本按照主题进行分类。
Code retrieval代码检索检索与编程问题相关的代码片段。
Cross-Lingual Semantic Discrimination跨语言语义区分区分不同语言中相似词汇的语义差异。
Textual Entailment文本蕴含判断一个句子是否能够从另一个句子逻辑上推导出来。
Counterfactual Detection反事实检测识别和处理反事实或假设性陈述。
Emotion classification情感分类对文本中表达的情感进行分类。
Reasoning as Retrieval推理检索通过检索相关信息来辅助推理过程。
Duplicate Detection重复检测识别和处理重复或相似的内容。

C-MTEB(Chinese Massive Text Embedding Benchmark)榜单是专门用来评估中文Embedding模型的多任务混合评测榜单,包含了Classification、Clustering、Pair Classification、Reranking、Retrieval、STS六种任务类型,共35个公开数据集。

其中, Retrieval作为检索场景下最常用、最重要的测试任务 ,被广泛应用与大模型应用的落地场景,Retrieval任务包括查询语句和语料库,对于每个查询,从语料库中查询最相似的top-k个文档,使用BEIR相同的设置,nDCG@10是主要指标。

Retrieval是C-MTEB中的一个任务方向,共包含8个 中文文本数据集 ,涉及医疗、政策、电商、娱乐等各个方面。数据集主要有三部分组成:query、corpus、dev,其中query为中文问题,corpus为中文文档,包括了query的回答,该任务主要就是从海量corpus中检索出与query最为相关的内容。

Retrieval任务的8个子任务

  • Ecom:中文电商领域检索任务;
  • Medical:中文医疗领域检索任务;
  • Covid:中文政策文件类检索任务;
  • Video:中文娱乐视频领域检索任务;
  • T2:来源于搜索引擎的段落排序中文基准测试;
  • Dureader:来源于百度搜索引擎的段落检索任务;
  • Mmarco:中文微软问答文摘检索测试;
  • Cmedqa2:中文社区医疗问答测试

http://www.ppmy.cn/ops/137736.html

相关文章

利用Java爬虫获得1688商品分类:技术解析与代码示例

在电商领域,了解商品分类对于市场分析和产品策略至关重要。1688作为中国领先的B2B电商平台,其商品分类数据对于商家来说具有极高的价值。本文将详细介绍如何使用Java编写爬虫程序,以合法合规的方式获取1688商品分类信息,并提供代码…

JavaEE---计算机是如何工作的?

1.了解冯诺依曼体系结构 2.CPU的核心概念,CPU的两个重要指标(核心数和频率) 3.CPU执行指令的流程(指令表,一条一条指令,取指令,解析指令,执行指令) 4.操作系统核心概念(管理硬件,给软件提供稳定的运行环境) 5.进程的概念(运行起来的程序和可执行文件的区别) 6.进程的管理(…

深度解析:Nginx模块架构与工作机制的奥秘

文章目录 前言Nginx是什么?Ngnix特点: 一、Nginx模块与工作原理1.Nginx的模块1.1 Nginx模块常规的HTTP请求和响应的流程图:1.2 Nginx的模块从结构上分为如下三类:1.3 Nginx的模块从功能上分为如下三类: 2.Nginx的进程模型2.1 Nginx进程结构2.2 nginx进程…

Django+Nginx+uwsgi网站Channels+redis+daphne多人在线聊天实现粘贴上传图片

在DjangoNginxuwsgi网站Channelsredisdaphne多人在线的基础上(详见DjangoNginxuwsgi网站使用Channelsredisdaphne实现简单的多人在线聊天及消息存储功能-CSDN博客),实现在输入框粘贴或打开本地图片,上传到网站后返回图片路径&…

【H2O2|全栈】Node.js(1)

目录 前言 开篇语 准备工作 ES6导入导出 导入 有名导出 匿名导出 Node概念 Node导入导出 导入 有名导出 匿名导出 Node常用模块 path模块 和路径有关的全局变量 常见方法 导入方法 fs模块 常见方法 导入方法 结束语 前言 开篇语 本系列博客主要分享Java…

AI在线免费视频工具4:AI视频编辑ai-video-composer

1、ai-video-composer 使用自然语言从您的资产组成新的视频。添加视频、图像和音频资源,让 Qwen 2.5-Coder 为您生成一个新的视频(使用 FFMPEG) https://huggingface.co/spaces/huggingface-projects/ai-video-composer

【C/C++】深入解析 Stack 与 Queue 数据结构(详解):实现原理、应用场景与性能优化

文章目录 引言栈(Stack)数据结构详解1. 栈的基本概念2. 栈的实现原理3. C中的栈实现4. 栈的应用场景5. 栈的性能分析6. 实战示例:括号匹配 队列(Queue)数据结构详解1. 队列的基本概念2. 队列的实现原理3. C中的队列实现…

Rust vtable(Rust虚表、Rust虚函数表)动态绑定、Rust多态调用、通过类型引用创建trait对象(自动实例化)

文章目录 Rust vtable原理深度解析1. 什么是 vtable?1.1 Trait 对象和 vtableTrait对象指针结构- 一个指向数据的指针(指向具体类型实例的数据)- 一个指向 vtable 的指针,vtable 存储了该类型所有 trait 方法的函数指针 示例&…