Vektoreinbettungen speichern

Auf dieser Seite erfahren Sie, wie Sie AlloyDB als Vektordatenbank mit der vector-Erweiterung verwenden, die pgvector-Funktionen und pgvector-Operatoren enthält. Mit diesen Funktionen und Operatoren können Sie Einbettungen als Vektorwerte speichern.

Erforderliche Datenbankerweiterung

Verwenden Sie die vector-Erweiterung, Version 0.5.0.google-1 oder höher, die pgvector-Funktionen und pgvector-Operatoren enthält, um generierte Einbettungen als vector-Werte zu speichern. Das ist eine Version von pgvector, die Google um AlloyDB-spezifische Optimierungen erweitert hat.

CREATE EXTENSION IF NOT EXISTS vector;

Von Nutzern erstellte Einbettungen speichern

Sie müssen bereits eine Tabelle in Ihrer AlloyDB-Datenbank erstellt haben.

So speichern Sie Vektor-Ebenen:

  1. Erstellen Sie in Ihrer Tabelle eine Spalte vom Typ vector[], um die Einbettungen zu speichern:

    ALTER TABLE TABLE ADD COLUMN EMBEDDING_COLUMN vector(DIMENSIONS);
    

    Ersetzen Sie Folgendes:

    • TABLE: den Tabellennamen

    • EMBEDDING_COLUMN: der Name der neuen Einbettungsspalte

    • DIMENSIONS: die Anzahl der Dimensionen, die das Modell unterstützt.

      Wenn Sie beispielsweise eines der text-embeddingenglischsprachigen Modelle – z. B. text-embedding-005 – mit Vertex AI verwenden, geben Sie 768 an.

  2. Kopieren Sie die Vektoren in die Vektorspalte. Im folgenden Beispiel wird davon ausgegangen, dass Ihre Einbettungen in einer .csv-Datei verfügbar sind:

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

    Ersetzen Sie Folgendes:

    • PATH_TO_VECTOR_CSV: der vollständige Pfad zum Speicherort der Datei .csv.

Nachdem Sie die Einbettungen gespeichert haben, können Sie mit der Erweiterung vector oder alloydb_scann Indexe erstellen, um die Abfrageleistung zu verbessern.

Nächste Schritte