一篇讲清:嵌入模型是什么、维度与参数量级意味着什么、用什么指标衡量好坏(MTEB 等)、以及当下主流模型(OpenAI / Cohere / Voyage / BGE / GTE / E5 / Qwen3 / NV-Embed …)的维度、参数、效果到底怎么排。所有数值为公开基准的近似参考值,MTEB 分数会随版本与测试集浮动,最终以你自己的数据评测为准。
嵌入模型(Embedding Model)把文本(词、句、段、文档)映射成一个固定长度的实数向量。语义相近的文本,在向量空间里距离更近——下游靠余弦相似度就能做语义检索、聚类、去重、推荐。
向量长度,常见 384 / 768 / 1024 / 1536 / 3072 / 4096。维度越高,能编码的语义细节越多,但存储和检索成本线性上涨。多数 RAG 系统 512–1024 维是甜区。
从 22M(MiniLM)到 8B(Qwen3-Embedding)。小模型靠"精调的 BERT 类"性价比高;大模型把 LLM 当底座,效果更猛但推理慢 10 倍以上、需 GPU。
OpenAI text-embedding-3、Voyage、部分开源模型支持Matryoshka Representation Learning(MRL):训练时让向量的"前 N 维"本身就够用。于是同一模型可在256/512/1024等维度间切换,截断到 256 维约只掉 5% 质量,存储省 12 倍。
最主要的公开基准是 MTEB(Massive Text Embedding Benchmark)——覆盖 8 大类任务、数十个数据集、上百种语言,给出一个"综合平均分"。但综合分≠你的任务分,RAG 更该看其中的 Retrieval(检索)子集。
最核心(RAG)。指标 nDCG@10——看相关文档是否排进前 10。
V-measure / NMI。衡量向量能否把同类文本聚在一起。
Accuracy / F1。向量+简单分类器的效果。
Spearman 相关系数。两句话相似度打分与人工标注的相关性。
MAP / nDCG。对候选集重新排序的能力。
AP / F1。判断句子对是否属于某关系。
Spearman。文档与其摘要的向量相似度。
F1 / Precision。跨语言平行句挖掘。
以上加权平均,越接近 100 越好(当前 SOTA ≈ 73)。
下表汇总当下最常用模型。维度/参数/MTEB 为公开基准近似参考(会随版本浮动),价格以官方或主流报价为准。
| 模型 | 提供方 | 类型 | 参数量 | 维度 | 上下文 | MTEB≈ | 核心特点 |
|---|---|---|---|---|---|---|---|
| text-embedding-3-small | OpenAI | API | 未公开 | 1536(MRL→256) | 8191 | 62.3 | 性价比之王,$0.02/1M |
| text-embedding-3-large | OpenAI | API | 未公开 | 3072(MRL→256) | 8191 | 64.6 | 质量更高,$0.13/1M |
| embed-english-v3.0 | Cohere | API | 未公开 | 1024 | 512 | 64.5 | 英文检索强,input_type 区分查询/文档 |
| embed-multilingual-v3 | Cohere | API | 未公开 | 1024 | 512 | ~62–64 | 100+ 语言 |
| voyage-3 / 3-large | Voyage | API | 未公开 | 1024(MRL) | 32K | 65–68 | 长上下文,质量顶流 |
| BGE-large-en-v1.5 | BAAI | 开源 | 335M | 1024 | 512 | 64.2 | 英文开源标杆 |
| BGE-M3 | BAAI | 开源 | 568M | 1024 | 8192 | ~64 | 多语言 + 稠密/稀疏/多向量三模 |
| GTE-large | 阿里 | 开源 | 335M | 1024 | 512 | 63.1 | 通用强,生态成熟 |
| GTE-Qwen2-7B-instruct | 阿里 | 开源 | 7.62B | 3584 | 32K | 72.1 | LLM 底座,效果猛但贵 |
| E5-large-v2 | 微软 | 开源 | 335M | 1024 | 512 | 62.3 | 弱监督对比预训练 |
| NV-Embed-v2 | NVIDIA | 开源 | 7.85B | 4096 | 32K | 72.3 | 曾登顶 MTEB |
| Qwen3-Embedding-8B | 阿里 | 开源 | 8B | 可变 | 32K | 73.8 | 2025 多语 SOTA |
| Qwen3-Embedding-0.6B | 阿里 | 开源 | 0.6B | 可变 | 32K | 66.3 | 轻量多语,可本地跑 |
| all-MiniLM-L6-v2 | SBERT | 开源 | 22M | 384 | 256 | ~58–62 | 极轻极快,默认 baseline |
| all-mpnet-base-v2 | SBERT | 开源 | 109M | 768 | 384 | ~63 | 经典高质量小模型 |
| Nomic Embed v1.5 | Nomic | 开源 | 137M | 768 | 8192 | 62.3 | 长上下文开源代表 |
| Jina-v3 | Jina | 开源 | 570M | 1024 | 32K | 65.5 | 指令式,8 类任务可指定 |
维度:small 1536 / large 3072(均支持 MRL 截断到 256)
上下文:8191
MTEB:62.3 / 64.6
价格:$0.02 / $0.13 每 1M tokens
结论:small 是多数 RAG 的默认起点,便宜够用;large 仅在"每点召回都值钱"的场景(法律/医疗)上算得回本。
维度:1024(含 light 384 版)
上下文:512
MTEB:英文 64.5 / 多语 ~62–64
价格:$0.10 / 1M
亮点:input_type 分别编码 query 与 document(非对称检索),多语言与分类表现好。
维度:1024(MRL 可截断)
上下文:32K
MTEB:65–68
价格:$0.06 / $0.12 每 1M
亮点:长上下文 + 高综合分,并有 code-3 等垂直优化版。
335M / 1024 维 / 512 上下文 / MTEB 64.2。英文开源标杆,加查询前缀 Represent this sentence for searching relevant passages: 效果最佳。
568M / 1024 维 / 8192 上下文 / MTEB ~64。独特地同时支持稠密 + 稀疏 + 多向量三种检索表示,100+ 语言,长文档友好,是中文 RAG 的热门默认。
335M / 1024 / 512 / MTEB 63.1。通用文本嵌入,HuggingFace 下载量极高,易落地。
335M / 1024 / 512 / MTEB 62.3。微软弱监督对比预训练,多尺寸(small/base/large);multilingual-e5 支持 100+ 语言。
8B / 可变维度 / 32K / MTEB 73.8。2025 多语 SOTA,指令可指定任务语言与领域。
7.85B / 4096 / 32K / MTEB 72.3。Mistral 底座,曾登顶;延迟高,适合离线批处理。
7.62B / 3584 / 32K / MTEB 72.1。阿里 LLM 底座版,质量接近 NV-Embed。
22M / 384 / 256 / MTEB ~58–62。极轻极快(CPU 可跑),做原型、小语料、实时检索的默认 baseline。
109M / 768 / 384 / MTEB ~63。比 MiniLM 质量更高,仍是很多项目的"免费高质量"选择。
→ 选开源:BGE-M3(中多语)/ BGE-large-en(英文)/ all-mpnet(轻量)。
→ 选 API:OpenAI-3-small(通用)/ Cohere(多语)/ Voyage(长文+质量)。
→ BGE-M3 或 multilingual-e5 / Cohere multilingual;优先 8K+ 上下文模型。
→ Qwen3-Embedding-8B / 4B、NV-Embed-v2、GTE-Qwen2-7B(MTEB 72+)。
用你自己的 50–100 条 query→doc 对算 Recall@K 决定,而不是只看榜单分。
RAG 看 Retrieval 子集;分类/聚类强的模型检索未必强。用自己数据算 Recall@K 才是铁律。
3072/4096 维存储与延迟翻倍。多数场景 512–1024 维 + MRL 截断已足够,省 4–12 倍成本。
非对称检索(Cohere 的 input_type、BGE 的查询前缀)能显著提升召回,别忘了加前缀。
不同模型的向量空间不可比;索引与查询必须用同一个模型同一维度,且最好 L2 归一化后用点积。
7B+ 模型推理慢 10 倍+、吃 GPU。除非召回率直接决定收益,否则 335M 开源款性价比更高。
长文档/长 query 要选 8K–32K 上下文模型(BGE-M3、Qwen3、Voyage、Nomic),否则被截断丢信息。