1818 */
1919
2020import { FieldCollapse } from '@global/search/_types/FieldCollapse'
21+ import { Rescore } from '@global/search/_types/rescoring'
2122import { UserDefinedValue } from '@spec_utils/UserDefinedValue'
2223import { QueryVector , QueryVectorBuilder , RescoreVector } from '@_types/Knn'
2324import { float , integer } from '@_types/Numeric'
@@ -39,6 +40,8 @@ export class RetrieverContainer {
3940 text_similarity_reranker ?: TextSimilarityReranker
4041 /** A retriever that replaces the functionality of a rule query. */
4142 rule ?: RuleRetriever
43+ /** A retriever that re-scores only the results produced by its child retriever. */
44+ rescorer ?: RescorerRetriever
4245}
4346
4447export class RetrieverBase {
@@ -48,6 +51,12 @@ export class RetrieverBase {
4851 min_score ?: float
4952}
5053
54+ export class RescorerRetriever extends RetrieverBase {
55+ /** Inner retriever. */
56+ retriever : RetrieverContainer
57+ rescore : Rescore | Rescore [ ]
58+ }
59+
5160export class StandardRetriever extends RetrieverBase {
5261 /** Defines a query to retrieve a set of top documents. */
5362 query ?: QueryContainer
@@ -105,7 +114,7 @@ export class TextSimilarityReranker extends RetrieverBase {
105114
106115export class RuleRetriever extends RetrieverBase {
107116 /** The ruleset IDs containing the rules this retriever is evaluating against. */
108- ruleset_ids : Id [ ]
117+ ruleset_ids : Id | Id [ ]
109118 /** The match criteria that will determine if a rule in the provided rulesets should be applied. */
110119 match_criteria : UserDefinedValue
111120 /** The retriever whose results rules should be applied to. */
0 commit comments