czbenchmarks.models.validators.base_model_validator

Attributes

logger

Classes

BaseModelValidator

Abstract base class for model validators.

Module Contents

czbenchmarks.models.validators.base_model_validator.logger
class czbenchmarks.models.validators.base_model_validator.BaseModelValidator[source]

Bases: abc.ABC

Abstract base class for model validators.

Defines the interface for validating datasets against model requirements. Validators ensure datasets meet model-specific requirements like: - Compatible data types - Required metadata fields - Organism compatibility - Feature name formats

Each validator must: 1. Define a dataset_type class variable 2. Define a model_type class variable or model_name property 3. Implement _validate_dataset, inputs, and outputs

dataset_type: ClassVar[Type[czbenchmarks.datasets.BaseDataset]]
model_type: ClassVar[czbenchmarks.models.types.ModelType]
classmethod __init_subclass__() None[source]

Validate that subclasses define required class variables and follow naming conventions.

Raises:
  • TypeError – If required class variables are missing or invalid

  • ValueError – If class naming doesn’t follow conventions

property inputs: Set[czbenchmarks.datasets.DataType]
Abstractmethod:

Required input data types this model requires.

Returns:

Set of required DataType enums

property outputs: Set[czbenchmarks.datasets.DataType]
Abstractmethod:

Output data types produced by this model.

Returns:

Set of output DataType enums

validate_dataset(dataset: czbenchmarks.datasets.BaseDataset)[source]

Validate a dataset meets all model requirements.

Checks: 1. Dataset type matches model requirements 2. Required inputs are available 3. Model-specific validation rules

Parameters:

dataset – Dataset to validate

Raises:

ValueError – If validation fails