From 846bcfa182c4ad8c1dc739f55ae860ba11ea748f Mon Sep 17 00:00:00 2001 From: Mridula Date: Thu, 16 Oct 2025 15:13:41 +0100 Subject: [PATCH 1/3] Added weight to the documentation --- specification/_types/Retriever.ts | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/specification/_types/Retriever.ts b/specification/_types/Retriever.ts index 7ab388bc35..287d7fab5d 100644 --- a/specification/_types/Retriever.ts +++ b/specification/_types/Retriever.ts @@ -134,8 +134,8 @@ export class KnnRetriever extends RetrieverBase { } export class RRFRetriever extends RetrieverBase { - /** A list of child retrievers to specify which sets of returned top documents will have the RRF formula applied to them. */ - retrievers: RetrieverContainer[] + /** A list of child retrievers to specify which sets of returned top documents will have the RRF formula applied to them. Each retriever can optionally include a weight parameter. */ + retrievers: RRFRetrieverContainer[] /** This value determines how much influence documents in individual result sets per query have over the final ranked result set. */ rank_constant?: integer /** This value determines the size of the individual result sets per query. */ @@ -144,6 +144,15 @@ export class RRFRetriever extends RetrieverBase { fields?: string[] } +/** + * RRF retriever container supporting both direct and weighted formats. + * @variants container + */ +export class RRFRetrieverContainer extends RetrieverContainer { + /** Weight multiplier for this retriever's contribution to the RRF score. Higher values increase influence. Defaults to 1.0 if not specified. Must be non-negative. */ + weight?: float +} + export class TextSimilarityReranker extends RetrieverBase { /** The nested retriever which will produce the first-level results, that will later be used for reranking. */ retriever: RetrieverContainer From 127d4a87be00172f0b190a5b7289e3176cf5b6b7 Mon Sep 17 00:00:00 2001 From: Mridula Date: Wed, 22 Oct 2025 12:11:27 +0100 Subject: [PATCH 2/3] Resolved PR comments --- specification/_types/Retriever.ts | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/specification/_types/Retriever.ts b/specification/_types/Retriever.ts index 287d7fab5d..c928a309e2 100644 --- a/specification/_types/Retriever.ts +++ b/specification/_types/Retriever.ts @@ -133,9 +133,25 @@ export class KnnRetriever extends RetrieverBase { rescore_vector?: RescoreVector } +/** + * Wraps a retriever with an optional weight for RRF scoring. + */ +export class RRFRetrieverComponent { + /** The nested retriever configuration. */ + retriever: RetrieverContainer + /** Weight multiplier for this retriever's contribution to the RRF score. Higher values increase influence. Defaults to 1.0 if not specified. Must be non-negative. */ + weight?: float +} + +/** + * Either a direct RetrieverContainer (backward compatible) or an RRFRetrieverComponent with weight. + * @codegen_names retriever, weighted + */ +export type RRFRetrieverEntry = RetrieverContainer | RRFRetrieverComponent + export class RRFRetriever extends RetrieverBase { /** A list of child retrievers to specify which sets of returned top documents will have the RRF formula applied to them. Each retriever can optionally include a weight parameter. */ - retrievers: RRFRetrieverContainer[] + retrievers: RRFRetrieverEntry[] /** This value determines how much influence documents in individual result sets per query have over the final ranked result set. */ rank_constant?: integer /** This value determines the size of the individual result sets per query. */ @@ -144,14 +160,7 @@ export class RRFRetriever extends RetrieverBase { fields?: string[] } -/** - * RRF retriever container supporting both direct and weighted formats. - * @variants container - */ -export class RRFRetrieverContainer extends RetrieverContainer { - /** Weight multiplier for this retriever's contribution to the RRF score. Higher values increase influence. Defaults to 1.0 if not specified. Must be non-negative. */ - weight?: float -} + export class TextSimilarityReranker extends RetrieverBase { /** The nested retriever which will produce the first-level results, that will later be used for reranking. */ From 98516a48a59fef2dce6464ca3e14f7bcd109c5c8 Mon Sep 17 00:00:00 2001 From: Mridula Date: Wed, 22 Oct 2025 12:12:49 +0100 Subject: [PATCH 3/3] Update Retriever.ts --- specification/_types/Retriever.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/specification/_types/Retriever.ts b/specification/_types/Retriever.ts index c928a309e2..a595015187 100644 --- a/specification/_types/Retriever.ts +++ b/specification/_types/Retriever.ts @@ -160,8 +160,6 @@ export class RRFRetriever extends RetrieverBase { fields?: string[] } - - export class TextSimilarityReranker extends RetrieverBase { /** The nested retriever which will produce the first-level results, that will later be used for reranking. */ retriever: RetrieverContainer