Las consultas vectoriales operan mediante la búsqueda de una base de datos de vectores para encontrar los que mejor coincidan con tu vector de consulta. En esta página, se proporcionan detalles sobre cómo funciona esto.
Encontrar vectores similares
Las consultas de búsqueda vectorial usan dos estrategias:
- K-vecinos más cercanos (KNN): encuentra los vectores k más cercanos a tu vector de consulta.
Desglose de la sintaxis de 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
: Es el nombre del índice que contiene tu campo de vectores.(*)
: Esta es la única expresión admitida. No se admite el filtrado.=>
: Separa el filtro de la búsqueda vectorial.[KNN num_neighbours @field $vector]
: Es la expresión de búsqueda de KNN. Reemplazanum_neighbors
por la cantidad de resultados elegida y@field
por el nombre del campo vectorial.PARAMS 2 my_vector_query_param "query_embedding"
:- El valor
2
después dePARAMS
indica que se deben proporcionar dos argumentos adicionales. my_vector_query_param
es el nombre del vector del parámetro de consulta, como se especifica en la expresión de búsqueda KNN.- Reemplaza
query_embedding
por tu vector de consulta incorporado.
- El valor
DIALECT 2
: Especifica que estás usando la versión 2 o una posterior del dialecto de consulta (obligatorio para la búsqueda vectorial).