diff --git a/src/anomalib/models/__init__.py b/src/anomalib/models/__init__.py index 3b32c83367..50e991327c 100644 --- a/src/anomalib/models/__init__.py +++ b/src/anomalib/models/__init__.py @@ -7,6 +7,7 @@ from importlib import import_module from jsonargparse import Namespace +from lightning_utilities.core.imports import module_available from omegaconf import DictConfig, OmegaConf from anomalib.models.components import AnomalyModule @@ -30,7 +31,6 @@ Rkde, Stfpm, Uflow, - VlmAd, WinClip, ) from .video import AiVad @@ -58,11 +58,16 @@ class UnknownModelError(ModuleNotFoundError): "Rkde", "Stfpm", "Uflow", - "VlmAd", "WinClip", "AiVad", ] +if module_available("anomalib.models.image.vlm_ad"): + from .image import VlmAd + + __all__.append("VlmAd") + + logger = logging.getLogger(__name__) diff --git a/src/anomalib/models/image/__init__.py b/src/anomalib/models/image/__init__.py index b09da8b07b..a585d93cb1 100644 --- a/src/anomalib/models/image/__init__.py +++ b/src/anomalib/models/image/__init__.py @@ -3,6 +3,8 @@ # Copyright (C) 2023 Intel Corporation # SPDX-License-Identifier: Apache-2.0 +from lightning_utilities.core.imports import module_available + from .cfa import Cfa from .cflow import Cflow from .csflow import Csflow @@ -20,7 +22,6 @@ from .rkde import Rkde from .stfpm import Stfpm from .uflow import Uflow -from .vlm_ad import VlmAd from .winclip import WinClip __all__ = [ @@ -41,6 +42,10 @@ "Rkde", "Stfpm", "Uflow", - "VlmAd", "WinClip", ] + +if module_available("anomalib.models.image.vlm_ad"): + from .vlm_ad import VlmAd + + __all__.append("VlmAd")