Docs 菜单
Docs 主页
/
MongoDB Compass
/ /

创建 Atlas Vector Search 索引

在此页面上

  • 关于此任务
  • 步骤
  • 例子
  • 结果
  • 了解详情

版本 1.42.1 中的新增内容

您可以使用 MongoDB Compass 创建 Atlas Vector Search 索引。 这些索引使您能够索引向量数据其他数据类型,从而便于对索引字段进行语义搜索。 Atlas Vector Search 索引支持通过识别最相似的向量来索引向量数据。 索引通过计算查询向量与索引中存储的向量之间的距离来确定相似度。

要创建Atlas Search索引,您的部署必须符合以下情况之一:

  • MongoDB Atlas上托管且 Atlas 集群层为 M 10或更高的部署。

  • 使用 Atlas CLI 设置的本地部署。

此外,您的部署必须运行 MongoDB 7.0 或更高版本。

1

索引标签页中,单击 Create按钮,然后单击Search Index

2
3

选择 Vector Search

4

您必须首先提供以下默认矢量搜索索引配置。您可以稍后修改配置。

字段
类型
说明
type
字符串
标识索引类型的人类可读标签。 该值必须为vector才能对索引字段执行向量搜索。 如果省略,则默认为search ,仅支持全文搜索。
path
字符串
要创建索引的字段名称。
numDimensions
int
向量维度数,Atlas Search 在索引和查询时会严格要求向量维度数保持一致。此值不能大于 4096
similarity
字符串

用于搜索前 K 个最近邻域的向量相似度函数。 从以下函数中进行选择:

function
说明
euclidean
测量向量两端之间距离的函数。 此函数允许您根据不同的维度来衡量相似性。
cosine

一种根据向量之间的角度衡量相似度的函数。 此函数允许您衡量不按幅度缩放的相似性。

不能将零幅度向量与余弦一起使用。要衡量余弦相似度,我们建议将向量标准化并改用 dotProduct。

dotProduct
一种函数,其测量方式与余弦类似,但考虑了向量的幅度。 此函数可让您根据角度和幅度有效地衡量相似度。 要使用 dotProduct,必须在索引时和查询时将向量标准化为单位长度。
5

以下示例定义使用 sample_mflix.embedded_movies 集合并对 plot_embedding 字段建立索引以创建 Atlas Vector Search 索引:

{
"fields": [ {
"type": "vector",
"path": "plot_embedding",
"numDimensions": 1536,
"similarity": "euclidean"
} ]
}

要查看创建的索引的状态,请Go到Indexes标签页并将右上角的开关设置为Search Indexes

Status 列显示索引的状态。当状态为 Ready 时,您的索引就可以使用了。

有关搜索索引状态的更多信息,请参阅Atlas Search索引状态。

后退

Atlas Search 索引