PutVectorIndex

调用PutVectorIndex接口在向量存储空间中创建向量索引。

注意事项

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

  • 向量索引 PutVectorIndex 请求每秒最大支持 5 个。

权限说明

阿里云账号默认拥有全部权限。阿里云账号下的RAM用户或RAM角色默认没有任何权限,需要阿里云账号或账号管理员通过RAM PolicyBucket Policy授予操作权限。

API

Action

说明

PutVectorIndex

oss:PutVectorIndex

创建向量索引。

请求语法

POST /?putVectorIndex HTTP/1.1
Host: exampebucket-123***456.cn-hangzhou.oss-vectors.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue
Content-type: application/json

{
   "dataType": "string",
   "dimension": int,
   "distanceMetric": "string",
   "indexName": "string",
   "metadata": { 
      "nonFilterableMetadataKeys": [string, string]
   }
}

请求头

此接口仅涉及公共请求头。更多信息,请参见公共HTTP头定义

请求参数

名称

数据类型

是否必选

示例值

描述

dataType

字符串

float32

向量数据类型,当前用户不可选。默认值:float32。

dimension

数值

512

向量维度,支持1~4096维。默认为512。

distanceMetric

字符串

euclidean

距离度量函数,可选值如下:

  • euclidean:欧氏距离(默认值)

  • Cosine:余弦距离

indexName

字符串

my-vector-index

索引名称,用户可自定义,默认为空。

  • 在 Vector Bucket 内全局唯一,长度 1 ~63 字符

  • 只允许字母和数字,首字母必须字母开头

metadata

对象

-

元数据配置的容器,仅支持填写非过滤元数据。

nonFilterableMetadataKeys

字符串数组

["field1", "field2"]

非过滤元数据配置。有如下输入限制:

  • 元数据个数为 1~10 个

  • 每个元数据主键名称的长度 1~63 字节

父节点:metadata

响应头

此接口仅涉及公共响应头。更多信息,请参见公共HTTP头定义

示例

请求示例

POST /?putVectorIndex HTTP/1.1
Host: exampebucket-123***456.cn-hangzhou.oss-vectors.aliyuncs.com
Date: Thu, 17 Apr 2025 01:33:47 GMT
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218
Content-type: application/json

{
   "dataType": "float32",
   "dimension": 1024,
   "distanceMetric": "euclidean",
   "indexName": "my-vector-index",
   "metadata": { 
      "nonFilterableMetadataKeys": ["category", "timestamp"]
   }
}

返回示例

HTTP/1.1 200 OK
x-oss-request-id: 534B371674E88A4D8906****
Date: Thu, 17 Apr 2025 01:33:47 GMT
Connection: keep-alive
Server: AliyunOSS