Memorizzare i vector embedding

L'estensione vector in AlloyDB per PostgreSQL fornisce funzioni e operatori pgvector che ti consentono di utilizzare il database come archivio vettoriale. Puoi aggiungere colonne vector alle tabelle e archiviare gli embedding generati come valori vettoriali per la ricerca semantica e i carichi di lavoro di AI generativa.

Estensione del database richiesta

Utilizza l'estensione vector, versione 0.5.0.google-1 o successive, che include pgvector funzioni e operatori, per archiviare gli embedding generati come valori vector. Si tratta di una versione di pgvector che Google ha esteso con ottimizzazioni specifiche per AlloyDB.

CREATE EXTENSION IF NOT EXISTS vector;

Archivia gli embedding generati

Assicurati di aver già creato una tabella nel database AlloyDB.

Per archiviare i vector embedding, procedi come segue:

  1. Crea una colonna vector[] nella tabella per archiviare gli embedding:

    ALTER TABLE TABLE ADD COLUMN EMBEDDING_COLUMN vector(DIMENSIONS);
    

    Sostituisci quanto segue:

    • TABLE: il nome della tabella

    • EMBEDDING_COLUMN: il nome della nuova colonna di embedding

    • DIMENSIONS: il numero di dimensioni supportate dal modello.

      Ad esempio, se utilizzi uno dei modelli in inglese text-embedding, ad esempio text-embedding-005 con Vertex AI, specifica 768.

  2. Copia i vettori nella colonna vettoriale. Il seguente esempio presuppone che gli embedding siano disponibili in un file CSV:

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

    Sostituisci quanto segue:

    • TABLE: il nome della tabella.

    • EMBEDDING_COLUMN: il nome della colonna di embedding.

    • PATH_TO_VECTOR_CSV: il percorso completo in cui hai archiviato il file .CSV.

Dopo aver archiviato gli embedding, puoi utilizzare l'estensione vector o l'estensione alloydb_scann per creare indici per prestazioni di query più rapide.

Passaggi successivi