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 | |
---|---|
function1 |
Funkcja oceniania, taka jak VectorDistance lub FullTextScore. |
function2 |
Funkcja oceniania, taka jak VectorDistance lub FullTextScore. |
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]))
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
i nie można jej łączyć z innymi ścieżkamiORDER BY
właściwości. - Ta funkcja nie może być częścią projekcji (na przykład
SELECT FullTextScore(c.text, "keyword") AS Score FROM c
jest nieprawidłowa.