def prepare_pretrained_model(self) -> None:
        """Prepare the pretrained teacher model.

        Downloads and loads pretrained weights for the teacher model if not already
        present.
        """
        pretrained_models_dir = Path("./pre_trained/")
        if not (pretrained_models_dir / "efficientad_pretrained_weights").is_dir():
            download_and_extract(pretrained_models_dir, WEIGHTS_DOWNLOAD_INFO)
        model_size_str = self.model_size.value if isinstance(self.model_size, EfficientAdModelSize) else self.model_size
        teacher_path = (
            pretrained_models_dir / "efficientad_pretrained_weights" / f"pretrained_teacher_{model_size_str}.pth"
        )
        logger.info(f"Load pretrained teacher model from {teacher_path}")
        self.model.teacher.load_state_dict(
            torch.load(teacher_path, map_location=torch.device(self.device), weights_only=True),
        )
Prepare the pretrained teacher model.

        Downloads and loads pretrained weights for the teacher model if not already
        present.
        
src/anomalib/models/image/efficient_ad/lightning_model.py