Sintaxe das consultas

As consultas vetoriais operam pesquisando um banco de dados de vetores para encontrar os vetores que são mais adequados ao vetor de consulta. Esta página mostra detalhes sobre como isso funciona.

Encontrar vetores semelhantes

As consultas de pesquisa vetorial usam duas estratégias:

  • Vizinhos mais próximos (KNN): encontra 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.

  • (*): é a única expressão com suporte. A filtragem não é compatível.

  • =>: separa o filtro da pesquisa de vetor.

  • [KNN num_neighbours @field $vector]: a expressão de pesquisa KNN. Substitua num_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ós PARAMS 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.
  • DIALECT 2: especifica que você está usando o dialeto de consulta versão 2 ou mais recente (necessário para a pesquisa vetorial).