milvus向量数据库
milvus支持混合搜索,多个向量同时检索,然后进行重排序最终返回结果。多向量包括(多个密集向量或稀疏向量)
Embedding嵌入
它是一种机器学习概念,用于将数据映射到高维空间,其中具有相似语义的数据被放置在一起。通常是来自 BERT 或其他 Transformer 家族的深度神经网络,嵌入模型可以有效地用一系列称为向量的数字表示文本、图像和其他数据类型的语义。这些模型的一个关键特征是高维空间中向量之间的数学距离可以指示原始文本或图像的语义相似性。
嵌入有两个主要类别,每个类别产生不同类型的向量:
- 密集嵌入(Dense embedding) :大多数嵌入模型将信息表示为数百到数千维的浮点向量。输出被称为“密集”向量,因为大多数维度具有非零值。例如,流行的开源嵌入模型 BAAI/bge-base-en-v1.5 输出 768 个浮点数的向量(768 维浮点向量)。
- 稀疏嵌入(Sparse embedding) :相反��稀疏嵌入的输出向量大多数维度为零,即“稀疏”向量。这些向量通常具有更高的维度(数万甚至更多),这取决于标记词汇的大小。稀疏向量可以通过深度神经网络或对文本语料库进行的统计分析生成。由于它们的可解释性和观察到的更好的跨领域泛化能力,开发人员越来越多地采用稀疏嵌入作为密集嵌入的补充。
Milvus支持的稀疏嵌入函数
嵌入函数 | 类型 | API 或开源 |
---|---|---|