All Products
Search
Document Center

Object Storage Service:Mengambil vektor (Python SDK V2)

Last Updated:Nov 09, 2025

Topik ini menjelaskan cara menggunakan Python SDK V2 untuk memanggil operasi QueryVectors dan melakukan pencarian kesamaan dalam indeks vektor.

Izin

Akun Alibaba Cloud memiliki semua izin secara default. Pengguna Resource Access Management (RAM) atau Peran RAM tidak memiliki izin secara default. Akun Alibaba Cloud atau administrator harus memberikan izin kepada Pengguna RAM atau Peran RAM menggunakan Kebijakan RAM atau Kebijakan Bucket.

API

Aksi

Deskripsi

QueryVectors

oss:QueryVectors

Mengkueri data vektor.

Definisi metode

query_vectors(request: QueryVectorsRequest, **kwargs) → QueryVectorsResult

Parameter permintaan

Parameter

Tipe

Deskripsi

request

QueryVectorsRequest

Menetapkan parameter permintaan, termasuk vektor kueri, kondisi filter, dan jumlah hasil yang akan dikembalikan. Untuk informasi lebih lanjut, lihat QueryVectorsRequest.

Nilai kembali

Tipe

Deskripsi

QueryVectorsResult

Nilai kembali, yang berisi daftar vektor hasil. Untuk informasi lebih lanjut, lihat QueryVectorsResult.

Untuk definisi lengkap metode, lihat query_vectors.

Kode contoh

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

parser = argparse.ArgumentParser(description="contoh vektor query vectors")
parser.add_argument('--region', help='Wilayah di mana 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 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)

    query_filter = {
        "$and": [{
            "type": {
                "$nin": ["comedy", "documentary"]
            }
        }]
    }

    query_vector = {"float32": [0.1] * 128}

    result = vector_client.query_vectors(oss_vectors.models.QueryVectorsRequest(
        bucket=args.bucket,
        index_name=args.index_name,
        filter=query_filter,
        query_vector=query_vector,
        return_distance=True,
        return_metadata=True,
        top_k=10
    ))

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

    if result.vectors:
        for vector in result.vectors:
            print(f'vektor: {vector}')


if __name__ == "__main__":
    main()

Referensi

Untuk kode contoh lengkap untuk mengkueri vektor, lihat query_vectors.py.