All Products
Search
Document Center

Object Storage Service:Ambil informasi vektor (Go SDK V2)

Last Updated:Jun 04, 2026

Panggil operasi GetVectors menggunakan Go SDK V2 untuk mengambil data vektor dan metadata-nya berdasarkan kunci yang ditentukan.

Izin

Akun Alibaba Cloud memiliki semua izin secara default. Secara default, pengguna Resource Access Management (RAM) atau Peran RAM di bawah akun Alibaba Cloud tidak memiliki izin apa pun. Akun Alibaba Cloud atau administrator harus memberikan izin untuk operasi ini melalui kebijakan RAM atau kebijakan bucket.

API

Action

Deskripsi

GetVectors

oss:GetVectors

Mendapatkan data vektor.

Definisi metode

func (c *VectorsClient) GetVectors(ctx context.Context, request *GetVectorsRequest, optFns ...func(*oss.Options)) (*GetVectorsResult, error)

Parameter permintaan

Parameter

Tipe

Deskripsi

ctx

context.Context

Konteks permintaan.

request

*GetVectorsRequest

Parameter permintaan, seperti nama bucket, nama indeks, dan daftar kunci vektor. Untuk informasi selengkapnya, lihat GetVectorsRequest.

optFns

...func(*Options)

(Opsional) Parameter konfigurasi tingkat API.

Untuk informasi selengkapnya, lihat Options.

Nilai kembali

Parameter

Tipe

Deskripsi

result

*GetVectorsResult

Nilai kembali. Parameter ini hanya valid jika err bernilai nil. Untuk informasi selengkapnya, lihat GetVectorsResult.

err

error

Pesan kesalahan. Jika operasi berhasil, nilai ini adalah nil.

Kode contoh

package main

import (
	"context"
	"flag"
	"log"

	"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss"
	"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/credentials"
	"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/vectors"
)

var (
	region     string
	bucketName string
	accountId  string
)

func init() {
	flag.StringVar(&region, "region", "", "Wilayah tempat bucket vektor berada.")
	flag.StringVar(&bucketName, "bucket", "", "Nama bucket vektor.")
	flag.StringVar(&accountId, "account-id", "", "ID akun vektor.")
}

func main() {
	flag.Parse()
	if len(bucketName) == 0 {
		flag.PrintDefaults()
		log.Fatalf("parameter tidak valid, nama bucket wajib diisi")
	}

	if len(region) == 0 {
		flag.PrintDefaults()
		log.Fatalf("parameter tidak valid, wilayah wajib diisi")
	}

	if len(accountId) == 0 {
		flag.PrintDefaults()
		log.Fatalf("parameter tidak valid, ID akun wajib diisi")
	}

	cfg := oss.LoadDefaultConfig().
		WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
		WithRegion(region).WithAccountId(accountId).
		// Untuk mengakses melalui jaringan publik, atur nilai ini ke false atau hapus baris ini.
		WithUseInternalEndpoint(true)

	client := vectors.NewVectorsClient(cfg)

	request := &vectors.GetVectorsRequest{
		Bucket:         oss.Ptr(bucketName),
		IndexName:      oss.Ptr("index"),
		Keys:           []string{"key1", "key2", "key3"},
		ReturnData:     oss.Ptr(true),
		ReturnMetadata: oss.Ptr(false),
	}
	result, err := client.GetVectors(context.TODO(), request)
	if err != nil {
		log.Fatalf("gagal mendapatkan vektor %v", err)
	}
	log.Printf("hasil mendapatkan vektor:%#v\n", result)
}

Referensi

Untuk kode contoh lengkap, lihat get_vectors.go.