벡터 쿼리는 벡터 데이터베이스를 검색하여 쿼리 벡터와 가장 일치하는 벡터를 찾습니다. 이 페이지에서는 이 작동 방식을 자세히 설명합니다.
유사한 벡터 찾기
벡터 검색 쿼리는 두 가지 전략을 사용합니다.
- K-Nearest Neighbors(KNN): 쿼리 벡터에서 가장 가까운 벡터 k개를 찾습니다.
쿼리 구문 분류
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
: 벡터 필드가 포함된 색인의 이름입니다.(*)
: 유일하게 지원되는 표현식입니다. 필터링은 지원되지 않습니다.=>
: 필터를 벡터 검색에서 분리합니다.[KNN num_neighbours @field $vector]
: KNN 검색 표현식입니다.num_neighbors
를 선택한 결과 수로,@field
를 벡터 필드 이름으로 바꿉니다.PARAMS 2 my_vector_query_param "query_embedding"
:PARAMS
다음 값2
는 추가 인수 2개를 제공해야 함을 나타냅니다.my_vector_query_param
은 KNN 검색 표현식에 지정된 쿼리 매개변수 벡터 이름입니다.query_embedding
를 임베딩된 쿼리 벡터로 바꿉니다.
DIALECT 2
: 쿼리 언어 버전 2 이상을 사용하도록 지정합니다(벡터 검색에 필요).