Menyimpan embedding vektor

Halaman ini menunjukkan cara menggunakan AlloyDB sebagai database vektor dengan ekstensi vector yang menyertakan fungsi dan operator pgvector. Fungsi dan operator ini memungkinkan Anda menyimpan penyematan sebagai nilai vektor.

Ekstensi database yang diperlukan

Gunakan ekstensi vector, versi 0.5.0.google-1 atau yang lebih baru, yang menyertakan fungsi dan operator pgvector, untuk menyimpan penyematan yang dihasilkan sebagai nilai vector. Ini adalah versi pgvector yang telah diperluas oleh Google dengan pengoptimalan khusus untuk AlloyDB.

CREATE EXTENSION IF NOT EXISTS vector;

Menyimpan embedding yang dibuat

Pastikan Anda telah membuat tabel di database AlloyDB.

Untuk menyimpan embedding vektor, lakukan hal berikut:

  1. Buat kolom vector[] di tabel untuk menyimpan penyematan:

    ALTER TABLE TABLE ADD COLUMN EMBEDDING_COLUMN vector(DIMENSIONS);
    

    Ganti kode berikut:

    • TABLE: nama tabel

    • EMBEDDING_COLUMN: nama kolom penyematan baru

    • DIMENSIONS: jumlah dimensi yang didukung model.

      Misalnya, jika Anda menggunakan salah satu model bahasa Inggris text-embedding—misalnya, text-embedding-005 dengan Vertex AI, tentukan 768.

  2. Salin vektor ke kolom vektor. Contoh berikut mengasumsikan bahwa penyematan Anda tersedia dalam file CSV:

    COPY TABLE (EMBEDDING_COLUMN) FROM 'PATH_TO_VECTOR_CSV (FORMAT CSV);
    

    Ganti kode berikut:

    • PATH_TO_VECTOR_CSV: jalur lengkap tempat Anda menyimpan file .csv.

Setelah menyimpan penyematan, Anda dapat menggunakan ekstensi vector atau ekstensi alloydb_scann untuk membuat indeks guna meningkatkan performa kueri.

Langkah selanjutnya