"...git@developer.sourcefind.cn:OpenDAS/torch-harmonics.git" did not exist on "6ac50e26413465fe0418cd2326af89e4101cc099"
__init__.py 3.71 KB
Newer Older
1
from .utils import (
2
    is_accelerate_available,
3
    is_flax_available,
4
5
6
    is_inflect_available,
    is_onnx_available,
    is_scipy_available,
7
    is_torch_available,
8
9
10
    is_transformers_available,
    is_unidecode_available,
)
Patrick von Platen's avatar
Patrick von Platen committed
11
12


13
__version__ = "0.7.0.dev0"
Patrick von Platen's avatar
Patrick von Platen committed
14

Patrick von Platen's avatar
Patrick von Platen committed
15
from .configuration_utils import ConfigMixin
16
from .onnx_utils import OnnxRuntimeModel
Patrick von Platen's avatar
Patrick von Platen committed
17
from .utils import logging
18
19


20
21
22
23
24
25
26
# This will create an extra dummy file "dummy_torch_and_accelerate_objects.py"
# TODO: (patil-suraj, anton-l) maybe import everything under is_torch_and_accelerate_available
if is_torch_available() and not is_accelerate_available():
    error_msg = "Please install the `accelerate` library to use Diffusers with PyTorch. You can do so by running `pip install diffusers[torch]`. Or if torch is already installed, you can run `pip install accelerate`."  # noqa: E501
    raise ImportError(error_msg)


27
28
if is_torch_available():
    from .modeling_utils import ModelMixin
Will Berman's avatar
Will Berman committed
29
    from .models import AutoencoderKL, Transformer2DModel, UNet1DModel, UNet2DConditionModel, UNet2DModel, VQModel
30
31
32
33
34
35
36
37
38
39
    from .optimization import (
        get_constant_schedule,
        get_constant_schedule_with_warmup,
        get_cosine_schedule_with_warmup,
        get_cosine_with_hard_restarts_schedule_with_warmup,
        get_linear_schedule_with_warmup,
        get_polynomial_decay_schedule_with_warmup,
        get_scheduler,
    )
    from .pipeline_utils import DiffusionPipeline
40
41
42
43
44
45
46
    from .pipelines import (
        DanceDiffusionPipeline,
        DDIMPipeline,
        DDPMPipeline,
        KarrasVePipeline,
        LDMPipeline,
        PNDMPipeline,
Revist's avatar
Revist committed
47
        RePaintPipeline,
48
        ScoreSdeVePipeline,
Will Berman's avatar
Will Berman committed
49
        VQDiffusionPipeline,
50
    )
51
52
53
    from .schedulers import (
        DDIMScheduler,
        DDPMScheduler,
hlky's avatar
hlky committed
54
55
        EulerAncestralDiscreteScheduler,
        EulerDiscreteScheduler,
56
        IPNDMScheduler,
57
58
        KarrasVeScheduler,
        PNDMScheduler,
Revist's avatar
Revist committed
59
        RePaintScheduler,
60
61
        SchedulerMixin,
        ScoreSdeVeScheduler,
Will Berman's avatar
Will Berman committed
62
        VQDiffusionScheduler,
63
64
    )
    from .training_utils import EMAModel
65
else:
66
    from .utils.dummy_pt_objects import *  # noqa F403
Patrick von Platen's avatar
Patrick von Platen committed
67

68
69
70
71
if is_torch_available() and is_scipy_available():
    from .schedulers import LMSDiscreteScheduler
else:
    from .utils.dummy_torch_and_scipy_objects import *  # noqa F403
Patrick von Platen's avatar
Patrick von Platen committed
72

73
if is_torch_available() and is_transformers_available():
74
75
76
77
    from .pipelines import (
        LDMTextToImagePipeline,
        StableDiffusionImg2ImgPipeline,
        StableDiffusionInpaintPipeline,
78
        StableDiffusionInpaintPipelineLegacy,
79
80
        StableDiffusionPipeline,
    )
Patrick von Platen's avatar
Patrick von Platen committed
81
else:
82
    from .utils.dummy_torch_and_transformers_objects import *  # noqa F403
83

84
if is_torch_available() and is_transformers_available() and is_onnx_available():
85
86
87
88
89
90
    from .pipelines import (
        OnnxStableDiffusionImg2ImgPipeline,
        OnnxStableDiffusionInpaintPipeline,
        OnnxStableDiffusionPipeline,
        StableDiffusionOnnxPipeline,
    )
91
else:
92
    from .utils.dummy_torch_and_transformers_and_onnx_objects import *  # noqa F403
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114

if is_flax_available():
    from .modeling_flax_utils import FlaxModelMixin
    from .models.unet_2d_condition_flax import FlaxUNet2DConditionModel
    from .models.vae_flax import FlaxAutoencoderKL
    from .pipeline_flax_utils import FlaxDiffusionPipeline
    from .schedulers import (
        FlaxDDIMScheduler,
        FlaxDDPMScheduler,
        FlaxKarrasVeScheduler,
        FlaxLMSDiscreteScheduler,
        FlaxPNDMScheduler,
        FlaxSchedulerMixin,
        FlaxScoreSdeVeScheduler,
    )
else:
    from .utils.dummy_flax_objects import *  # noqa F403

if is_flax_available() and is_transformers_available():
    from .pipelines import FlaxStableDiffusionPipeline
else:
    from .utils.dummy_flax_and_transformers_objects import *  # noqa F403