Gunakan Go SDK V2 untuk memanggil operasi PutVectors guna mengunggah data vektor ke indeks vektor yang ditentukan.
Izin
Akun Alibaba Cloud memiliki semua izin secara default. Namun, Pengguna Manajemen Akses Sumber Daya (RAM) dan Peran RAM tidak memiliki izin secara default. Administrator Akun Alibaba Cloud harus memberikan izin menggunakan Kebijakan RAM atau kebijakan bucket.
API | Aksi | Deskripsi |
PutVectors |
| Menulis data vektor. |
Definisi metode
func (c *VectorsClient) PutVectors(ctx context.Context, request *PutVectorsRequest, optFns ...func(*oss.Options)) (*PutVectorsResult, error)Parameter permintaan
Parameter | Tipe | Deskripsi |
ctx | context.Context | Konteks permintaan. |
request | *PutVectorsRequest | Parameter permintaan, termasuk nama bucket vektor. Untuk informasi lebih lanjut, lihat PutVectorsRequest. |
optFns | ...func(*Options) | Fungsi konfigurasi opsional. |
Nilai kembali
Parameter | Tipe | Deskripsi |
result | *PutVectorsResult | Nilai kembali. Parameter ini valid hanya jika err adalah nil. Untuk informasi lebih lanjut, lihat PutVectorsResult. |
err | error | Pesan kesalahan. Parameter ini adalah nil jika operasi berhasil. |
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(®ion, "region", "", "Wilayah tempat bucket vektor berada.")
flag.StringVar(&bucketName, "bucket", "", "Nama bucket vektor.")
flag.StringVar(&accountId, "account-id", "", "ID Akun Alibaba Cloud.")
}
func main() {
flag.Parse()
if len(bucketName) == 0 || len(region) == 0 || len(accountId) == 0 {
flag.PrintDefaults()
log.Fatalf("parameter tidak valid")
}
cfg := oss.LoadDefaultConfig().
WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
WithRegion(region).WithAccountId(accountId)
client := vectors.NewVectorsClient(cfg)
request := &vectors.PutVectorsRequest{
Bucket: oss.Ptr(bucketName),
IndexName: oss.Ptr("exampleIndex"),
Vectors: [ ]map[string]any{
{
"key": "vector1",
"data": map[string]any{
"float32": [ ]float32{1.2, 2.5, 3},
},
"metadata": map[string]any{
"Key1": "value2",
"Key2": [ ]string{"1", "2", "3"},
},
},
},
}
result, err := client.PutVectors(context.TODO(), request)
if err != nil {
log.Fatalf("gagal menempatkan vektor %v", err)
}
log.Printf("hasil penempatan vektor:%#v\n", result)
}Referensi
Untuk kode contoh lengkap untuk mengunggah data vektor, lihat put_vectors.go.