Partilhar via


RRF (consulta NoSQL)

APLICA-SE A: NoSQL

Esta função do sistema é usada para combinar duas ou mais pontuações fornecidas por outras funções.

Sintaxe

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

Argumentos

Description
function1 Uma função de pontuação, como VectorDistance ou FullTextScore.
function2 Uma função de pontuação, como VectorDistance ou FullTextScore.

Exemplos

Este é um exemplo de Pesquisa Híbrida (pesquisa de semelhança vetorial + pontuação de texto completo BM25).

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

Este exemplo mostra a fusão com duas FullTextScore funções

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

Este exemplo mostra a fusão com duas VectorDistance funções

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

Observações

  • Esta função requer inscrição no recurso de visualização Pesquisa de Texto Completo NoSQL do Azure Cosmos DB.
  • A Pesquisa Híbrida também requer inscrição na Pesquisa Vetorial NoSQL do Azure Cosmos DB.
  • Esta função requer um índice de texto completo.
  • Essa função só pode ser usada em uma ORDER BY RANK cláusula e não pode ser combinada com ORDER BY outros caminhos de propriedade.
  • Esta função não pode fazer parte de uma projeção (por exemplo, SELECT FullTextScore(c.text, "keyword") AS Score FROM c é inválida.