SequentialRetriever
Queries multiple retrievers in sequence, re-ranking at each step.
Each stage narrows the result set by requiring strictly decreasing
top_k values. The last child is the authoritative scorer.
Parameters
- children : array, default=
[] - Ordered list of child retrievers. The first child retrieves broadly; each subsequent child re-ranks and tightens the results.
Methods
get_metadata(cls) -> Dict[str, Any]
SequentialRetrieverReturn UI metadata including the declarative operation summary.
retrieve(self, query, **kwargs) -> List[DashAI.back.models.RAG.documents.chunk.Chunk]
SequentialRetrieverRetrieve chunks through the sequential cascade.
score_chunks(self, chunk_ids: List[int], query: str) -> List[Tuple[int, float]]
SequentialRetrieverScore chunks by delegating to the last child in the cascade.
add(self, child: DashAI.back.models.RAG.retrievers.retriever_model.RetrieverModel) -> None
CompositeRetrieverAdd a child retriever.
calculate_metrics(self, split: DashAI.back.core.enums.metrics.SplitEnum = <SplitEnum.VALIDATION: 'validation'>, level: DashAI.back.core.enums.metrics.LevelEnum = <LevelEnum.LAST: 'last'>, log_index: int = None, x_data: 'DashAIDataset' = None, y_data: 'DashAIDataset' = None, fold_index: int = None, inner_fold_index: int = None)
BaseModelCalculate and save metrics for a given data split and level.
Parameters
- split : SplitEnum
- The data split to evaluate (TRAIN, VALIDATION, or TEST). Defaults to SplitEnum.VALIDATION.
- level : LevelEnum
- The metric granularity level (LAST, TRIAL, STEP, or BATCH). Defaults to LevelEnum.LAST.
- log_index : int, optional
- Explicit step index for the metric entry. If None, the next step index is computed automatically. Defaults to None.
- x_data : DashAIDataset, optional
- Input features. If None, the dataset stored in the model for the given split is used. Defaults to None.
- y_data : DashAIDataset, optional
- Target labels. If None, the labels stored in the model for the given split are used. Defaults to None.
compute_metrics(self, split: DashAI.back.core.enums.metrics.SplitEnum = <SplitEnum.TEST: 'test'>, x_data: 'DashAIDataset' = None, y_data: 'DashAIDataset' = None) -> Dict[str, float]
BaseModelCalculate and return metric scores for a given data split.
Parameters
- split : SplitEnum
- The data split to evaluate (TRAIN, VALIDATION, or TEST). Defaults to SplitEnum.VALIDATION.
- x_data : DashAIDataset, optional
- Input features. If None, the dataset stored in the model for the given split is used. Defaults to None.
- y_data : DashAIDataset, optional
- Target labels. If None, the labels stored in the model for the given split are used. Defaults to None.
Returns
- Dict[str, float]
- A dictionary mapping metric names to their computed scores.
get_children(self) -> List[DashAI.back.models.RAG.retrievers.retriever_model.RetrieverModel]
CompositeRetrieverReturn a copy of the children list.
get_credential(self, name: str)
ConfigObjectResolve a registered credential component by name.
Parameters
- name : str
- Credential component class name (e.g. "HuggingFaceCredential").
Returns
- BaseCredential
- An instance of the requested credential component.
get_id(self) -> int | None
RetrieverModelReturn the database ID of this retriever, or None.
get_schema(cls) -> dict
ConfigObjectGenerates the component related Json Schema.
Returns
- dict
- Dictionary representing the Json Schema of the component.
init_model(self) -> None
RetrieverModelCalled by the factory after inject_infra().
inject_infra(self, env_RAG_path: str | os.PathLike, chunks: Dict[int, Dict[int, DashAI.back.models.RAG.documents.chunk.Chunk]], persistence: Any) -> None
RetrieverModelInject runtime infrastructure after schema validation.
load(self, filename: str = '') -> None
RetrieverModelRestore the retriever's state from disk.
predict_prepared(self, features: Any) -> Any
BaseModelPredict from data that is already in this model's feature space.
Parameters
- features : pandas.DataFrame or numpy.ndarray
- Feature matrix as returned by
prepare_dataset(..., is_fit=False). No further preparation is applied to it.
Returns
- Any
- The same kind of output as
predict: predicted values for regressors, class probabilities for DashAI classifiers.
predict_proba_prepared(self, features: Any) -> Any
BaseModelReturn class probabilities for data already in the feature space.
Parameters
- features : pandas.DataFrame or numpy.ndarray
- Feature matrix as returned by
prepare_dataset(..., is_fit=False).
Returns
- numpy.ndarray
- Array of shape
(n_samples, n_classes)with class probabilities.
prepare_dataset(self, dataset: 'DashAIDataset', is_fit: bool = False) -> 'DashAIDataset'
BaseModelHook for model specific preprocessing of input features.
Parameters
- dataset : DashAIDataset
- The input dataset to preprocess.
- is_fit : bool
- Whether the call is part of a fitting phase. Defaults to False.
Returns
- DashAIDataset
- The preprocessed dataset ready to be fed into the model.
prepare_output(self, dataset: 'DashAIDataset', is_fit: bool = False) -> 'DashAIDataset'
BaseModelHook for model-specific preprocessing of output targets.
Parameters
- dataset : DashAIDataset
- The output dataset (target labels) to preprocess.
- is_fit : bool
- Whether the call is part of a fitting phase. Defaults to False.
Returns
- DashAIDataset
- The preprocessed output dataset.
remove(self, child: DashAI.back.models.RAG.retrievers.retriever_model.RetrieverModel) -> None
CompositeRetrieverRemove a child retriever.
save(self, filename: str = '') -> None
RetrieverModelPersist the retriever's state to disk.
set_id(self, id: int) -> None
RetrieverModelAssign a database ID to this retriever.
train(self, **kwargs)
RetrieverModelTrain the retriever on the injected chunks.
validate_and_transform(self, raw_data: dict) -> dict
ConfigObjectIt takes the data given by the user to initialize the model and returns it with all the objects that the model needs to work.
Parameters
- raw_data : dict
- A dictionary with the data provided by the user to initialize the model.
Returns
- dict
- A validated dictionary with the necessary objects.