网易首页 > 网易号 > 正文 申请入驻

一文通透Text Embedding模型:从text2vec、openai-text embedding到m3e、bge(上)

0
分享至

文末大模型项目开发线上营》春节开秒!

前言

而本文一开始是属于:因我司第三项目组「知识库问答项目」而起的此文《知识库问答LangChain+LLM的二次开发:商用时的典型问题及其改进方案 》中的1.2节(该1.2节初稿来自我司LLM项目团队第三项目组的bingo),但为把Text Embedding模型阐述的更为精准、全面,特把那部分的内容抽取出来,不断完善成此文

最终尽可能相比网上已有的其他资料都更细致化

01

第一部分 衡量文本向量表示效果的榜单:MTEB、C-MTEB

1.1 《MTEB: Massive Text Embedding Benchmark(海量文本嵌入基准)》

判断哪些文本嵌入模型效果较好,通常需要一个评估指标来进行比较,《MTEB: Massive Text Embedding Benchmark(海量文本嵌入基准)》就是一个海量文本嵌入模型的评估基准

  • 论文地址: https://arxiv.org/abs/2210.07316 MTEB包含8个语义向量任务,涵盖58个数据集和112种语言。通过在MTEB上对33个模型进行基准测试,建立了迄今为止最全面的文本嵌入基准。我们发现没有特定的文本嵌入方法在所有任务中都占主导地位。这表明该领域尚未集中在一个通用的文本嵌入方法上,并将其扩展到足以在所有嵌入任务上提供最先进的结果

1.2 中文海量文本embedding任务排行榜:C-MTEB

从 Chinese Massive Text Embedding Benchmark 中可以看到目前最新的针对中文海量文本embedding的各项任务的排行榜,针对不同的任务场景均有单独的排行榜。

任务榜单包括:

  • Retrieval

  • STS

  • PairClassification

  • Classification

  • Reranking

  • Clustering

目前检索任务榜单下效果最好的是bge系列的 bge-large-zh 模型,langchain-chatchat项目中默认的 m3e-base 也处于比较靠前的位置

02

第二部分 OpenAI的text-embedding模型:从ada-002到3-small/3-large

2.1 text-embedding-ada-002

2.1.1 模型简介

text-embedding-ada-002是OpenAI于2022年12月提供的一个embedding模型,但需要调用接口付费使用。其具有如下特点:

  • 统一能力:OpenAI通过将五个独立的模型(文本相似性、文本搜索-查询、文本搜索-文档、代码搜索-文本和代码搜索-代码)合并为一个新的模型 在一系列不同的文本搜索、句子相似性和代码搜索基准中,这个单一的表述比以前的嵌入模型表现得更好

  • 上下文:上下文长度为8192,使得它在处理长文档时更加方便

  • 嵌入尺寸:只有1536个维度,是davinci-001嵌入尺寸的八分之一,使新的嵌入在处理矢量数据库时更具成本效益

2.1.2 模型使用

以下是OpenAI官方文档中给出的用于文本搜索的代码实例


from openai.embeddings_utils import get_embedding, cosine_similarity

def search_reviews(df, product_description, n=3, pprint=True):embedding = get_embedding(product_description, model='text-embedding-ada-002')df['similarities'] = df.ada_embedding.apply(lambda x: cosine_similarity(x, embedding))res = df.sort_values('similarities', ascending=False).head(n)return res

res = search_reviews(df, 'delicious beans', n=3)

2.3 最新发布的text-embedding-3之small/large的缩短嵌入技术

2.3.1 OpenAI三大嵌入模型的嵌入维度对比

ada v2

text-embedding-3-small

text-embedding-3-large

Embedding size

1536

512

1536

256

1024

3072

Average MTEB score

61.0

61.6

62.3

62.0

64.1

64.6

从上图可知,text-embedding-3-small/large这两个新嵌入模型允许开发者通过在 dimensions API 参数中传递嵌入而不丢失其概念表征属性,从而缩短嵌入(即从序列末尾删除一些数字)

  1. 例如在 MTEB 基准上,text-embedding-3-large 可以缩短为 256 的大小, 同时性能仍然优于未缩短的 text-embedding-ada-002 嵌入(大小为 1536)

  2. 当然,仍然可以使用最好的嵌入模型 text-embedding-3-large 并指定 dimensions API 参数的值为 1024,使得嵌入维数从 3072 开始缩短,牺牲一些准确度以换取更小的向量大小

2.3.2 Matryoshka Representation Learning

OpenAI 所使用的「缩短嵌入」方法,随后引起了研究者们的广泛注意,最终发现,这种方法和 2022 年 5 月的一篇论文所提出的「 Matryoshka Representation Learning 」方法是相同的(MRL 的一作 Aditya Kusupati 也评论道:OpenAI 在 v3 嵌入 API 中默认使用 MRL 用于检索和 RAG!其他模型和服务应该很快就会迎头赶上)

不同于常规的fix的embedding表征,Matryoshka representation learning提出了一个方法,生成的表征是按照x下标进行重要性排序的,所以在资源受限的环境,可以只使用前面top-k维表征就可以

再比如,在ImageNet-1K上训练ResNet50,将224×224像素的图像嵌入d=2048表示向量,然后通过线性分类器在 个标签中进行预测

  1. 对于MRL,选择 作为嵌套维度 假设得到了一个带标签的数据集 ,其中 是输入点, 是所有 中 的标签

  2. MRL采用标准的经验风险最小化方法,通过使用独立的线性分类器对每个嵌套维度 进行多类分类损失优化,参数化为 之后,所有损失分别按各自的重要性 进行适当缩放后,做最终聚合MRL optimizes the multi-class classification loss for each of the nested dimension m ∈M using standard empirical risk minimization using a separatelinear classifier, parameterized by W(m) ∈RL×m .

    All the losses are aggregated after scaling withtheir relative importance (cm ≥0)m∈M respectively 尽管只对嵌套维度进行优化,MRL仍能产生精确的表示,并对介于所选表示粒度之间的维度进行插值

03

第三部分 m3e模型

3.1 m3e模型简介

M3E是Moka Massive Mixed Embedding的简称,解释一下

  • Moka,表示模型由MokaAI训练,开源和评测,训练脚本使用uniem ,评测BenchMark使用 MTEB-zh

  • Massive,表示此模型通过千万级(2200w+)的中文句对数据集进行训练

  • Mixed,表示此模型支持中英双语的同质文本相似度计算,异质文本检索等功能,未来还会支持代码检索

其有多个版本,分为m3e-small、m3e-base、m3e-large,m3e GitHub地址:GitHub - wangyingdong/m3e-base,其

  • 使用in-batch负采样的对比学习的方式在句对数据集进行训练,为了保证in-batch负采样的效果,使用A100来最大化batch-size,并在共计2200W+的句对数据集(包含中文百科,金融,医疗,法律,新闻,学术等多个领域)上训练了 1 epoch

  • 使用了指令数据集,M3E 使用了300W+的指令微调数据集,这使得 M3E 对文本编码的时候可以遵从指令,这部分的工作主要被启发于 instructor-embedding

  • 基础模型,M3E 使用 Roberta 系列模型进行训练,目前提供 small 和 base 两个版本 此文《知识库问答LangChain+LLM的二次开发:商用时的典型问题及其改进方案》中的langchain-chatchat便默认用的m3e-base

3.1.1 m3e与openai text-embedding-ada-002

以下是m3e的一些重大更新

  • 2023.06.08,添加检索任务的评测结果,在 T2Ranking 1W 中文数据集上,m3e-base 在 ndcg@10 上达到了 0.8004,超过了 openai-ada-002 的 0.7786 见下图s2p ndcg@10那一列(其中s2p, 即 sentence to passage ,代表了异质文本之间的嵌入能力,适用任务:文本检索,GPT 记忆模块等)

此外,m3e团队建议

  1. 如果使用场景主要是中文,少量英文的情况,建议使用 m3e 系列的模型

  2. 多语言使用场景,并且不介意数据隐私的话,作者团队建议使用 openai text-embedding-ada-002

  3. 代码检索场景,推荐使用 openai text-embedding-ada-002

  4. 文本检索场景,请使用具备文本检索能力的模型,只在 S2S 上训练的文本嵌入模型,没有办法完成文本检索任务

3.2 m3e模型微调

微调脚本:m3e是使用uniem脚本进行微调


from datasets import load_dataset

from uniem.finetuner import FineTuner

dataset = load_dataset('shibing624/nli_zh', 'STS-B')# 指定训练的模型为 m3e-smallfinetuner = FineTuner.from_pretrained('moka-ai/m3e-small', dataset=dataset)finetuner.run(epochs=3)

详细教程暂放在「大模型项目开发线上营」中,至于本文后续更新

详细教程暂放在七月在线的「大模型项目开发线上营」中

「大模型项目开发线上营」一上线就受到了学员和各企业的青睐,报名数即将破200!

开课时间:23年11月29, 已讲前20课(都有回放),每周两到三次课,均在晚8-10点上课。

本课大纲从10月下旬起,几乎每周都在新增内容(10.11日上线时原定19次课,增加到了现在的31次课。

现在报名加送:
① 一年GPU,封装了诸如ChatGLM3等各大主流大模型
② 一个VIP年卡

↓↓↓扫码抢购↓↓↓

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
张本智和哭红双眼!哽咽失声:我难以释怀 日乒被打哭 2天4人落泪

张本智和哭红双眼!哽咽失声:我难以释怀 日乒被打哭 2天4人落泪

念洲
2026-04-05 09:18:56
李大钊牺牲后,妻子筹措安葬费,鲁迅捐了五十,汪精卫捐了一千

李大钊牺牲后,妻子筹措安葬费,鲁迅捐了五十,汪精卫捐了一千

云霄纪史观
2026-03-29 20:30:22
美媒:若中国不偿还百年前的债务,美国也将不承认欠华8600亿美元

美媒:若中国不偿还百年前的债务,美国也将不承认欠华8600亿美元

文史达观
2025-03-18 12:54:58
对安世中国损招用尽后,荷兰人突然发现,自己已被自己逼上了绝路

对安世中国损招用尽后,荷兰人突然发现,自己已被自己逼上了绝路

孤单是寂寞的毒
2026-04-03 00:58:27
勇士放弃乐透抽签背水一战,库里的豪赌真的值吗?

勇士放弃乐透抽签背水一战,库里的豪赌真的值吗?

体坛周报
2026-04-05 16:03:11
他是著名演员,从发病到去世仅20分钟,主持人儿子比他更有名

他是著名演员,从发病到去世仅20分钟,主持人儿子比他更有名

削桐作琴
2026-03-21 15:03:45
毛新宇将军携家人回韶山祭祖,今年和往年不同,一细节让人动容

毛新宇将军携家人回韶山祭祖,今年和往年不同,一细节让人动容

Mr王的饭后茶
2026-04-05 12:25:39
倒闭车企留下的百万烂尾车主,被逼成了修车大神

倒闭车企留下的百万烂尾车主,被逼成了修车大神

快刀财经
2026-04-02 22:14:50
特朗普:因霍尔木兹海峡被关闭而无法获得航空燃油的国家,建议你们从美国买,或鼓起勇气去海峡那里抢过来

特朗普:因霍尔木兹海峡被关闭而无法获得航空燃油的国家,建议你们从美国买,或鼓起勇气去海峡那里抢过来

鲁中晨报
2026-03-31 20:53:04
翻到张雪峰2016年婚纱照,瞬间看哭了!

翻到张雪峰2016年婚纱照,瞬间看哭了!

魔都姐姐杂谈
2026-03-26 22:06:50
以色列清醒了?内塔尼亚胡指示军方,严厉打击约旦河西岸暴力行为

以色列清醒了?内塔尼亚胡指示军方,严厉打击约旦河西岸暴力行为

至死不渝的爱情
2026-04-01 00:04:50
回顾“91女神”琪琪:五官出众,却因天真让自己“受伤”

回顾“91女神”琪琪:五官出众,却因天真让自己“受伤”

就一点
2025-11-22 10:36:39
周恩来在劳山遇刺,11名警卫全部牺牲,调查后才知凶手竟大有来历

周恩来在劳山遇刺,11名警卫全部牺牲,调查后才知凶手竟大有来历

小哥很OK
2025-11-17 21:02:50
从一吨560元到无人问津!为何废旧玻璃不能熔成新玻璃?

从一吨560元到无人问津!为何废旧玻璃不能熔成新玻璃?

心中的麦田
2026-04-04 20:50:26
广东女车主眼睁睁看着摇中的“3333”号牌逾期作废 原因是买的吉利星愿公告过期无法上牌

广东女车主眼睁睁看着摇中的“3333”号牌逾期作废 原因是买的吉利星愿公告过期无法上牌

信网
2026-04-03 14:01:04
美官员:失踪的第二名美军飞行员已被找到,但尚未脱险

美官员:失踪的第二名美军飞行员已被找到,但尚未脱险

新京报
2026-04-05 11:50:06
900亿援乌贷款泡汤,26国会议无成果,泽连斯基入欧被拒

900亿援乌贷款泡汤,26国会议无成果,泽连斯基入欧被拒

喜你成疾药石无医
2026-04-05 15:50:51
数千美军深入伊朗腹地,抢了浓缩铀之后,光天化日修建机场运走?

数千美军深入伊朗腹地,抢了浓缩铀之后,光天化日修建机场运走?

遁走的两轮
2026-04-05 14:07:25
43岁蒋欣澳门逛商场被偶遇,171大高个又瘦又美,比电视上好看

43岁蒋欣澳门逛商场被偶遇,171大高个又瘦又美,比电视上好看

韩小娱
2026-04-04 16:32:36
女人结束婚外情,常常会用以下几个方式,很果断

女人结束婚外情,常常会用以下几个方式,很果断

叶飞飞情感屋
2026-04-05 10:32:12
2026-04-05 17:07:00
七月在线
七月在线
AI与智能网联汽车职教平台
837文章数 37关注度
往期回顾 全部

科技要闻

花200薅5千算力,Claude冷血断供“龙虾”

头条要闻

高速停车救人发生二次事故致死伤 男子被认定次责不服

头条要闻

高速停车救人发生二次事故致死伤 男子被认定次责不服

体育要闻

CBA最老球员,身价7500万美元

娱乐要闻

好用心!宋慧乔为好友庆生做一桌美食

财经要闻

谁造出了优思益这头“怪物”?

汽车要闻

家用SUV没驾驶乐趣?极氪8X第一个不同意

态度原创

教育
手机
数码
亲子
时尚

教育要闻

从副职“原地提拔”到正职,新校长要注意这三点

手机要闻

不止A20 Pro!iPhone 18 Pro系列还将搭载全新C2、N2芯片

数码要闻

英伟达“神经纹理压缩”可让显存占用直降85%,且游戏画质无损

亲子要闻

五个月宝宝非得玩钢琴

女人不管多大年纪衣服不要随便穿,这些穿搭可借鉴,优雅显瘦

无障碍浏览 进入关怀版