As consultas vetoriais funcionam pesquisando um banco de dados de vetores para encontrar vetores que que melhor correspondem ao seu vetor de consulta. Esta página mostra detalhes sobre como isso funciona.
Encontrar vetores semelhantes
As consultas de pesquisa vetorial usam duas estratégias:
- K-Nearest Neighbors (KNN): localiza os k vetores mais próximos do vetor de consulta.
Detalhamento da sintaxe da consulta
FT.SEARCH index "(*)=>[KNN num_neighbours @my_vector_hash_key $my_vector_query_param]" PARAMS 2 my_vector_query_param "query_embedding" DIALECT 2
index
: o nome do índice que contém o campo vetorial.(*)
: essa é a única expressão compatível. A filtragem não é compatível.=>
: separa o filtro da pesquisa vetorial.[KNN num_neighbours @field $vector]
: a expressão de pesquisa KNN. Substituanum_neighbors
pelo número de resultados escolhido e@field
pelo nome do campo de vetor.PARAMS 2 my_vector_query_param "query_embedding"
:- O valor
2
apósPARAMS
indica que dois argumentos adicionais precisam ser fornecidos. my_vector_query_param
é o nome do vetor do parâmetro de consulta, conforme especificado na expressão de pesquisa da KNN.- Substitua
query_embedding
pelo vetor de consulta incorporado.
- O valor
DIALECT 2
: especifica que você está usando o dialeto de consulta versão 2 ou mais recente (necessário para a pesquisa vetorial).