RRF – Frågespråk i Cosmos DB (i Azure och Fabric)

Funktionen RRF returnerar en sammansvetsad poäng genom att kombinera två eller flera poäng som tillhandahålls av andra funktioner.

Syntax

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

Arguments

Description
function1 En bedömningsfunktion som VectorDistance eller FullTextScore.
function2 En bedömningsfunktion som VectorDistance eller FullTextScore.
weights En matris med tal som definierar en prioritetsvikt för varje bedömningsfunktion.

Returtyper

Returnerar ett numeriskt värde som representerar den sammansvetsade poängen.

Examples

Det här avsnittet innehåller exempel på hur du använder den här frågespråkkonstruktionen.

Hybridsökning (vektorlikhet + BM25)

I det här exemplet kombinerar Hybrid Search FullTextScore och 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)

I det här exemplet använder Hybrid Search vikter för bedömningsfunktionerna.

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)

Fusion med två FullTextScore-funktioner

I det här exemplet är två FullTextScore-funktioner sammansvetsade.

SELECT TOP 10 *
FROM c
ORDER BY RANK RRF(FullTextScore(c.text, "keyword1"), FullTextScore(c.text, "keyword2"))
-- Example result not available (see documentation)

Fusion med två VectorDistance-funktioner

I det här exemplet är två VectorDistance-funktioner sammansvetsade.

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)

Anmärkningar

  • Den här funktionen kräver registrering i funktionen Azure Cosmos DB NoSQL Full Text Search.
  • Hybridsökning kräver också registrering i Azure Cosmos DB NoSQL Vector Search.
  • Den här funktionen kräver ett fulltextindex.
  • Den här funktionen kan bara användas i en ORDER BY RANK -sats och kan inte kombineras med ORDER BY på andra egenskapssökvägar.
  • Den här funktionen kan inte ingå i en projektion (till exempel SELECT FullTextScore(c.text, "keyword") AS Score FROM c är ogiltig).