Esta página mostra-lhe como usar o AlloyDB como uma base de dados vetorial com a extensão vector
que inclui funções e operadores pgvector
. Estas funções e operadores permitem-lhe armazenar incorporações como valores vetoriais.
Extensão da base de dados necessária
Use a extensão vector
, versão 0.5.0.google-1
ou posterior, que inclui funções e operadores pgvector
, para armazenar incorporações geradas como valores vector
. Esta é uma versão do pgvector
que a Google expandiu com otimizações específicas do AlloyDB.
CREATE EXTENSION IF NOT EXISTS vector;
Incorporações geradas pela loja
Certifique-se de que já criou uma tabela na sua base de dados do AlloyDB.
Para armazenar incorporações vetoriais, faça o seguinte:
Crie uma coluna
vector[]
na tabela para armazenar as incorporações:ALTER TABLE TABLE ADD COLUMN EMBEDDING_COLUMN vector(DIMENSIONS);
Substitua o seguinte:
TABLE
: o nome da tabelaEMBEDDING_COLUMN
: o nome da nova coluna de incorporaçãoDIMENSIONS
: o número de dimensões suportadas pelo modelo.Por exemplo, se estiver a usar um dos modelos em inglês, por exemplo,
text-embedding-005
com o Vertex AI, especifique768
.text-embedding
Copie os vetores para a coluna de vetores. O exemplo seguinte pressupõe que as suas incorporações estão disponíveis num ficheiro CSV:
COPY TABLE (EMBEDDING_COLUMN) FROM 'PATH_TO_VECTOR_CSV (FORMAT CSV);
Substitua o seguinte:
PATH_TO_VECTOR_CSV
: o caminho completo de onde armazenou o ficheiro.csv
.
Depois de armazenar as incorporações, pode usar a extensão vector
ou a extensão alloydb_scann
para criar índices para um desempenho de consulta mais rápido.