全部产品
Search
文档中心

对象存储 OSS:OSS Vectors 概述

更新时间:Sep 22, 2026

OSS Vectors 是阿里云对象存储 OSS 提供的向量存储与检索能力,通过专门的向量 Bucket 类型来存储、查询和管理向量数据。具有低成本、大规模和简单易用的特点,面向多模态检索、知识库、RAG、AI Agent等 AI 场景提供向量存储和向量查询的能力。OSS Vectors 提供 Standard Mode 与 Fusion Mode 两种索引模式,同一向量 Bucket 内可同时创建两种模式的索引表,您可按业务场景按需选择。可以将任何通过第三方服务生成的向量数据写入向量 Bucket。同时,支持对海量原始数据与向量数据进行统一治理,对原始数据 Bucket 与向量 Bucket 配置相同的 Bucket Policy,或通过统一格式导出日志以便审计。

核心概念

  • 向量 Bucket:全新 Bucket 类型,是管理大规模向量数据的云资源。

  • 向量 Index:可以在向量 Bucket 中创建向量 Index。向量 Index 是存储向量数据的索引表,可以根据业务类型在同一个向量 Bucket 中创建多张向量 Index,用以存储不同业务的向量数据。当发起检索查询时,会根据向量 Index 中向量数据的相似性来返回检索结果。

  • 索引模式:向量 Index 分为 Standard Mode 与 Fusion Mode 两种模式。两种模式在索引结构、Schema 能力、检索方式上存在差异,创建向量 Index 时即需确定模式。一个向量 Bucket 中可以同时创建不同模式的向量 Index。

  • 向量数据:通过向量模型将图片、视频、文档等非结构化数据转换成的高维数值数组,用以表征其内容特征。向量检索正是根据向量数据的相似性进行检索结果返回。可以利用任何向量化服务(如ECS、PAI、阿里云百炼)生成向量,并通过 OSS API、SDK 或 ossutil 工具将其写入指定向量索引。在写入时,还可以附加元数据(Metadata),用于后续的标量过滤查询。

  • 标量元数据:在写入向量数据时,还可以附加写入标量元数据(Metadata),用于后续的标量过滤查询。

向量索引模式

OSS Vectors 提供两种索引模式,以满足不同成本、性能与检索复杂度需求。您可以在同一个向量 Bucket 中同时创建两种模式的索引表。

对比项

Standard Mode

Fusion Mode

售卖形态

Serverless 形态,已商业化售卖

Serverless 形态,邀测中(当前仅在印度尼西亚(雅加达)地域开放邀测)

适用场景

温冷向量数据的存储和检索,如企业内部的多媒体素材管理和检索、成本敏感型 RAG 知识库、AI 数据集检索和管理、AIGC 数据管理、多媒体素材检索和管理、内容推荐等场景。

温热向量数据的存储和检索,包含复杂的检索方式、混合检索等,对性能要求更高。如 APP 在线高频多模态检索、网盘多模态内容检索、在线海量租户的 RAG 知识库、APP 内容推荐、AI 助手等场景。

Schema

Schemaless 元数据,单张索引表默认一个向量字段

显式 Schema,单张索引表最多支持 3 个向量字段,向量与标量字段总数不超过 100 个

标量字段类型

String、Number、Boolean、List

string、long、double、bool、ip、geoPoint

检索方式

向量相似度检索-单路、向量相似度检索+标量后过滤

向量相似度检索-单路、向量相似度检索-多路、向量相似度检索+标量前过滤(混合检索)、全文检索、标量检索

检索结果排序

分数排序(距离排序)

分数排序(距离排序)、自定义字段排序、支持 Rank 排序(RRF & Weight)、结果支持分页

向量能力

单列向量

多列向量

距离计算公式

欧氏距离、余弦距离

欧氏距离、余弦距离、最大内积

产品优势

  • 低成本:向量数据已成为各类 AI 应用的必要基础设施,正呈现爆炸式增长的趋势。OSS Vectors 采用简洁友好的计费模式,仅根据向量数据存储容量和检索扫描数据量两个计费项进行计费,较传统方式的使用成本可以大幅度下降 90% 以上。

  • 大规模:OSS Vectors 采用面向大规模向量数据存储的架构设计,可以承载海量向量数据的存储需求。OSS 采用 Serverless 的弹性扩缩容架构,使用 OSS Vectors 后,无需关心扩容问题。

  • 简单易用:OSS Vectors 提供完整的 API、SDK 和命令行工具 ossutil。同时,也支持在 OSS 控制台进行管控和向量数据读写操作,如向量数据的检索查询、向量数据的添加、批量插入等。

  • 统一管理:可以为向量 Bucket 和存储海量原始数据的 Bucket 通过相同的方式进行管理,如通过相同方式配置 Bucket Policy 来进行权限管理,配置相同的日志导出路径来进行操作审计。

  • 语义检索:可以使用 OSS Vectors 提供的 QueryVectors 接口对索引表中的向量数据进行查询,并获取按照相似性进行排序的检索结果。与此同时,OSS Vectors 支持根据标量元数据进行过滤查询,可以在将向量数据写入向量 Bucket 时,携带标量元数据,以达到标量后过滤的效果。同时,在创建向量索引 Index 时,可以设置非过滤元数据。非过滤元数据无法作为后过滤条件,但会随检索结果返回,作为向量结果的内容描述信息。

  • 混合检索(Fusion Mode):Fusion Mode 支持在一张索引表内配置多个向量字段与多种标量字段,并通过多路 Retriever 同时检索,最终使用 RRF 或 Weight Rank 对多路结果进行融合排序,满足多模态、复杂条件下的高精度检索需求。

应用场景

场景一:构建低成本的 RAG 应用

随着 AI 业务发展,向量数据规模呈指数级增长,存储和检索成本压力日渐增加。对于知识库、AI 助手、医疗影像检索等多模态检索场景,用户对检索延迟的容忍度逐渐放宽(可能从几十毫秒到百毫秒级)。此时,使用 OSS Vectors Standard Mode 作为 RAG 应用的向量存储底座,能以极低的成本满足业务需求。

场景二:构建分层检索的 AI Agent

不同的 AI Agent 对检索性能的要求各异。可以将全量向量数据集中存储在成本极低的 OSS 向量 Bucket Standard Mode 中;对于需要高性能、低延迟的业务场景,可以存储在 OSS 向量 Bucket Fusion Mode 中,以构建分层检索 AI Agent 应用架构。

场景三:构建数据统一管理的 AI 内容管理平台

AI 应用带来海量非结构化内容(UGC、内部资料、AI 生成内容)与相应的向量化结果,存储与检索体系容易割裂。通过将原始数据存入通用 OSS Bucket,向量数据存入 OSS 向量 Bucket,可构建高效的 AI 数据管理平台,如 AIGC 数据管理等。仅需一套 API/SDK 即可同时管理和访问原始文件与向量索引,轻松构建高效、统一的 AI 内容管理平台。

场景四:语义检索与多模态混合检索

对于电商商品检索、视频/图片内容理解、企业知识库问答等对召回率和延迟要求更高的在线场景,可使用 Fusion Mode。该模式支持多列向量、全文检索、多路 Retriever 混合排序,能够在向量相似度、文本关键词、标量过滤、地理空间等多种检索信号之间灵活组合,显著提升复杂查询的检索效果。

企业级特性

域名访问

提供独立的公网和内网访问域名,与通用 OSS Bucket 隔离。

  • 公网访问域名:$bucketname-$uid.regionID.oss-vectors.aliyuncs.com

  • 内网访问域名:$bucketname-$uid.regionID-internal.oss-vectors.aliyuncs.com

注意:除 ListVectorBuckets 操作外,其他操作必须使用三级域名。

安全传输

支持通过 HTTPS 协议进行加密传输,保障数据在传输过程中的安全。

访问控制

  • Bucket Policy:支持基于资源的授权策略,可将权限控制精确到向量 Bucket、单个或多个向量索引级别。

  • RAM Policy:支持基于身份的 RAM 授权策略,能够对向量 Bucket、向量索引及数据操作进行细粒度权限控制,同时支持跨账号访问授权。

日志

  • 访问日志转存:支持将访问日志实时或准实时转存到指定的 Bucket 中。

  • 统一日志格式:日志格式与通用 OSS 日志完全兼容,并额外增加了 BucketARN 字段,用以唯一标识向量 Bucket 资源,方便进行统一的日志分析。

配额与限制

OSS Vectors 具有某些限制和约束,在设计与实现向量存储和检索方案时,请根据以下限制合理规划 Bucket 数量、索引规模、元数据结构以及接口调用策略。如需调大以下相关配额,请联系技术支持申请调整。

  • 单个主账号在单个地域最多创建 100 个向量Bucket。

  • 单个向量 Bucket 中最多可创建 100 张向量索引。

Standard Mode 使用限制

  • 单个向量索引表最多可存储 20 亿行向量数据。

  • 向量维度范围:1~4096 维。

  • 向量检索请求的 TopK 默认范围:1~500。

  • 单个向量的元数据(可筛选 + 不可筛选)总大小上限:200 KB。

  • 单个向量的单个可筛选元数据大小上限:2 KB。

  • 单个向量的元数据(可筛选 + 不可筛选)总数量上限:100 个。

  • 标量元数据类型支持 4 种,包括 String、Number、Boolean、List。

  • 在通过元数据对向量进行过滤查询时:

    • 单次过滤指令中可过滤元数据的累计长度不超过 20 KB。

    • 单次过滤指令中可过滤元数据项数量不超过 1024 个。

    • 过滤条件嵌套层级最多支持 8 层。

  • 通过 QueryVectors 和 ListVectors 进行标量元数据过滤时,支持以下操作符:

    • 等值:$eq、$ne

    • 范围:$gt、$gte、$lt、$lte

    • 包含:$in、$nin

    • 存在性:$exists

    • 逻辑:$and、$or、$nor

  • 对于单个Bucket,创建向量索引的 API (PutVectorIndex)请求频率限制为最多每秒 5 次。

  • 对于单个索引,写入向量数据的 API (PutVectors)的 QPS 上限为 1000,单并发最大支持批量写入 500 条,所有并发批量最多写入 2500 条。举例,如若单并发批量写入 100 条,则写入 QPS 最大支持 2500/100=25。

  • 写入向量数据的 API (PutVectors)的请求体大小最大 20 MB。

  • 对于单个索引,检索向量数据的 API (QueryVectors)的 QPS 上限为 100。

    • 说明:检索 QPS 与单表向量规模、向量维度、查询 TopK、查询时携带的标量元数据条件均有关系。通常来说,在典型的 1000 万行 1024 维向量规模中,当查询 TopK=100 时,查询 QPS 通常能够达到 100。当表数据规模增加或查询 TopK 取值增大时,实际可达到的检索 QPS 可能下降,无法保证一定能达到 100,请以实际业务测试结果为准。

  • 检索向量数据的 API (QueryVectors)的 Response 最大 8 MB。

  • 列举向量索引的 API ( ListVectorIndexes) 响应中每页最大返回索引个数 500,可分页获取下一批索引列表。

  • 列举向量的 API (ListVectors ) 并发度上限 16 个。

Fusion Mode 使用限制

  • 字段名在单个索引表内唯一,长度 1~63 字符,支持大小写字母、数字和下划线(_),且必须以字母开头。

  • 字段数限制:总字段数 ≤ 100 个,向量字段 ≤ 3 个,分词字段 ≤ 8 个,其它标量字段占用剩余配额。至少必须存在一个类型为 vector 的字段。

  • 标量字段类型支持 string、long、double、bool、ip、geoPoint。

  • 数值与 IP 字段(double、long、ip)的数组标记 isArray 默认 false,开启数组后单个数组最多 128 个元素。

  • 字符串字段(string)开启数组后单个数组最多 512 个元素,单个 string 元素最大 4 KB,数组所有元素整体最大 64 KB。自定义分词器支持使用 " "、"|"、"-"、"_"、"," 进行自定义分词,分词后需要单个词 ≤ 4 KB,超出部分服务端会截断再进行索引。字符串的使用细节限制请参考创建索引时的 Schema 说明文档。

  • Fusion Mode 的 API(PutVectors)限制请求体大小最大 20 MB,QPS 上限为 1000,单并发最大支持批量写入 500 条,所有并发批量最多写入 2500 条。举例,如若单并发批量写入 100 条,则写入 QPS 最大支持 2500/100=25。

  • Fusion Mode 专用的向量检索的 API(QueryVectorsFusion)相关限制说明:

    • 该 API 支持三种查询方式:

      • knn 字段支持纯向量检索、向量检索结合前置 Filter 过滤:

        • 支持单路或多路向量查询,单次请求最多 3 个 KNN 查询。

        • topK 参数最大 500。

        • numCandidates 参数最大 1000。

      • query 字段支持纯标量检索、全文检索:

        • $and、$or、$nor 每个逻辑算子最多 512 个子算子,最多 8 层嵌套。

        • $in、$nin 最多 1024 个元素。

        • $textMatch、$textMatchPhrase 的查询文本长度上限均为 512 字节。

        • $geoPolygon 的 points 最多 16 个点。

      • retriever 支持多路混合查询并进行结果融合:

        • retriever 存在时,顶级参数仅允许使用 indexName、limit、partitionKeys、returnMetadata、returnMetadataFields 这 5 个,其余参数(含 knn、query、sort、nextToken)全部禁止。

        • retrievers 数组最少 1 个、最多 3 个元素。

        • 复合检索器(RRF Retriever、Weight Retriever)的 windowSize 最大 500。

    • 该 API 其它限制:

      • limit 最大 500。

      • 单次请求最多 3 个排序字段,分数排序仅支持 desc 倒序排序。

      • nextToken 翻页仅在只有 query(标量检索 + 全文检索)的情况下允许;向量检索(knn)和多路检索(retriever)不支持翻页。

      • partitionKeys 最多 512 个元素,且所有元素加起来最长 4 KB。

      • returnMetadata 默认 false,即默认不返回任何字段,设为 true 返回所有字段。

      • returnMetadataFields 仅在 returnMetadata=true 时生效,不支持返回向量类型字段,设为 [] 等同于 returnMetadata=false 不返回任何字段,设为 null 等同于未填该参数,即返回全部字段。

      • Response 最大 8 MB。

  • Fusion Mode 当前处于邀测阶段,仅在印度尼西亚(雅加达)地域提供,部分配额和 API 限制可能与 Standard Mode 存在差异,具体以 API 文档为准。

计费说明

Standard Mode 已收费,请及时关注产品账单金额。收费方式请参考向量计费项。Fusion Mode 目前免费邀测中。