API PutVectorIndex membuat indeks vektor di dalam bucket vektor.
Catatan
Satu bucket vektor dapat berisi hingga 100 indeks vektor.
-
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 |
|
Membuat indeks vektor. |
Sintaksis permintaan
POST /?putVectorIndex HTTP/1.1
Host: examplebucket-123***456.cn-hangzhou-internal.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 selengkapnya, lihat Header permintaan umum.
Parameter permintaan
|
Nama |
Tipe data |
Wajib |
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 yang valid: 1 hingga 4096. Nilai default: 512. |
|
distanceMetric |
String |
Ya |
euclidean |
Fungsi ukuran jarak. Nilai yang valid:
|
|
indexName |
String |
Ya |
vectorindex1 |
Nama kustom untuk indeks.
|
|
metadata |
Objek |
Tidak |
- |
Kontainer untuk konfigurasi metadata. Hanya metadata non-filterable yang didukung. |
|
nonFilterableMetadataKeys |
Array of strings |
Tidak |
["field1", "field2"] | Konfigurasi untuk metadata non-filterable. Batasan berikut berlaku:
Node induk: metadata |
Header respons
Operasi ini hanya menggunakan header respons umum. Untuk informasi selengkapnya, lihat Header respons umum.
Contoh
Permintaan contoh
POST /?putVectorIndex HTTP/1.1
Host: examplebucket-123***456.cn-hangzhou-internal.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: AliyunOSSSDK
API PutVectorIndex didukung oleh kit pengembangan perangkat lunak (SDK) berikut:
Alat baris perintah ossutil
Untuk memanggil operasi ini menggunakan alat baris perintah ossutil, lihat put-vector-index.
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:
|
|
VectorBucketIndexAlreadyExist |
409 |
Nama indeks yang ditentukan sudah ada. Anda tidak dapat membuat indeks dengan nama yang sama. |