全部產品
Search
文件中心

Object Storage Service:PutVectors

更新時間:Sep 25, 2025

調用PutVectors介面向索引中寫入向量資料。

注意事項

  • 單張向量 Index 表最多儲存 5000 萬行向量資料。

  • PutVectors介面單批次最大寫入 500 條。

許可權說明

阿里雲帳號預設擁有全部許可權。阿里雲帳號下的RAM使用者或RAM角色預設沒有任何許可權,需要阿里雲帳號或帳號管理員通過RAM PolicyBucket Policy授予操作許可權。

API

Action

說明

PutVectors

oss:PutVectors

寫入向量資料。

請求文法

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

{
   "indexName": "string",
   "vectors": [ 
      { 
         "data": {
            "float32":[float]
         },
         "key": "string",
         "metadata": {
             "key1": ["value1", "value2"],
             "key2": "value2"
         }
      }
   ]
}

要求標頭

此介面僅涉及公用要求標頭。更多資訊,請參見公用HTTP頭定義

請求參數

名稱

資料類型

是否必選

樣本值

描述

indexName

字串

vectorindex1

索引名稱。

vectors

容器

-

寫入的向量數組,總大小1KB~500KB之間

key

字串

doc-001

寫入向量主鍵,標識向量唯一值。限制:

  • key相同則覆蓋,但若在同一批次中key有重複則全部異常

  • key單值長度在1~1024字元之間

  • key需為utf8格式。

父節點:vectors

data

容器

-

向量內容。限制:

  • 向量的維度必須與向量索引配置的維度數量相匹配

  • 對於餘弦距離度量,不允許出現零向量(所有元素均為零的向量)。

  • 向量資料必須僅包含有效浮點數值。不允許包含無效值,如 NaN(非數值)或無窮大(Infinity)

父節點:vectors

float32

數值數組

[0.1, 0.2, 0.3]

向量資料,資料類型為float32。向量維度必須與索引定義的維度一致。使用餘弦距離度量時,不允許出現零向量。

父節點:data

metadata

容器

-

中繼資料。限制:

  • 總大小 <= 40KB

  • 可過濾metadata限制:

    • 長度 ∈ [0, 10]

    • 可過濾部分大小 <= 2KB

    • 支援類型為string或string array。

父節點:vectors

回應標頭

此介面僅涉及公用回應標頭。更多資訊,請參見公用HTTP頭定義

樣本

請求樣本

POST /?putVectors HTTP/1.1
Host: examplebucket-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

{
   "indexName": "vectorindex1",
   "vectors": [
      {
         "key": "doc-001",
         "data": {
            "float32": [0.1, 0.2, 0.3, 0.4, 0.5]
         },
         "metadata": {
             "category": ["technology", "ai"],
             "title": "Introduction to Vector Search"
         }
      },
      {
         "key": "doc-002",
         "data": {
            "float32": [0.6, 0.7, 0.8, 0.9, 1.0]
         },
         "metadata": {
             "category": ["technology", "database"],
             "title": "Advanced Database Indexing"
         }
      }
   ]
}

返回樣本

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

錯誤碼

錯誤碼

HTTP狀態代碼

描述

VectorIndexParameterInvalid

400

請求中提供的向量索引參數不合法。

MalformedJson

400

請求體中的 JSON 格式不符合規範。

AccessDenied

403

返回該錯誤的可能原因如下:

  • 發起請求時沒有傳入使用者驗證資訊。

  • 沒有操作許可權。

NoSuchVectorIndex

404

指定的向量索引不存在。

QpsLimitExceeded

503

QPS 限流(請求速率受限)。當 HTTP 狀態代碼為 5xx 時,可能在同一批請求中只有部分資料寫入成功,寫入不具備原子性。