Anda dapat memanggil operasi PutVectors menggunakan Python SDK V2 untuk mengunggah data vektor ke indeks vektor tertentu.
Izin
Akun Alibaba Cloud memiliki izin penuh secara default. Pengguna RAM dan peran memerlukan otorisasi eksplisit melalui RAM policy atau bucket policy.
|
API |
Action |
Description |
|
PutVectors |
|
Menulis data vektor. |
Definisi metode
put_vectors(request: PutVectorsRequest, **kwargs) → PutVectorsResult
Parameter permintaan
|
Parameter |
Type |
Description |
|
request |
PutVectorsRequest |
Parameter permintaan. Parameter ini mencakup nama bucket, nama indeks, dan data vektor. Untuk informasi selengkapnya, lihat PutVectorsRequest. |
Nilai kembali
|
Type |
Description |
|
PutVectorsResult |
Nilai kembali. Untuk informasi selengkapnya, lihat PutVectorsResult. |
Untuk definisi lengkap metode put_vectors, lihat put_vectors.
Contoh
import argparse
import alibabacloud_oss_v2 as oss
import alibabacloud_oss_v2.vectors as oss_vectors
parser = argparse.ArgumentParser(description="vector put vectors sample")
parser.add_argument('--region', help='The region in which the bucket is located.', required=True)
parser.add_argument('--bucket', help='The name of the bucket.', required=True)
parser.add_argument('--endpoint', help='The domain names that other services can use to access OSS')
parser.add_argument('--index_name', help='The name of the vector index.', required=True)
parser.add_argument('--account_id', help='The account id.', 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
cfg.use_internal_endpoint = True # Atur ke False atau hapus baris ini untuk mengakses layanan melalui jaringan publik.
if args.endpoint is not None:
cfg.endpoint = args.endpoint
vector_client = oss_vectors.Client(cfg)
vectors = [
{
"data": {"float32": [0.1] * 128},
"key": "key1",
"metadata": {"metadata1": "value1", "metadata2": "value2"}
},
{
"data": {"float32": [0.2] * 128},
"key": "key2",
"metadata": {"metadata3": "value3", "metadata4": "value4"}
}
]
result = vector_client.put_vectors(oss_vectors.models.PutVectorsRequest(
bucket=args.bucket,
index_name=args.index_name,
vectors=vectors,
))
print(f'status code: {result.status_code},'
f' request id: {result.request_id},'
)
if __name__ == "__main__":
main()
Referensi
Untuk kode contoh lengkap pengunggahan data vektor, lihat put_vectors.py.