다음을 통해 공유


RRF(NoSQL 쿼리)

적용 대상: NoSQL

이 시스템 함수는 다른 함수에서 제공하는 두 개 이상의 점수를 결합하는 데 사용됩니다.

구문

RRF(<function1>, <function2, ...>)

인수

설명
function1 VectorDistance 또는 FullTextScore와 같은 점수 매기기 함수입니다.
function2 VectorDistance 또는 FullTextScore와 같은 점수 매기기 함수입니다.

예제

하이브리드 검색의 예입니다(벡터 유사성 검색 + BM25 전체 텍스트 점수 매기기).

SELECT TOP 10 *
FROM c
ORDER BY RANK RRF(FullTextScore(c.text, ["keyword"]), VectorDistance(c.vector, [1,2,3]))

이 예제에서는 두 FullTextScore 함수와의 융합을 보여 줍니다.

SELECT TOP 10 *
FROM c
ORDER BY RANK RRF(FullTextScore(c.text, ["keyword1"]), FullTextScore(c.text, ["keyword2"])

이 예제에서는 두 VectorDistance 함수와의 융합을 보여 줍니다.

SELECT TOP 5 *
FROM c
ORDER BY RANK RRF(VectorDistance(c.vector1, [1,2,3]),VectorDistance(c.vector2, [2,2,4]))

설명

  • 이 함수를 사용하려면 Azure Cosmos DB NoSQL 전체 텍스트 검색 미리 보기 기능에 등록해야 합니다.
  • 하이브리드 검색을 사용하려면 Azure Cosmos DB NoSQL 벡터 검색등록해야 합니다.
  • 이 함수에는 전체 텍스트 인덱스가 필요합니다.
  • 이 함수는 절에서 ORDER BY RANK 만 사용할 수 있으며 다른 속성 경로와 ORDER BY 결합할 수 없습니다.
  • 이 함수는 프로젝션의 일부가 될 수 없습니다(예 SELECT FullTextScore(c.text, "keyword") AS Score FROM c : 유효하지 않음).