rank_fusion(query: str, run_manager: CallbackManagerForRetrieverRun) → List[Document][source]¶
Retrieve the results of the retrievers and use rank_fusion_func to get
the final result.
Parameters
query – The query to search for.
Returns
A list of reranked documents.
classmethod schema(by_alias: bool = True, ref_template: unicode = '#/definitions/{model}') → DictStrAny¶
classmethod schema_json(*, by_alias: bool = True, ref_template: unicode = '#/definitions/{model}', **dumps_kwargs: Any) → unicode¶
stream(input: Input, config: Optional[RunnableConfig] = None) → Iterator[Output]¶
to_json() → Union[SerializedConstructor, SerializedNotImplemented]¶
to_json_not_implemented() → SerializedNotImplemented¶
classmethod update_forward_refs(**localns: Any) → None¶
Try to update ForwardRefs on fields based on this Model, globalns and localns.
classmethod validate(value: Any) → Model¶
weighted_reciprocal_rank(doc_lists: List[List[Document]]) → List[Document][source]¶
Perform weighted Reciprocal Rank Fusion on multiple rank lists.
You can find more details about RRF here:
https://plg.uwaterloo.ca/~gvcormac/cormacksigir09-rrf.pdf
Parameters
doc_lists – A list of rank lists, where each rank list contains unique items.
Returns
The final aggregated list of items sorted by their weighted RRFscores in descending order.
Return type
list