使用 S3 Vectors 和向量存储桶 - Amazon Simple Storage Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用 S3 Vectors 和向量存储桶

什么是 Amazon S3 Vectors?

Amazon S3 Vectors 为人工智能代理、推理、RAG 和语义搜索提供了针对成本进行了优化的专用向量存储。S3 Vectors 旨在提供与 Amazon S3 相同的弹性、持久性和可用性,可以为不频繁的查询实现亚秒级的延迟,为较频繁的查询实现低至 100 毫秒的延迟。您可以获得一组专门的 API 操作,用于存储、访问和查询向量数据,而无需预调配任何基础设施。S3 Vectors 由几个协同工作的关键组件组成:

  • 向量存储桶:一种新的存储桶类型,专为存储和查询向量而构建。

  • 向量索引:在向量存储桶中,可以在向量索引中组织向量数据。可以对向量索引中的向量数据执行相似性查询。

  • 向量:将向量存储在向量索引中。对于相似性搜索和人工智能应用程序,向量以向量嵌入的形式创建,向量嵌入是保留内容(例如文本、图像或音频)之间语义关系的数字表示形式,因此相似的项目可以放置得更近。S3 Vectors 可以基于语义执行相似性搜索,而不是通过从数学上比较向量相互之间的接近程度来执行精确匹配。在将向量数据添加到向量索引时,还可以附加元数据,以便将来根据一组条件(例如时间戳、类别和用户首选项)筛选查询。

向 S3 Vectors 进行的写入具有强一致性,这意味着可以立即访问最近添加的数据。当随着时间的推移写入、更新和删除向量时,S3 Vectors 会自动优化向量数据,以实现向量存储的最佳性价比,即使数据集扩展和演变也是如此。可以使用 Amazon S3 的现有访问权限控制机制(包括存储桶策略和 IAM 策略)来控制对向量数据的访问权限。有关每个存储桶的向量索引限制和每个索引的向量限制的更多信息,请参阅限制和局限性

使用案例:跨大型数据集进行相似性搜索

相似性搜索可让您根据向量表示形式而不是精确的关键字匹配来查找概念上彼此相关的项目。这些搜索可以识别具有相似含义或特征的内容,即使确切的字词或可视化元素不同也是如此。

使用 S3 Vectors 进行相似性搜索的常见使用案例包括:

  • 医学成像:在数百万张医学图像中寻找相似之处,以协助制定诊断和治疗计划

  • 版权侵权:识别大型媒体库中潜在的衍生内容

  • 重复图像删除:从大型图像集中检测并移除重复或接近重复的图像

  • 视频理解:在视频素材中搜索特定场景或内容

  • 企业文档搜索:启用跨公司文档的语义搜索,以根据含义查找相关的信息

  • 个性化:通过查找相似的项目来提供量身定制的推荐内容

如果想要构建经济高效的向量搜索和代理式人工智能应用程序,且搜索时间为亚秒级,则应使用 S3 Vectors。使用向量存储桶,您只需按实际用量付费,并且可以节省上传、存储和查询向量嵌入的成本。有关定价的更多信息,请参阅 Amazon S3 定价

S3 Vectors 的功能

专为向量构建的存储

S3 Vectors 是云中第一个专门构建的用于存储和查询向量的对象存储。向量存储桶旨在为向量数据提供经济高效、弹性且耐久的存储。

向量嵌入正在改变客户使用和检索其非结构化数据的方式,范围涉及检测医学图像间的相似性、在数千小时的视频片段中发现异常、浏览大型代码库以及确定与给定法律事项最相关的判例法。这些新兴的应用程序与嵌入模型相结合,可将数据(例如文本、图像、视频、代码)的语义编码为数字向量嵌入。

在向量存储桶中,可以在向量索引内组织向量数据,而无需预置基础设施。当随着时间的推移写入、更新和删除向量时,S3 Vectors 会自动优化向量数据,以实现向量存储的最佳性价比,即使数据集扩展和演变也是如此。有关每个存储桶的向量索引限制和每个索引的向量限制的更多信息,请参阅限制和局限性

执行相似性查询

借助 S3 Vectors,您可以执行查询以查找与查询向量最相似的向量。对于不频繁的查询,响应时间为亚秒级;对于较频繁的查询,响应时间低至 100 毫秒。S3 Vectors 非常适合查询频率较低的工作负载。

元数据筛选

可以将元数据(例如年份、作者、流派和地点)作为键值对附加到向量。默认情况下,所有元数据都是可筛选的,除非显式将其指定为不可筛选。可以根据特定的属性使用可筛选的元数据筛选查询结果,从而增强查询的相关性。向量索引支持字符串、数字、布尔值和列表类型的元数据。有关每个向量的元数据大小限制和每个向量的可筛选元数据大小限制的更多信息,请参阅限制和局限性

访问管理和安全性

在 Amazon Organizations 中,可以使用 IAM 策略和 Service Control Policies 来管理对向量存储桶中资源的访问权限。S3 Vectors 使用的服务命名空间与 Amazon S3 不同:s3vectors 命名空间。因此,可以专门为 S3 Vectors 服务及其资源设计策略。可以设计策略来授予对各个向量索引、向量存储桶内的所有向量索引或账户中所有向量存储桶的访问权限。所有 Amazon S3 屏蔽公共访问权限设置均始终对向量存储桶启用,而无法禁用。

与 Amazon 服务的集成

S3 Vectors 与其它 Amazon 服务集成以增强向量处理能力:

  • Amazon OpenSearch Service:在继续使用 OpenSearch API 操作的同时优化向量存储成本。这非常适合需要高级搜索功能(例如混合搜索、聚合、高级筛选和分面搜索)的工作负载。还可以将 S3 向量索引的快照导出到 Amazon OpenSearch 无服务器,以实现高 QPS 和低延迟向量搜索。

  • Amazon Bedrock 知识库:选择 S3 Vectors 中的向量索引作为向量存储,以节省检索增强生成(RAG)应用程序的存储成本。

  • SageMaker 融通式合作开发工作室中的 Amazon Bedrock:使用 S3 Vectors 作为向量存储来开发和测试知识库。