En esta página se explica cómo usar AlloyDB como base de datos de vectores con la extensión vector
, que incluye funciones y operadores pgvector
. Estas funciones y operadores te permiten almacenar las inserciones 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 de pgvector
, para almacenar las incrustaciones generadas como valores de vector
. Esta es una versión de pgvector
que Google ha ampliado con optimizaciones específicas para AlloyDB.
CREATE EXTENSION IF NOT EXISTS vector;
Incrustaciones generadas por la tienda
Asegúrate de que ya has creado una tabla en tu base de datos de AlloyDB.
.Para almacenar incrustaciones de vectores, sigue estos pasos:
Crea una columna
vector[]
en tu tabla para almacenar las inserciones:ALTER TABLE TABLE ADD COLUMN EMBEDDING_COLUMN vector(DIMENSIONS);
Haz los cambios siguientes:
TABLE
: el nombre de la tablaEMBEDDING_COLUMN
: el nombre de la nueva columna de insercionesDIMENSIONS
: número de dimensiones que admite el modelo.Por ejemplo, si usas uno de los modelos en inglés de
text-embedding
, comotext-embedding-005
con Vertex AI, especifica768
.
Copia los vectores en la columna de vectores. En el siguiente ejemplo se da por hecho que tus inserciones están disponibles en un archivo CSV:
COPY TABLE (EMBEDDING_COLUMN) FROM 'PATH_TO_VECTOR_CSV (FORMAT CSV);
Haz los cambios siguientes:
PATH_TO_VECTOR_CSV
: la ruta completa de la ubicación en la que has almacenado el archivo.csv
.
Una vez que hayas almacenado las inserciones, puedes usar la extensión vector
o la extensión alloydb_scann
para crear índices y mejorar el rendimiento de las consultas.