En esta página, se muestra cómo usar AlloyDB como una base de datos vectorial con la extensión vector
que incluye funciones y operadores pgvector
. Estas funciones y operadores te permiten almacenar las incorporaciones como valores de vectores.
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 incorporaciones generadas como valores vector
. Esta es una versión de pgvector
que Google amplió con optimizaciones específicas para AlloyDB.
CREATE EXTENSION IF NOT EXISTS vector;
Almacena embeddings generadas
Asegúrate de haber creado una tabla en tu base de datos de AlloyDB.
Para almacenar incorporaciones vectoriales, haz lo siguiente:
Crea una columna
vector[]
en tu tabla para almacenar tus incorporaciones:ALTER TABLE TABLE ADD COLUMN EMBEDDING_COLUMN vector(DIMENSIONS);
Reemplaza lo siguiente:
TABLE
: el nombre de la tablaEMBEDDING_COLUMN
: el nombre de la columna de embedding nuevaDIMENSIONS
: la cantidad de dimensiones que admite el modelo.Por ejemplo, si usas uno de los modelos
textembedding-gecko
en inglés, por ejemplo,textembedding-gecko@003
con Vertex AI, especifica768
.
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 a la ubicación en la que almacenaste el archivoCSV
.
Después de almacenar las incorporaciones, puedes usar la extensión vector
o la extensión alloydb_scann
para crear índices que permitan un rendimiento de las consultas más rápido.