이 함수는 RRF 다른 함수에서 제공하는 둘 이상의 점수를 결합하여 융합 점수를 반환합니다.
구문
RRF(<function1>, <function2>, ..., <weights>)
Arguments
| Description | |
|---|---|
function1 |
VectorDistance 또는 FullTextScore와 같은 점수 매기기 함수입니다. |
function2 |
VectorDistance 또는 FullTextScore와 같은 점수 매기기 함수입니다. |
weights |
각 점수 매기기 함수의 중요도 가중치를 정의하는 숫자 배열입니다. |
반환 형식
융합 점수를 나타내는 숫자 값을 반환합니다.
예시
이 섹션에는 이 쿼리 언어 구문을 사용하는 방법에 대한 예제가 포함되어 있습니다.
하이브리드 검색(벡터 유사성 + BM25)
이 예제에서 하이브리드 검색은 FullTextScore와 VectorDistance를 결합합니다.
SELECT TOP 10 *
FROM c
ORDER BY RANK RRF(FullTextScore(c.text, "keyword"), VectorDistance(c.vector, [1,2,3]))
-- Example result not available (see documentation)
가중 하이브리드 검색
이 예제에서 Hybrid Search는 점수 매기기 함수에 가중치를 사용합니다.
SELECT TOP 10 *
FROM c
ORDER BY RANK RRF(FullTextScore(c.text, "keyword"), VectorDistance(c.vector, [1,2,3]), [2,1])
-- Example result not available (see documentation)
두 개의 FullTextScore 함수를 사용하는 Fusion
이 예제에서는 두 개의 FullTextScore 함수가 융합됩니다.
SELECT TOP 10 *
FROM c
ORDER BY RANK RRF(FullTextScore(c.text, "keyword1"), FullTextScore(c.text, "keyword2"))
-- Example result not available (see documentation)
두 개의 VectorDistance 함수를 사용하는 Fusion
이 예제에서는 두 개의 VectorDistance 함수가 융합됩니다.
SELECT TOP 5 *
FROM c
ORDER BY RANK RRF(VectorDistance(c.vector1, [1,2,3]), VectorDistance(c.vector2, [2,2,4]))
-- Example result not available (see documentation)
비고
- 이 함수를 사용하려면 Azure Cosmos DB NoSQL 전체 텍스트 검색 기능에 등록해야 합니다.
- 하이브리드 검색을 사용하려면 Azure Cosmos DB NoSQL 벡터 검색에 등록해야 합니다.
- 이 함수에는 전체 텍스트 인덱스가 필요합니다.
- 이 함수는 절에서
ORDER BY RANK만 사용할 수 있으며 다른 속성 경로와ORDER BY결합할 수 없습니다. - 이 함수는 프로젝션의 일부가 될 수 없습니다(예
SELECT FullTextScore(c.text, "keyword") AS Score FROM c: 유효하지 않음).