本页面介绍了使用
Kubernetes 部署选项的 AlloyDB Omni
15.12.0 版。
选择其他部署选项。
在 AlloyDB AI 中选择向量索引
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
选择文档版本:
本页面介绍了 AlloyDB AI 向量搜索策略,并说明了每种策略的使用时间。默认情况下,AlloyDB 使用 k 最近邻搜索 (KNN) 来查找与查询相似的向量。向量索引实现了一种称为近似最近邻 (ANN) 的搜索策略。创建向量索引时,AlloyDB AI 会使用 ANN,其性能优于 KNN。请注意,在选择向量索引时,您需要平衡查询延迟时间和召回率。
召回率用于衡量搜索如何有效地检索给定查询的所有相关项。例如,假设您有 100 个嵌入,每个嵌入表示数据库中的一个实体。您想查询具有目标向量的嵌入,并将其限制为 10 个结果。KNN 向量搜索使用暴力计算方法查找 10 个精确的最近向量,这可实现 100% 召回率。如果未创建或选择向量搜索索引,AlloyDB AI 会默认使用此方法。在 AlloyDB for PostgreSQL 中创建向量索引时,它通常会使用 ANN,这可能会根据相似度对向量进行分区,以便更快地检索。因此使用 ANN 时,前面的示例中返回的 10 个向量可能并非确切是距离上最接近的 10 个向量。如果检索到的 10 个向量中只有 8 个在空间上与查询向量最接近,则召回率为 80%。
查询延迟时间定义搜索结果的生成速度。例如,延迟时间是根据您提交查询后搜索返回向量所用的时间来计算的。
选择搜索策略
在 AlloyDB 中执行向量搜索时,请选择以下搜索策略之一:
搜索策略
|
说明 |
用例
|
K 最近邻 (KNN)
|
用于查找相对于给定查询数据点的 k 个最近邻数据点的算法。如果您在未创建索引的情况下执行向量搜索,系统会默认执行 KNN 搜索。
|
- 您的应用对准确率非常敏感,并且您需要最接近的精确匹配项。
- 您的向量少于 10 万个。
|
近似最近邻 (ANN)
|
用于查找近似最近的数据点的算法。ANN 根据相似度将现有客户数据点划分为较小的组。
|
- 您的应用需要短延迟时间。
- 您的向量超过 10 万个。
|
Google 建议您创建向量索引,以优化向量搜索查询的性能。如需详细了解如何使用 ANN 索引进行相似度搜索,请参阅使用 ScaNN 创建索引和查询向量。
后续步骤
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-09-04。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-09-04。"],[],[],null,[]]