__init__.py 6.24 KB
Newer Older
Patrick von Platen's avatar
Patrick von Platen committed
1
__version__ = "0.14.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_k_diffusion_version,
10
    is_librosa_available,
11
12
    is_onnx_available,
    is_scipy_available,
13
    is_torch_available,
14
    is_transformers_available,
15
    is_transformers_version,
16
    is_unidecode_available,
17
    logging,
18
)
Patrick von Platen's avatar
Patrick von Platen committed
19
20


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

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

93
94
95
96
try:
    if not (is_torch_available() and is_scipy_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
97
    from .utils.dummy_torch_and_scipy_objects import *  # noqa F403
98
99
else:
    from .schedulers import LMSDiscreteScheduler
Patrick von Platen's avatar
Patrick von Platen committed
100

101
102
103
104
105
106
107

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:
108
    from .pipelines import (
Patrick von Platen's avatar
Patrick von Platen committed
109
110
        AltDiffusionImg2ImgPipeline,
        AltDiffusionPipeline,
111
        CycleDiffusionPipeline,
112
        LDMTextToImagePipeline,
113
        PaintByExamplePipeline,
114
        SemanticStableDiffusionPipeline,
YiYi Xu's avatar
YiYi Xu committed
115
        StableDiffusionAttendAndExcitePipeline,
116
        StableDiffusionDepth2ImgPipeline,
117
        StableDiffusionImageVariationPipeline,
118
119
        StableDiffusionImg2ImgPipeline,
        StableDiffusionInpaintPipeline,
120
        StableDiffusionInpaintPipelineLegacy,
121
        StableDiffusionInstructPix2PixPipeline,
122
        StableDiffusionLatentUpscalePipeline,
123
        StableDiffusionPanoramaPipeline,
124
        StableDiffusionPipeline,
125
        StableDiffusionPipelineSafe,
126
        StableDiffusionPix2PixZeroPipeline,
127
        StableDiffusionSAGPipeline,
128
        StableDiffusionUpscalePipeline,
Will Berman's avatar
Will Berman committed
129
130
        StableUnCLIPImg2ImgPipeline,
        StableUnCLIPPipeline,
Will Berman's avatar
Will Berman committed
131
        UnCLIPImageVariationPipeline,
Will Berman's avatar
Will Berman committed
132
        UnCLIPPipeline,
133
134
135
136
        VersatileDiffusionDualGuidedPipeline,
        VersatileDiffusionImageVariationPipeline,
        VersatileDiffusionPipeline,
        VersatileDiffusionTextToImagePipeline,
137
        VQDiffusionPipeline,
138
    )
139

140
141
142
143
try:
    if not (is_torch_available() and is_transformers_available() and is_k_diffusion_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
144
    from .utils.dummy_torch_and_transformers_and_k_diffusion_objects import *  # noqa F403
145
146
else:
    from .pipelines import StableDiffusionKDiffusionPipeline
147

148
149
150
151
152
153
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:
154
155
156
    from .pipelines import (
        OnnxStableDiffusionImg2ImgPipeline,
        OnnxStableDiffusionInpaintPipeline,
157
        OnnxStableDiffusionInpaintPipelineLegacy,
158
159
160
        OnnxStableDiffusionPipeline,
        StableDiffusionOnnxPipeline,
    )
161
162
163
164
165
166

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

170
171
172
173
174
175
try:
    if not is_flax_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from .utils.dummy_flax_objects import *  # noqa F403
else:
176
    from .models.modeling_flax_utils import FlaxModelMixin
177
178
    from .models.unet_2d_condition_flax import FlaxUNet2DConditionModel
    from .models.vae_flax import FlaxAutoencoderKL
179
    from .pipelines import FlaxDiffusionPipeline
180
181
182
    from .schedulers import (
        FlaxDDIMScheduler,
        FlaxDDPMScheduler,
183
        FlaxDPMSolverMultistepScheduler,
184
185
186
187
188
189
190
        FlaxKarrasVeScheduler,
        FlaxLMSDiscreteScheduler,
        FlaxPNDMScheduler,
        FlaxSchedulerMixin,
        FlaxScoreSdeVeScheduler,
    )

191

192
193
194
195
try:
    if not (is_flax_available() and is_transformers_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
196
    from .utils.dummy_flax_and_transformers_objects import *  # noqa F403
197
else:
198
199
200
201
202
    from .pipelines import (
        FlaxStableDiffusionImg2ImgPipeline,
        FlaxStableDiffusionInpaintPipeline,
        FlaxStableDiffusionPipeline,
    )