全部产品
Search
文档中心

Object Storage Service:PutVectorIndex

更新时间:Jan 10, 2026

API PutVectorIndex membuat indeks vektor di dalam bucket vektor.

Catatan

  • Satu bucket vektor dapat berisi hingga 100 indeks vektor. Untuk menaikkan kuota ini, hubungi Technical Support.

  • Maksimal lima permintaan PutVectorIndex didukung per detik.

Izin

Secara default, Akun Alibaba Cloud memiliki semua izin, sedangkan pengguna Resource Access Management (RAM) dan Peran RAM tidak memiliki izin apa pun. Akun Alibaba Cloud atau administrator harus memberikan izin melalui Kebijakan RAM atau kebijakan bucket.

API

Aksi

Deskripsi

PutVectorIndex

oss:PutVectorIndex

Membuat indeks vektor.

Sintaksis permintaan

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

Header permintaan

Operasi ini hanya menggunakan header permintaan umum. Untuk informasi lebih lanjut, lihat Header Permintaan Umum.

Parameter permintaan

Nama

Tipe data

Diperlukan

Contoh

Deskripsi

dataType

String

Ya

float32

Tipe data dari data vektor. Parameter ini tidak dapat dikonfigurasi oleh pengguna. Nilai default: float32.

dimension

Nilai

Ya

512

Dimensi vektor. Nilai valid: 1 hingga 4.096. Nilai default: 512.

distanceMetric

String

Ya

euclidean

Fungsi ukuran jarak. Nilai valid:

  • euclidean: Jarak Euclidean (default)

  • cosine: Jarak Cosinus

indexName

String

Ya

vectorindex1

Nama kustom untuk indeks.

  • Nama harus unik secara global dalam bucket vektor dan terdiri dari 1 hingga 63 karakter.

  • Nama hanya dapat berisi huruf dan angka, serta harus dimulai dengan huruf.

metadata

Objek

Tidak

-

Kontainer untuk konfigurasi metadata. Hanya metadata yang tidak dapat difilter yang didukung.

nonFilterableMetadataKeys

Array of strings

Tidak

["field1", "field2"]

Konfigurasi untuk metadata yang tidak dapat difilter. Batasan berikut berlaku:

  • Jumlah entri metadata harus antara 1 hingga 10.

  • Nama setiap kunci utama metadata harus terdiri dari 1 hingga 63 byte. Nama dapat berisi huruf besar, huruf kecil, angka, dan garis bawah (_). Nama harus dimulai dengan huruf besar, huruf kecil, atau garis bawah (_).

Node induk: metadata

Header respons

Operasi ini hanya menggunakan header respons umum. Untuk informasi lebih lanjut, lihat Header Respons Umum.

Contoh

Permintaan contoh

POST /?putVectorIndex 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

{
   "dataType": "float32",
   "dimension": 1024,
   "distanceMetric": "euclidean",
   "indexName": "vectorindex1",
   "metadata": { 
      "nonFilterableMetadataKeys": ["category", "timestamp"]
   }
}

Respons contoh

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

SDK

API PutVectorIndex didukung oleh kit pengembangan perangkat lunak (SDK) berikut:

Alat baris perintah ossutil

Untuk perintah ossutil yang sesuai dengan API PutVectorIndex, lihat put-vector-bucket.

Kode kesalahan

Kode kesalahan

Kode status HTTP

Deskripsi

VectorIndexParameterInvalid

400

Parameter indeks vektor yang diberikan dalam permintaan tidak valid.

MalformedJson

400

Format JSON dalam badan permintaan tidak valid.

VectorBucketIndexExceedLimit

400

Jumlah indeks yang dibuat telah mencapai batas maksimum. Maksimal 100 indeks vektor dapat dibuat dalam satu bucket vektor.

AccessDenied

403

Kesalahan ini dikembalikan karena alasan berikut:

  • Informasi autentikasi pengguna tidak disertakan dalam permintaan.

  • Anda tidak memiliki izin yang diperlukan.

VectorBucketIndexAlreadyExist

409

Nama indeks yang ditentukan sudah ada. Anda tidak dapat membuat indeks dengan nama yang sama.