__init__.py 5.67 KB
Newer Older
Anton Lozhkov's avatar
Anton Lozhkov committed
1
__version__ = "0.12.0.dev0"
2
3

from .configuration_utils import ConfigMixin
4
from .utils import (
5
    OptionalDependencyNotAvailable,
6
    is_flax_available,
7
    is_inflect_available,
8
    is_k_diffusion_available,
9
    is_librosa_available,
10
11
    is_onnx_available,
    is_scipy_available,
12
    is_torch_available,
13
    is_transformers_available,
14
    is_transformers_version,
15
    is_unidecode_available,
16
    logging,
17
)
Patrick von Platen's avatar
Patrick von Platen committed
18
19


20
21
22
23
24
25
26
27
try:
    if not is_onnx_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from .utils.dummy_onnx_objects import *  # noqa F403
else:
    from .pipelines import OnnxRuntimeModel

28
29
30
31
32
33
try:
    if not is_torch_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from .utils.dummy_pt_objects import *  # noqa F403
else:
Will Berman's avatar
Will Berman committed
34
35
    from .models import (
        AutoencoderKL,
36
        ModelMixin,
Will Berman's avatar
Will Berman committed
37
38
39
40
41
42
43
        PriorTransformer,
        Transformer2DModel,
        UNet1DModel,
        UNet2DConditionModel,
        UNet2DModel,
        VQModel,
    )
44
45
46
47
48
49
50
51
52
    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,
    )
53
    from .pipelines import (
54
        AudioPipelineOutput,
55
56
57
        DanceDiffusionPipeline,
        DDIMPipeline,
        DDPMPipeline,
58
59
        DiffusionPipeline,
        ImagePipelineOutput,
60
61
        KarrasVePipeline,
        LDMPipeline,
62
        LDMSuperResolutionPipeline,
63
        PNDMPipeline,
Revist's avatar
Revist committed
64
        RePaintPipeline,
65
66
        ScoreSdeVePipeline,
    )
67
68
69
    from .schedulers import (
        DDIMScheduler,
        DDPMScheduler,
70
        DPMSolverMultistepScheduler,
71
        DPMSolverSinglestepScheduler,
hlky's avatar
hlky committed
72
73
        EulerAncestralDiscreteScheduler,
        EulerDiscreteScheduler,
74
        HeunDiscreteScheduler,
75
        IPNDMScheduler,
76
        KarrasVeScheduler,
77
78
        KDPM2AncestralDiscreteScheduler,
        KDPM2DiscreteScheduler,
79
        PNDMScheduler,
Revist's avatar
Revist committed
80
        RePaintScheduler,
81
82
        SchedulerMixin,
        ScoreSdeVeScheduler,
Will Berman's avatar
Will Berman committed
83
        UnCLIPScheduler,
Will Berman's avatar
Will Berman committed
84
        VQDiffusionScheduler,
85
86
    )
    from .training_utils import EMAModel
Patrick von Platen's avatar
Patrick von Platen committed
87

88
89
90
91
try:
    if not (is_torch_available() and is_scipy_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
92
    from .utils.dummy_torch_and_scipy_objects import *  # noqa F403
93
94
else:
    from .schedulers import LMSDiscreteScheduler
Patrick von Platen's avatar
Patrick von Platen committed
95

96
97
98
99
100
101
102

try:
    if not (is_torch_available() and is_transformers_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from .utils.dummy_torch_and_transformers_objects import *  # noqa F403
else:
103
    from .pipelines import (
Patrick von Platen's avatar
Patrick von Platen committed
104
105
        AltDiffusionImg2ImgPipeline,
        AltDiffusionPipeline,
106
        CycleDiffusionPipeline,
107
        LDMTextToImagePipeline,
108
        PaintByExamplePipeline,
109
        StableDiffusionDepth2ImgPipeline,
110
        StableDiffusionImageVariationPipeline,
111
112
        StableDiffusionImg2ImgPipeline,
        StableDiffusionInpaintPipeline,
113
        StableDiffusionInpaintPipelineLegacy,
114
        StableDiffusionPipeline,
115
        StableDiffusionPipelineSafe,
116
        StableDiffusionUpscalePipeline,
Will Berman's avatar
Will Berman committed
117
        UnCLIPImageVariationPipeline,
Will Berman's avatar
Will Berman committed
118
        UnCLIPPipeline,
119
120
121
122
        VersatileDiffusionDualGuidedPipeline,
        VersatileDiffusionImageVariationPipeline,
        VersatileDiffusionPipeline,
        VersatileDiffusionTextToImagePipeline,
123
        VQDiffusionPipeline,
124
    )
125

126
127
128
129
try:
    if not (is_torch_available() and is_transformers_available() and is_k_diffusion_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
130
    from .utils.dummy_torch_and_transformers_and_k_diffusion_objects import *  # noqa F403
131
132
else:
    from .pipelines import StableDiffusionKDiffusionPipeline
133

134
135
136
137
138
139
try:
    if not (is_torch_available() and is_transformers_available() and is_onnx_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from .utils.dummy_torch_and_transformers_and_onnx_objects import *  # noqa F403
else:
140
141
142
    from .pipelines import (
        OnnxStableDiffusionImg2ImgPipeline,
        OnnxStableDiffusionInpaintPipeline,
143
        OnnxStableDiffusionInpaintPipelineLegacy,
144
145
146
        OnnxStableDiffusionPipeline,
        StableDiffusionOnnxPipeline,
    )
147
148
149
150
151
152

try:
    if not (is_torch_available() and is_librosa_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from .utils.dummy_torch_and_librosa_objects import *  # noqa F403
153
else:
154
    from .pipelines import AudioDiffusionPipeline, Mel
155

156
157
158
159
160
161
try:
    if not is_flax_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from .utils.dummy_flax_objects import *  # noqa F403
else:
162
    from .models.modeling_flax_utils import FlaxModelMixin
163
164
    from .models.unet_2d_condition_flax import FlaxUNet2DConditionModel
    from .models.vae_flax import FlaxAutoencoderKL
165
    from .pipelines import FlaxDiffusionPipeline
166
167
168
    from .schedulers import (
        FlaxDDIMScheduler,
        FlaxDDPMScheduler,
169
        FlaxDPMSolverMultistepScheduler,
170
171
172
173
174
175
176
        FlaxKarrasVeScheduler,
        FlaxLMSDiscreteScheduler,
        FlaxPNDMScheduler,
        FlaxSchedulerMixin,
        FlaxScoreSdeVeScheduler,
    )

177

178
179
180
181
try:
    if not (is_flax_available() and is_transformers_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
182
    from .utils.dummy_flax_and_transformers_objects import *  # noqa F403
183
else:
184
    from .pipelines import FlaxStableDiffusionImg2ImgPipeline, FlaxStableDiffusionPipeline