📄️ Embedding概述
嵌入(Embedding)是一个机器学习概念,用于将数据映射到高维空间,其中具有相似语义的数据被放置在一起。通常是来自 BERT 或其他 Transformer 家族的深度神经网络,嵌入模型可以有效地用一系列称为向量的数字表示文本、图像和其他数据类型的语义。这些模型的一个关键特征是高维空间中向量之间的数学距离可以指示原始文本或图像的语义相似性。这一特性解锁了许多信息检索应用,例如谷歌和必应等网络搜索引擎,电子商务网站上的产品搜索和推荐,以及最近流行的生成式人工智能中的检索增强生成(RAG)范式。
📄️ BGE M3
BGE-M3以其多语言、多功能和多粒度的能力而闻名。BGE-M3能够支持100多种语言,为多语言和跨语言检索任务设立了新的基准。其在单一框架内执行密集检索、多向量检索和稀疏检索的独特能力,使其成为广泛信息检索(IR)应用的理想选择。
📄️ BM25
BM25 是信息检索中使用的排名函数,用于估计文档与给定搜索查询的相关性。它通过包含文档长度归一化和词项频率饱和度来增强基本的词项频率方法。BM25可以通过将文档表示为词项重要性分数的向量来生成稀疏嵌入,从而在稀疏向量空间中实现高效的检索和排名。
📄️ OpenAI
Milvus通过OpenAIEmbeddingFunction类与OpenAI的模型集成。该类提供了使用预训练的OpenAI模型对文档和查询进行编码的方法,并返回与Milvus索引兼容的密集向量。要使用此功能,请从OpenAI获取API密钥,方法是在其平台上创建帐户。
📄️ Sentence Transformer
Milvus 通过 SentenceTransformerEmbeddingFunction 类集成了 Sentence Transformer 预训练模型。该类提供了使用预训练的 Sentence Transformer 模型对文档和查询进行编码的方法,并返回与 Milvus 索引兼容的密集向量。
📄️ SPLADE
SPLADE 嵌入是一种模型,为文档和查询提供高度稀疏的表示,继承了词袋(BOW)模型的优良特性,如精确词项匹配和高效性。
📄️ Voyage
Milvus 通过 VoyageEmbeddingFunction 类与 Voyage 的模型集成。该类提供了使用 Voyage 模型对文档和查询进行编码的方法,并返回与 Milvus 索引兼容的密集向量作为嵌入。要使用此功能,请从Voyage获取 API 密钥,方法是在其平台上创建一个帐户。