全部产品
Search
文档中心

Object Storage Service:Buat indeks vektor (Python SDK V2)

更新时间:Nov 09, 2025

Gunakan Python SDK V2 untuk memanggil operasi PutVectorIndex dan membuat indeks vektor di dalam bucket vektor.

Izin

Secara default, Akun Alibaba Cloud memiliki semua izin. Pengguna Manajemen Akses Sumber Daya (RAM) dan Peran RAM di bawah Akun Alibaba Cloud tidak memiliki izin secara default. Administrator Akun Alibaba Cloud harus memberikan izin kepada Pengguna RAM atau Peran RAM menggunakan Kebijakan RAM atau Kebijakan bucket.

API

Aksi

Deskripsi

PutVectorIndex

oss:PutVectorIndex

Membuat indeks vektor.

Definisi metode

put_vector_index(request: PutVectorIndexRequest, **kwargs) → PutVectorIndexResult

Parameter permintaan

Parameter

Tipe

Deskripsi

request

PutVectorIndexRequest

Tetapkan parameter permintaan, seperti nama bucket vektor. Untuk informasi lebih lanjut, lihat PutVectorIndexRequest.

Nilai kembali

Tipe

Deskripsi

PutVectorIndexResult

Nilai kembali. Untuk informasi lebih lanjut, lihat PutVectorIndexResult.

Untuk definisi lengkap metode ini, lihat put_vector_index.

Kode contoh

import argparse
import alibabacloud_oss_v2 as oss
import alibabacloud_oss_v2.vectors as oss_vectors

parser = argparse.ArgumentParser(description="contoh put vector index")
parser.add_argument('--region', help='Wilayah tempat bucket berada.', required=True)
parser.add_argument('--bucket', help='Nama bucket.', required=True)
parser.add_argument('--endpoint', help='Nama domain yang dapat digunakan layanan lain untuk mengakses OSS')
parser.add_argument('--index_name', help='Nama indeks vektor.', required=True)
parser.add_argument('--account_id', help='ID akun.', required=True)

def main():
    args = parser.parse_args()

    # Memuat nilai kredensial dari variabel lingkungan
    credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()

    # Menggunakan konfigurasi default dari SDK
    cfg = oss.config.load_default()
    cfg.credentials_provider = credentials_provider
    cfg.region = args.region
    cfg.account_id = args.account_id
    if args.endpoint is not None:
        cfg.endpoint = args.endpoint

    vector_client = oss_vectors.Client(cfg)

    result = vector_client.put_vector_index(oss_vectors.models.PutVectorIndexRequest(
        bucket=args.bucket,
        index_name=args.index_name,
        dimension=512,
        data_type='float32',
        distance_metric='euclidean',
        metadata={"nonFilterableMetadataKeys": ["key1", "key2"]}
    ))

    print(f'kode status: {result.status_code},'
          f' ID permintaan: {result.request_id},'
    )

if __name__ == "__main__":
    main()

Referensi

Untuk kode contoh lengkapnya, lihat put_vector_index.py.