test_models.py 1023 Bytes
Newer Older
1
import pytest
2
from lazy_init_utils import SUPPORT_LAZY, check_lazy_init
3
4
5
6

from tests.kit.model_zoo import model_zoo


7
8
9
@pytest.mark.skipif(not SUPPORT_LAZY, reason="requires torch >= 1.12.0")
@pytest.mark.parametrize("subset", ["torchvision", "diffusers", "timm", "transformers", "torchaudio", "deepfm", "dlrm"])
@pytest.mark.parametrize("default_device", ["cpu", "cuda"])
10
def test_torchvision_models_lazy_init(subset, default_device):
11
12
13
    sub_model_zoo = model_zoo.get_sub_registry(subset)
    for name, entry in sub_model_zoo.items():
        # TODO(ver217): lazy init does not support weight norm, skip these models
14
15
16
17
18
        if (
            name in ("torchaudio_wav2vec2_base", "torchaudio_hubert_base")
            or name.startswith("transformers_llama")
            or name.startswith(("transformers_vit", "transformers_blip2"))
        ):
19
            continue
20
        check_lazy_init(entry, verbose=True, default_device=default_device)
21
22


23
24
if __name__ == "__main__":
    test_torchvision_models_lazy_init("torchvision")