Udostępnij za pośrednictwem


RRF (zapytanie NoSQL)

DOTYCZY: NoSQL

Ta funkcja systemowa służy do łączenia co najmniej dwóch wyników udostępnianych przez inne funkcje.

Składnia

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

Argumenty

opis
property_path Ścieżka właściwości do wyszukiwania.
array_expr Brak tablicy literałów ciągu.

Przykłady

Jest to przykład wyszukiwania hybrydowego (wyszukiwanie wektorów i ocenianie pełnotekstowe BM25).

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

W tym przykładzie pokazano łączenie z dwiema FullTextScore funkcjami

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

W tym przykładzie pokazano łączenie z dwiema VectorDistance funkcjami

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

Uwagi

  • Ta funkcja wymaga rejestracji w funkcji wyszukiwania pełnotekstowego NoSQL w usłudze Azure Cosmos DB.
  • Wyszukiwanie hybrydowe wymaga również rejestracji w usłudze Azure Cosmos DB NoSQL Vector Search.
  • Ta funkcja wymaga indeksu pełnotekstowego.
  • Tej funkcji można używać tylko w klauzuli ORDER BY RANK .
  • Ta funkcja nie może być częścią projekcji (na przykład SELECT FullTextScore(c.text, "keyword") AS Score FROM c jest nieprawidłowa.