先说结论
推荐bge-m3
https://ollama.com/library/bge-m3
常见嵌入模型
国产(中文)
BGE
BGE是由北京智源人工智能研究院提出的新的embedding模型。 https://github.com/FlagOpen/FlagEmbedding
- BGE-M3支持超过100种语言,并且能够高效实现不同粒度的检索任务。
- BGE系列模型包括中英文模型和多语言模型,其跨语言能力全面领先。 https://ollama.com/library/bge-m3 https://ollama.com/library/bge-large
M3E
- M3E主要针对中文文本进行向量化处理,但也有一定的双语处理能力。
BCE
BCE来源网易有道,BCEmbedding模型 https://github.com/netease-youdao/BCEmbedding
- BCE的具体多语言支持能力未明确提及,但其被用于RAG应用中,表明其可能具有一定的多语言处理能力。
Mixbread
https://huggingface.co/mixedbread-ai/mxbai-embed-large-v1
-
mxbai-embed-large
-
由 CSDN 和 InsCode AI 团队维护,文档详细且集成度高,例如与 Ollama、ChromaDB 等工具兼容性良好。
ERNIE(不能自己部署)
百度的
外国
Nomic
对比
1. 多语言支持能力
BGE
BGE-M3支持超过100种语言,并且能够高效实现不同粒度的检索任务。 BGE系列模型包括中英文模型和多语言模型,其跨语言能力全面领先。
M3E
M3E主要针对中文文本进行向量化处理,但也有一定的双语处理能力。
BCE
BCE的具体多语言支持能力未明确提及,但其被用于RAG应用中,表明其可能具有一定的多语言处理能力。
2. 文本处理能力
BGE
BGE可以将任意文本映射到低维的稠密向量,在文本向量化任务中得到了广泛的应用。 BGE系列模型在C-MTEB中文排行榜中名列前茅,显示了其强大的文本处理和语义表征能力。
M3E
M3E采用大规模混合嵌入技术,旨在提高词向量的表达能力和泛化能力。 M3E在训练过程中使用千万级的中文句对数据集进行训练,表现出色的向量编码能力。
BCE
BCE模型主要用于提升RAG应用的准确度,具体细节较少,但其作为开源大模型的一部分,应具备较强的文本处理能力。
3. 检索精度与整体语义表征能力
BGE
BGE在中英文语义检索精度与整体语义表征能力方面均超越了社区所有同类模型,如OpenAI的text embedding 002等。 其保持了同等参数量级模型中的最小向量维度,使用成本更低。
M3E
M3E在私有部署和大规模文本处理方面表现出色,适用于需要私有化和资源节约的场景。 它通过大规模混合嵌入技术提高了词向量的表达能力和泛化能力,适用于各种文本处理任务。
BCE
BCE的具体检索精度和语义表征能力未详细说明,但其在RAG应用中的表现表明其具有较高的准确性。
4. 资源使用情况
BGE
BGE系列模型在全球下载量超过1500万,位居国内开源AI模型首位,表明其资源使用高效且受欢迎。
M3E
M3E属于小模型,资源使用不高,CPU也可以运行,适合私有化部署和资源受限的环境。
BCE
BCE的具体资源使用情况未明确提及,但作为开源大模型的一部分,其资源使用可能相对较高。
总结
BGE:在多语言支持、文本处理能力和检索精度方面表现优异,尤其适合需要高精度和高效率的场景。同时,其资源使用较为经济。 M3E:专注于中文文本处理,具有强大的文本处理能力和灵活的部署选项,适合资源受限或需要私有化的应用场景。 BCE:虽然具体细节较少,但其在RAG应用中的表现表明其具备一定的优势,可能适合特定的高精度需求场景。
mxbai-embed-large 和 nomic-embed-text区别
mxbai-embed-large 和 nomic-embed-text 是两种主流的开源嵌入模型,均适用于检索增强生成(RAG)等自然语言处理任务,但在性能、架构和应用场景上存在显著差异。 以下是两者的主要区别:
1. 性能与基准测试
mxbai-embed-large
在 MTEB(大规模文本嵌入基准测试)中表现优异,创下了 Bert-large 尺寸模型的 SOTA 性能记录,准确率在 AmazonPolarity 数据集上达到 93.84%,显著优于 BERT 和 GPT-3 等模型。 通过对比训练和 AnglE 损失函数微调,具备较强的泛化能力,适应多领域和任务。
nomic-embed-text
在短文本和长文本任务上均表现优异,尤其在长上下文(如文档检索)中超越 OpenAI 的 text-embedding-ada-002。 在分类任务中准确率略低(如 AmazonPolarity 数据集上为 91.81%),但推理速度更快,适合实时场景。
2. 模型架构与资源消耗
mxbai-embed-large
基于 Bert-large 架构优化,参数规模较大,但通过高效的训练策略降低了资源消耗,适合在资源受限环境中部署。 支持多任务学习和动态路由,增强了对不同任务的适应性。
nomic-embed-text
采用轻量化设计,模型体积更小(仅 0.55GB),推理速度和内存占用更优,尤其适合边缘计算或低配置设备。 支持长达 8192 个标记的上下文窗口,显著优于多数同类模型。
3. 适用场景
mxbai-embed-large
高精度场景:如电商评论分类、短文本检索、问答系统等需高准确率的任务。 RAG 应用:被 Jetson Copilot 等工具选为默认嵌入模型,适合结合 Llama3 等生成模型构建高效的检索增强系统。
nomic-embed-text
长文本处理:如法律文档分析、多段落语义检索等需长上下文支持的场景。 多语言任务:虽未明确支持多语言,但其泛化能力使其在多语言混合数据中表现稳定。
4. 社区支持与工具集成
mxbai-embed-large
由 CSDN 和 InsCode AI 团队维护,文档详细且集成度高,例如与 Ollama、ChromaDB 等工具兼容性良好。
nomic-embed-text
开源社区活跃,支持完全可复现的训练代码和开放数据,适合需要透明度和定制化的场景。
5. 局限性
mxbai-embed-large
在复杂序列标注(如命名实体识别)任务中表现较弱。
nomic-embed-text
中文等特定语言的优化不足,需依赖其他专用模型(如 shaw/dmeta-embedding-zh)。
总结与选型建议
若需 高精度短文本处理 或 资源受限环境 下的 RAG 应用,优先选择 mxbai-embed-large。 若需 长上下文支持 或 轻量化部署,nomic-embed-text 更为合适。 对于多语言场景,可结合领域专用模型(如 BGE-M3 或 dmeta-embedding-zh)补充优化。
模型列表
BGE模型列表
- BAAI/bge-large-en-v1.5
- BAAI/bge-base-en-v1.5
- BAAI/bge-small-en-v1.5
- BAAI/bge-large-zh-v1.5
- BAAI/bge-base-zh-v1.5
- BAAI/bge-small-zh-v1.5
- BAAI/bge-large-en
- BAAI/bge-base-en
- BAAI/bge-small-en
- BAAI/bge-large-zh
- BAAI/bge-base-zh
- BAAI/bge-small-zh
M3E模型列表
- m3e-small
- m3e-base
- m3e-large
BCE模型列表
- bce-embedding-base_v1
- bce-reranker-base_v1
SiliconFlow
- BAAI/bge-m3
- BAAI/bge-large-zh-v1.5
- BAAI/bge-large-en-v1.5
- netease-youdao/bce-embedding-base_v1
- Pro/BAAI/bge-m3(收费)
Ollama
Ollama模型列表
- nomic-embed-text(最多人使用)
- mxbai-embed-large
- snowflake-arctic-embed
- snowflake-arctic-embed2
- bge-m3
- bge-large
应用
[Obsidian] Smart Connections
- BGE-micro-v2
- BGE-small
- BGE-small-4K
- GTE-tiny
- Ivysaur
- Jina-v2-base-zh-8k
- Jina-v2-small-en
- Nomic-embed-text
- Nomic-embed-text-v1.5
Ref
https://ollama.com/blog/embedding-models https://blog.csdn.net/hero272285642/article/details/140466752 https://blog.csdn.net/drdairen/article/details/145512915# https://blog.csdn.net/gitblog_02394/article/details/144503454 https://blog.csdn.net/m0_57327599/article/details/145510660