Docs 菜单
Docs 主页
/
Atlas
/

MongoDB Vector Search 快速入门

本快速入门重点介绍从集群中检索包含与所提供的查询在语义上相关的文本的文档。但是,您可以在嵌入上创建向量搜索索引,表示您可能写入集群的任何类型的数据,例如图像或视频。

本快速入门使用 sample_mflix.embedded_movies集合,其中包含有关电影的详细信息。在集合的每个文档中,plot_embedding_voyage_3_large字段包含一个向量嵌入,表示 plot字段中的字符串。 有关集合中文档模式的详细信息,请参阅 样本 Mflix 数据集。

通过将源数据及其相应的向量嵌入存储在同一个文档中,您可以利用这两个字段进行复杂查询或混合搜索。您甚至可以将不同嵌入模型生成的向量嵌入存储在同一个文档中,以便在针对特定用例测试不同向量嵌入模型的性能时简化工作流程。

sample_mflix.embedded_movies 集合和示例查询中的向量嵌入是使用 Voyage AI voyage-3-large 嵌入模型创建的。您选择的嵌入模型决定了您在向量搜索索引中使用的向量维度和向量相似度函数。您可以使用任何您喜欢的嵌入模型,并值得尝试不同模型,因为根据您的具体应用场景,不同模型的准确性可能有所不同。

要了解如何创建您自己数据的向量嵌入,请参阅如何创建向量嵌入。

索引是一种数据结构,用于保存集合文档中的数据子集,从而提高特定查询的数据库性能。向量搜索索引指向包含向量嵌入的字段,其中包括向量的维度以及用于衡量查询向量与数据库存储向量之间相似性的函数。

由于本快速入门中使用的 voyage-3-large 嵌入模型会将数据转换为具有 2048 维度的向量嵌入并支持 cosine 函数,因此该向量搜索索引指定了相同数量的向量维度和相似度函数。

您在快速入门中运行的查询是一个聚合管道,其中 $vectorSearch 阶段执行近似近邻 (ANN) 搜索,随后 $project 阶段对结果进行细化。要查看向量搜索查询的所有选项,包括使用 精确近邻 (ENN) 或如何使用 filter 选项缩小向量搜索范围,请参阅 运行向量搜索查询。

后退

Vector Search

获得技能徽章

免费掌握“向量搜索基础知识”!

了解详情

在此页面上