Esta página descreve as estratégias de pesquisa de vetor de IA do AlloyDB e explica quando usar cada uma delas. Por padrão, o AlloyDB usa a pesquisa de vizinhos k-mais próximos (KNN) para encontrar vetores semelhantes a uma consulta. Os índices de vetores implementam uma estratégia de pesquisa chamada Vizinho mais próximo (ANN, na sigla em inglês). Ao criar um índice de vetor, a IA do AlloyDB usa a ANN, que oferece melhor desempenho do que a KNN. Ao selecionar um índice vetorial, é necessário equilibrar a latência e a recuperação da consulta.
O recall mede a eficiência com que uma pesquisa recupera todos os itens relevantes para uma determinada consulta. Por exemplo, imagine que você tem 100 embeddings, cada uma representando uma entidade no seu banco de dados. Você consulta os embeddings com um vetor de destino e limita a 10 resultados. Uma pesquisa de vetor KNN encontra os 10 vetores mais próximos usando um método de cálculo de força bruta, o que resulta em 100% de recall. O AlloyDB AI usa esse método por padrão se nenhum índice de pesquisa de vetores for criado ou escolhido. Quando você cria um índice de vetores no AlloyDB para PostgreSQL, ele normalmente usa ANN, que pode particionar vetores de acordo com a similaridade para facilitar a recuperação mais rápida. Como resultado, usando a ANN, os 10 vetores retornados no exemplo anterior podem não ser exatamente os 10 vetores mais próximos em distância. Se apenas 8 dos 10 vetores recuperados estiverem mais próximos no espaço ao vetor de consulta, o recall será de 80%.
A latência da consulta define a rapidez com que os resultados da pesquisa são gerados. Por exemplo, a latência é calculada com base no tempo gasto em uma pesquisa para retornar os vetores depois que você envia uma consulta.
Escolher sua estratégia de pesquisa
Ao realizar uma pesquisa vetorial no AlloyDB, escolha uma das seguintes estratégias de pesquisa:
Estratégia de pesquisa | Descrição | Casos de uso |
Vizinhos mais próximos (KNN) | Um algoritmo que encontra os pontos de dados dos vizinhos k-mais próximos de um determinado ponto de dados da consulta. Quando você realiza uma pesquisa vetorial sem criar um índice, uma pesquisa KNN é realizada por padrão. |
|
Vizinhos mais próximos aproximados (ANN) | Um algoritmo que encontra aproximadamente os pontos de dados mais próximos. A ANN divide os pontos de dados dos clientes em pequenos grupos com base nas semelhanças. |
|
O Google recomenda que você crie um índice vetorial para otimizar a performance das consultas de pesquisa vetorial. Para mais informações sobre como o índice ANN é usado para pesquisas de similaridade, consulte Criar índices e consultar vetores usando o ScaNN.