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 vector extensión que incluye pgvector funciones y operadores. 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 pgvector funciones y operadores, para almacenar embeddings generados 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 embeddings generados

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

Para almacenar embeddings de vectores, sigue estos pasos:

  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, por ejemplo, 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 embeddings 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: la ruta de acceso completa a la ubicación en la que almacenaste tu archivo CSV.

Después de almacenar los embeddings, puedes usar la extensión vector o la extensión alloydb_scann para crear índices para un rendimiento de consultas más rápido.

¿Qué sigue?