Aracılığıyla paylaş


RRF - Cosmos DB'de sorgu dili (Azure ve Doku'da)

İşlev, RRF diğer işlevler tarafından sağlanan iki veya daha fazla puanı birleştirerek birleştirilmiş puan döndürür.

Sözdizimi

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

Arguments

Description
function1 VectorDistance veya FullTextScore gibi bir puanlama işlevi.
function2 VectorDistance veya FullTextScore gibi bir puanlama işlevi.
weights Her puanlama işlevi için bir önem ağırlığı tanımlayan bir sayı dizisi.

Dönüş türleri

Birleştirilmiş puanı temsil eden sayısal bir değer döndürür.

Örnekler

Bu bölüm, bu sorgu dili yapısının nasıl kullanılacağına örnekler içerir.

Karma Arama (vektör benzerliği + BM25)

Bu örnekte Karma Arama, FullTextScore ve VectorDistance'ı birleştirir.

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)

Bu örnekte Karma Arama, puanlama işlevleri için ağırlıkları kullanır.

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)

İki FullTextScore işleviyle fusion

Bu örnekte iki FullTextScore işlevi birleştirilmiştir.

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

İki VectorDistance işleviyle fusion

Bu örnekte iki VectorDistance işlevi birleştirilmiştir.

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)

Açıklamalar

  • Bu işlev, Azure Cosmos DB NoSQL Tam Metin Arama özelliğine kaydolmayı gerektirir.
  • Karma Arama ayrıca Azure Cosmos DB NoSQL Vektör Araması'nda da kayıt gerektirir.
  • Bu işlev tam metin dizini gerektirir.
  • Bu işlev yalnızca bir ORDER BY RANK yan tümcesinde kullanılabilir ve diğer özellik yollarında ile ORDER BY birleştirılamaz.
  • Bu işlev bir projeksiyonun parçası olamaz (örneğin, SELECT FullTextScore(c.text, "keyword") AS Score FROM c geçersizdir).