Almacena embeddings de vectores

Selecciona una versión de la documentación:

En esta página, se muestra cómo usar AlloyDB como una base de datos de vectores con la extensión vector, que incluye funciones y operadores de pgvector. Estas funciones y operadores te permiten almacenar embeddings como valores vectoriales.

Extensión de base de datos obligatoria

Usa la extensión vector, versión 0.5.0.google-1 o posterior, que incluye funciones y operadores pgvector, para almacenar las embeddings generadas como valores vector. Esta es una versión de pgvector que Google extendió con optimizaciones específicas para AlloyDB.

CREATE EXTENSION IF NOT EXISTS vector;

Almacena los embeddings generados

Asegúrate de haber creado una tabla en tu base de datos de AlloyDB.

Para almacenar embeddings de vectores, haz lo siguiente:

  1. Crea una columna vector[] en tu tabla para almacenar tus embeddings:

    ALTER TABLE TABLE ADD COLUMN EMBEDDING_COLUMN vector(DIMENSIONS);
    

    Reemplaza lo siguiente:

    • TABLE: el nombre de la tabla

    • EMBEDDING_COLUMN: el nombre de la columna de embedding nueva

    • DIMENSIONS: la cantidad de dimensiones que admite el modelo.

      Por ejemplo, si usas uno de los modelos en inglés text-embedding, como text-embedding-005 con Vertex AI, especifica 768.

  2. Copia los vectores en la columna de vectores. En el siguiente ejemplo, se supone que tus incorporaciones están disponibles en un archivo CSV:

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

    Reemplaza lo siguiente:

    • PATH_TO_VECTOR_CSV: Es la ruta de acceso completa en la que almacenaste tu archivo .csv.

Después de almacenar las embeddings, puedes usar la extensión vector o la extensión alloydb_scann para crear índices y mejorar el rendimiento de las consultas.

¿Qué sigue?