__init__.py 22.5 KB
Newer Older
Pedro Cuenca's avatar
Pedro Cuenca committed
1
2
3
from typing import TYPE_CHECKING

from ..utils import (
4
    DIFFUSERS_SLOW_IMPORT,
Pedro Cuenca's avatar
Pedro Cuenca committed
5
6
7
8
9
10
11
12
13
    OptionalDependencyNotAvailable,
    _LazyModule,
    get_objects_from_module,
    is_flax_available,
    is_k_diffusion_available,
    is_librosa_available,
    is_note_seq_available,
    is_onnx_available,
    is_torch_available,
Mengqing Cao's avatar
Mengqing Cao committed
14
    is_torch_npu_available,
Pedro Cuenca's avatar
Pedro Cuenca committed
15
16
17
18
19
20
    is_transformers_available,
)


# These modules contain pipelines from multiple libraries/frameworks
_dummy_objects = {}
Suraj Patil's avatar
Suraj Patil committed
21
22
_import_structure = {
    "controlnet": [],
UmerHA's avatar
UmerHA committed
23
    "controlnet_xs": [],
Dhruv Nair's avatar
Dhruv Nair committed
24
    "deprecated": [],
Suraj Patil's avatar
Suraj Patil committed
25
    "latent_diffusion": [],
26
    "ledits_pp": [],
27
    "marigold": [],
Suraj Patil's avatar
Suraj Patil committed
28
29
30
    "stable_diffusion": [],
    "stable_diffusion_xl": [],
}
Pedro Cuenca's avatar
Pedro Cuenca committed
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50

try:
    if not is_torch_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from ..utils import dummy_pt_objects  # noqa F403

    _dummy_objects.update(get_objects_from_module(dummy_pt_objects))
else:
    _import_structure["auto_pipeline"] = [
        "AutoPipelineForImage2Image",
        "AutoPipelineForInpainting",
        "AutoPipelineForText2Image",
    ]
    _import_structure["consistency_models"] = ["ConsistencyModelPipeline"]
    _import_structure["dance_diffusion"] = ["DanceDiffusionPipeline"]
    _import_structure["ddim"] = ["DDIMPipeline"]
    _import_structure["ddpm"] = ["DDPMPipeline"]
    _import_structure["dit"] = ["DiTPipeline"]
    _import_structure["latent_diffusion"].extend(["LDMSuperResolutionPipeline"])
Suraj Patil's avatar
Suraj Patil committed
51
52
53
    _import_structure["pipeline_utils"] = [
        "AudioPipelineOutput",
        "DiffusionPipeline",
54
        "StableDiffusionMixin",
Suraj Patil's avatar
Suraj Patil committed
55
56
        "ImagePipelineOutput",
    ]
Dhruv Nair's avatar
Dhruv Nair committed
57
58
59
60
61
62
63
64
65
    _import_structure["deprecated"].extend(
        [
            "PNDMPipeline",
            "LDMPipeline",
            "RePaintPipeline",
            "ScoreSdeVePipeline",
            "KarrasVePipeline",
        ]
    )
Pedro Cuenca's avatar
Pedro Cuenca committed
66
67
68
69
70
71
72
73
try:
    if not (is_torch_available() and is_librosa_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from ..utils import dummy_torch_and_librosa_objects  # noqa F403

    _dummy_objects.update(get_objects_from_module(dummy_torch_and_librosa_objects))
else:
Dhruv Nair's avatar
Dhruv Nair committed
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
    _import_structure["deprecated"].extend(["AudioDiffusionPipeline", "Mel"])

try:
    if not (is_transformers_available() and is_torch_available() and is_note_seq_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from ..utils import dummy_transformers_and_torch_and_note_seq_objects  # noqa F403

    _dummy_objects.update(get_objects_from_module(dummy_transformers_and_torch_and_note_seq_objects))
else:
    _import_structure["deprecated"].extend(
        [
            "MidiProcessor",
            "SpectrogramDiffusionPipeline",
        ]
    )

Pedro Cuenca's avatar
Pedro Cuenca committed
91
92
93
94
95
96
97
98
try:
    if not (is_torch_available() and is_transformers_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from ..utils import dummy_torch_and_transformers_objects  # noqa F403

    _dummy_objects.update(get_objects_from_module(dummy_torch_and_transformers_objects))
else:
Dhruv Nair's avatar
Dhruv Nair committed
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
    _import_structure["deprecated"].extend(
        [
            "VQDiffusionPipeline",
            "AltDiffusionPipeline",
            "AltDiffusionImg2ImgPipeline",
            "CycleDiffusionPipeline",
            "StableDiffusionInpaintPipelineLegacy",
            "StableDiffusionPix2PixZeroPipeline",
            "StableDiffusionParadigmsPipeline",
            "StableDiffusionModelEditingPipeline",
            "VersatileDiffusionDualGuidedPipeline",
            "VersatileDiffusionImageVariationPipeline",
            "VersatileDiffusionPipeline",
            "VersatileDiffusionTextToImagePipeline",
        ]
    )
Will Berman's avatar
Will Berman committed
115
    _import_structure["amused"] = ["AmusedImg2ImgPipeline", "AmusedInpaintPipeline", "AmusedPipeline"]
Aryan V S's avatar
Aryan V S committed
116
117
    _import_structure["animatediff"] = [
        "AnimateDiffPipeline",
Aryan's avatar
Aryan committed
118
        "AnimateDiffSDXLPipeline",
Aryan V S's avatar
Aryan V S committed
119
120
        "AnimateDiffVideoToVideoPipeline",
    ]
Pedro Cuenca's avatar
Pedro Cuenca committed
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
    _import_structure["audioldm"] = ["AudioLDMPipeline"]
    _import_structure["audioldm2"] = [
        "AudioLDM2Pipeline",
        "AudioLDM2ProjectionModel",
        "AudioLDM2UNet2DConditionModel",
    ]
    _import_structure["blip_diffusion"] = ["BlipDiffusionPipeline"]
    _import_structure["controlnet"].extend(
        [
            "BlipDiffusionControlNetPipeline",
            "StableDiffusionControlNetImg2ImgPipeline",
            "StableDiffusionControlNetInpaintPipeline",
            "StableDiffusionControlNetPipeline",
            "StableDiffusionXLControlNetImg2ImgPipeline",
            "StableDiffusionXLControlNetInpaintPipeline",
            "StableDiffusionXLControlNetPipeline",
        ]
    )
139
140
141
142
143
144
    _import_structure["controlnet_xs"].extend(
        [
            "StableDiffusionControlNetXSPipeline",
            "StableDiffusionXLControlNetXSPipeline",
        ]
    )
Pedro Cuenca's avatar
Pedro Cuenca committed
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
    _import_structure["deepfloyd_if"] = [
        "IFImg2ImgPipeline",
        "IFImg2ImgSuperResolutionPipeline",
        "IFInpaintingPipeline",
        "IFInpaintingSuperResolutionPipeline",
        "IFPipeline",
        "IFSuperResolutionPipeline",
    ]
    _import_structure["kandinsky"] = [
        "KandinskyCombinedPipeline",
        "KandinskyImg2ImgCombinedPipeline",
        "KandinskyImg2ImgPipeline",
        "KandinskyInpaintCombinedPipeline",
        "KandinskyInpaintPipeline",
        "KandinskyPipeline",
        "KandinskyPriorPipeline",
    ]
    _import_structure["kandinsky2_2"] = [
        "KandinskyV22CombinedPipeline",
        "KandinskyV22ControlnetImg2ImgPipeline",
        "KandinskyV22ControlnetPipeline",
        "KandinskyV22Img2ImgCombinedPipeline",
        "KandinskyV22Img2ImgPipeline",
        "KandinskyV22InpaintCombinedPipeline",
        "KandinskyV22InpaintPipeline",
        "KandinskyV22Pipeline",
        "KandinskyV22PriorEmb2EmbPipeline",
        "KandinskyV22PriorPipeline",
    ]
Suraj Patil's avatar
Suraj Patil committed
174
175
176
177
    _import_structure["kandinsky3"] = [
        "Kandinsky3Img2ImgPipeline",
        "Kandinsky3Pipeline",
    ]
178
179
180
181
    _import_structure["latent_consistency_models"] = [
        "LatentConsistencyModelImg2ImgPipeline",
        "LatentConsistencyModelPipeline",
    ]
Pedro Cuenca's avatar
Pedro Cuenca committed
182
    _import_structure["latent_diffusion"].extend(["LDMTextToImagePipeline"])
183
184
185
186
187
188
    _import_structure["ledits_pp"].extend(
        [
            "LEditsPPPipelineStableDiffusion",
            "LEditsPPPipelineStableDiffusionXL",
        ]
    )
189
190
191
192
193
194
    _import_structure["marigold"].extend(
        [
            "MarigoldDepthPipeline",
            "MarigoldNormalsPipeline",
        ]
    )
Pedro Cuenca's avatar
Pedro Cuenca committed
195
196
    _import_structure["musicldm"] = ["MusicLDMPipeline"]
    _import_structure["paint_by_example"] = ["PaintByExamplePipeline"]
Dhruv Nair's avatar
Dhruv Nair committed
197
    _import_structure["pia"] = ["PIAPipeline"]
198
    _import_structure["pixart_alpha"] = ["PixArtAlphaPipeline", "PixArtSigmaPipeline"]
Pedro Cuenca's avatar
Pedro Cuenca committed
199
200
    _import_structure["semantic_stable_diffusion"] = ["SemanticStableDiffusionPipeline"]
    _import_structure["shap_e"] = ["ShapEImg2ImgPipeline", "ShapEPipeline"]
201
202
203
204
205
    _import_structure["stable_cascade"] = [
        "StableCascadeCombinedPipeline",
        "StableCascadeDecoderPipeline",
        "StableCascadePriorPipeline",
    ]
Pedro Cuenca's avatar
Pedro Cuenca committed
206
207
208
209
210
211
212
213
214
215
216
217
218
    _import_structure["stable_diffusion"].extend(
        [
            "CLIPImageProjection",
            "StableDiffusionDepth2ImgPipeline",
            "StableDiffusionImageVariationPipeline",
            "StableDiffusionImg2ImgPipeline",
            "StableDiffusionInpaintPipeline",
            "StableDiffusionInstructPix2PixPipeline",
            "StableDiffusionLatentUpscalePipeline",
            "StableDiffusionPipeline",
            "StableDiffusionUpscalePipeline",
            "StableUnCLIPImg2ImgPipeline",
            "StableUnCLIPPipeline",
219
            "StableDiffusionLDM3DPipeline",
Pedro Cuenca's avatar
Pedro Cuenca committed
220
221
        ]
    )
222
    _import_structure["stable_diffusion_attend_and_excite"] = ["StableDiffusionAttendAndExcitePipeline"]
Pedro Cuenca's avatar
Pedro Cuenca committed
223
    _import_structure["stable_diffusion_safe"] = ["StableDiffusionPipelineSafe"]
224
    _import_structure["stable_diffusion_sag"] = ["StableDiffusionSAGPipeline"]
225
226
227
228
    _import_structure["stable_diffusion_gligen"] = [
        "StableDiffusionGLIGENPipeline",
        "StableDiffusionGLIGENTextImagePipeline",
    ]
Suraj Patil's avatar
Suraj Patil committed
229
    _import_structure["stable_video_diffusion"] = ["StableVideoDiffusionPipeline"]
Pedro Cuenca's avatar
Pedro Cuenca committed
230
231
232
233
234
235
236
237
    _import_structure["stable_diffusion_xl"].extend(
        [
            "StableDiffusionXLImg2ImgPipeline",
            "StableDiffusionXLInpaintPipeline",
            "StableDiffusionXLInstructPix2PixPipeline",
            "StableDiffusionXLPipeline",
        ]
    )
238
    _import_structure["stable_diffusion_diffedit"] = ["StableDiffusionDiffEditPipeline"]
239
    _import_structure["stable_diffusion_ldm3d"] = ["StableDiffusionLDM3DPipeline"]
240
    _import_structure["stable_diffusion_panorama"] = ["StableDiffusionPanoramaPipeline"]
Suraj Patil's avatar
Suraj Patil committed
241
242
243
244
    _import_structure["t2i_adapter"] = [
        "StableDiffusionAdapterPipeline",
        "StableDiffusionXLAdapterPipeline",
    ]
Pedro Cuenca's avatar
Pedro Cuenca committed
245
246
247
    _import_structure["text_to_video_synthesis"] = [
        "TextToVideoSDPipeline",
        "TextToVideoZeroPipeline",
248
        "TextToVideoZeroSDXLPipeline",
Pedro Cuenca's avatar
Pedro Cuenca committed
249
250
        "VideoToVideoSDPipeline",
    ]
251
    _import_structure["i2vgen_xl"] = ["I2VGenXLPipeline"]
Pedro Cuenca's avatar
Pedro Cuenca committed
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
    _import_structure["unclip"] = ["UnCLIPImageVariationPipeline", "UnCLIPPipeline"]
    _import_structure["unidiffuser"] = [
        "ImageTextPipelineOutput",
        "UniDiffuserModel",
        "UniDiffuserPipeline",
        "UniDiffuserTextDecoder",
    ]
    _import_structure["wuerstchen"] = [
        "WuerstchenCombinedPipeline",
        "WuerstchenDecoderPipeline",
        "WuerstchenPriorPipeline",
    ]
try:
    if not is_onnx_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from ..utils import dummy_onnx_objects  # noqa F403

    _dummy_objects.update(get_objects_from_module(dummy_onnx_objects))
else:
    _import_structure["onnx_utils"] = ["OnnxRuntimeModel"]
try:
    if not (is_torch_available() and is_transformers_available() and is_onnx_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from ..utils import dummy_torch_and_transformers_and_onnx_objects  # noqa F403

    _dummy_objects.update(get_objects_from_module(dummy_torch_and_transformers_and_onnx_objects))
else:
    _import_structure["stable_diffusion"].extend(
        [
            "OnnxStableDiffusionImg2ImgPipeline",
            "OnnxStableDiffusionInpaintPipeline",
            "OnnxStableDiffusionPipeline",
            "OnnxStableDiffusionUpscalePipeline",
            "StableDiffusionOnnxPipeline",
        ]
    )

try:
    if not (is_torch_available() and is_transformers_available() and is_k_diffusion_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
Suraj Patil's avatar
Suraj Patil committed
295
296
297
    from ..utils import (
        dummy_torch_and_transformers_and_k_diffusion_objects,
    )
Pedro Cuenca's avatar
Pedro Cuenca committed
298
299
300

    _dummy_objects.update(get_objects_from_module(dummy_torch_and_transformers_and_k_diffusion_objects))
else:
301
302
303
304
    _import_structure["stable_diffusion_k_diffusion"] = [
        "StableDiffusionKDiffusionPipeline",
        "StableDiffusionXLKDiffusionPipeline",
    ]
Pedro Cuenca's avatar
Pedro Cuenca committed
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
try:
    if not is_flax_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from ..utils import dummy_flax_objects  # noqa F403

    _dummy_objects.update(get_objects_from_module(dummy_flax_objects))
else:
    _import_structure["pipeline_flax_utils"] = ["FlaxDiffusionPipeline"]
try:
    if not (is_flax_available() and is_transformers_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from ..utils import dummy_flax_and_transformers_objects  # noqa F403

    _dummy_objects.update(get_objects_from_module(dummy_flax_and_transformers_objects))
else:
    _import_structure["controlnet"].extend(["FlaxStableDiffusionControlNetPipeline"])
    _import_structure["stable_diffusion"].extend(
        [
            "FlaxStableDiffusionImg2ImgPipeline",
            "FlaxStableDiffusionInpaintPipeline",
            "FlaxStableDiffusionPipeline",
        ]
    )
    _import_structure["stable_diffusion_xl"].extend(
        [
            "FlaxStableDiffusionXLPipeline",
        ]
    )

336
if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT:
Pedro Cuenca's avatar
Pedro Cuenca committed
337
338
339
340
341
342
343
    try:
        if not is_torch_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        from ..utils.dummy_pt_objects import *  # noqa F403

    else:
Suraj Patil's avatar
Suraj Patil committed
344
345
346
347
348
        from .auto_pipeline import (
            AutoPipelineForImage2Image,
            AutoPipelineForInpainting,
            AutoPipelineForText2Image,
        )
Pedro Cuenca's avatar
Pedro Cuenca committed
349
350
351
352
        from .consistency_models import ConsistencyModelPipeline
        from .dance_diffusion import DanceDiffusionPipeline
        from .ddim import DDIMPipeline
        from .ddpm import DDPMPipeline
Dhruv Nair's avatar
Dhruv Nair committed
353
        from .deprecated import KarrasVePipeline, LDMPipeline, PNDMPipeline, RePaintPipeline, ScoreSdeVePipeline
Pedro Cuenca's avatar
Pedro Cuenca committed
354
355
        from .dit import DiTPipeline
        from .latent_diffusion import LDMSuperResolutionPipeline
Suraj Patil's avatar
Suraj Patil committed
356
357
358
359
        from .pipeline_utils import (
            AudioPipelineOutput,
            DiffusionPipeline,
            ImagePipelineOutput,
360
            StableDiffusionMixin,
Suraj Patil's avatar
Suraj Patil committed
361
        )
Pedro Cuenca's avatar
Pedro Cuenca committed
362
363
364
365
366
367
368

    try:
        if not (is_torch_available() and is_librosa_available()):
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        from ..utils.dummy_torch_and_librosa_objects import *
    else:
Dhruv Nair's avatar
Dhruv Nair committed
369
        from .deprecated import AudioDiffusionPipeline, Mel
Pedro Cuenca's avatar
Pedro Cuenca committed
370
371
372
373
374
375
376

    try:
        if not (is_torch_available() and is_transformers_available()):
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        from ..utils.dummy_torch_and_transformers_objects import *
    else:
Will Berman's avatar
Will Berman committed
377
        from .amused import AmusedImg2ImgPipeline, AmusedInpaintPipeline, AmusedPipeline
Aryan's avatar
Aryan committed
378
        from .animatediff import AnimateDiffPipeline, AnimateDiffSDXLPipeline, AnimateDiffVideoToVideoPipeline
Pedro Cuenca's avatar
Pedro Cuenca committed
379
        from .audioldm import AudioLDMPipeline
Suraj Patil's avatar
Suraj Patil committed
380
381
382
383
384
        from .audioldm2 import (
            AudioLDM2Pipeline,
            AudioLDM2ProjectionModel,
            AudioLDM2UNet2DConditionModel,
        )
Pedro Cuenca's avatar
Pedro Cuenca committed
385
386
387
388
389
390
391
392
393
394
        from .blip_diffusion import BlipDiffusionPipeline
        from .controlnet import (
            BlipDiffusionControlNetPipeline,
            StableDiffusionControlNetImg2ImgPipeline,
            StableDiffusionControlNetInpaintPipeline,
            StableDiffusionControlNetPipeline,
            StableDiffusionXLControlNetImg2ImgPipeline,
            StableDiffusionXLControlNetInpaintPipeline,
            StableDiffusionXLControlNetPipeline,
        )
395
396
397
398
        from .controlnet_xs import (
            StableDiffusionControlNetXSPipeline,
            StableDiffusionXLControlNetXSPipeline,
        )
Pedro Cuenca's avatar
Pedro Cuenca committed
399
400
401
402
403
404
405
406
        from .deepfloyd_if import (
            IFImg2ImgPipeline,
            IFImg2ImgSuperResolutionPipeline,
            IFInpaintingPipeline,
            IFInpaintingSuperResolutionPipeline,
            IFPipeline,
            IFSuperResolutionPipeline,
        )
Dhruv Nair's avatar
Dhruv Nair committed
407
408
409
410
411
412
413
414
415
416
417
418
419
420
        from .deprecated import (
            AltDiffusionImg2ImgPipeline,
            AltDiffusionPipeline,
            CycleDiffusionPipeline,
            StableDiffusionInpaintPipelineLegacy,
            StableDiffusionModelEditingPipeline,
            StableDiffusionParadigmsPipeline,
            StableDiffusionPix2PixZeroPipeline,
            VersatileDiffusionDualGuidedPipeline,
            VersatileDiffusionImageVariationPipeline,
            VersatileDiffusionPipeline,
            VersatileDiffusionTextToImagePipeline,
            VQDiffusionPipeline,
        )
421
        from .i2vgen_xl import I2VGenXLPipeline
Pedro Cuenca's avatar
Pedro Cuenca committed
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
        from .kandinsky import (
            KandinskyCombinedPipeline,
            KandinskyImg2ImgCombinedPipeline,
            KandinskyImg2ImgPipeline,
            KandinskyInpaintCombinedPipeline,
            KandinskyInpaintPipeline,
            KandinskyPipeline,
            KandinskyPriorPipeline,
        )
        from .kandinsky2_2 import (
            KandinskyV22CombinedPipeline,
            KandinskyV22ControlnetImg2ImgPipeline,
            KandinskyV22ControlnetPipeline,
            KandinskyV22Img2ImgCombinedPipeline,
            KandinskyV22Img2ImgPipeline,
            KandinskyV22InpaintCombinedPipeline,
            KandinskyV22InpaintPipeline,
            KandinskyV22Pipeline,
            KandinskyV22PriorEmb2EmbPipeline,
            KandinskyV22PriorPipeline,
        )
443
444
445
446
        from .kandinsky3 import (
            Kandinsky3Img2ImgPipeline,
            Kandinsky3Pipeline,
        )
Suraj Patil's avatar
Suraj Patil committed
447
448
449
450
        from .latent_consistency_models import (
            LatentConsistencyModelImg2ImgPipeline,
            LatentConsistencyModelPipeline,
        )
Pedro Cuenca's avatar
Pedro Cuenca committed
451
        from .latent_diffusion import LDMTextToImagePipeline
452
453
454
455
456
457
        from .ledits_pp import (
            LEditsPPDiffusionPipelineOutput,
            LEditsPPInversionPipelineOutput,
            LEditsPPPipelineStableDiffusion,
            LEditsPPPipelineStableDiffusionXL,
        )
458
459
460
461
        from .marigold import (
            MarigoldDepthPipeline,
            MarigoldNormalsPipeline,
        )
Pedro Cuenca's avatar
Pedro Cuenca committed
462
463
        from .musicldm import MusicLDMPipeline
        from .paint_by_example import PaintByExamplePipeline
Dhruv Nair's avatar
Dhruv Nair committed
464
        from .pia import PIAPipeline
465
        from .pixart_alpha import PixArtAlphaPipeline, PixArtSigmaPipeline
Pedro Cuenca's avatar
Pedro Cuenca committed
466
467
        from .semantic_stable_diffusion import SemanticStableDiffusionPipeline
        from .shap_e import ShapEImg2ImgPipeline, ShapEPipeline
468
469
470
471
472
        from .stable_cascade import (
            StableCascadeCombinedPipeline,
            StableCascadeDecoderPipeline,
            StableCascadePriorPipeline,
        )
Pedro Cuenca's avatar
Pedro Cuenca committed
473
474
475
476
477
478
479
480
481
482
483
484
485
        from .stable_diffusion import (
            CLIPImageProjection,
            StableDiffusionDepth2ImgPipeline,
            StableDiffusionImageVariationPipeline,
            StableDiffusionImg2ImgPipeline,
            StableDiffusionInpaintPipeline,
            StableDiffusionInstructPix2PixPipeline,
            StableDiffusionLatentUpscalePipeline,
            StableDiffusionPipeline,
            StableDiffusionUpscalePipeline,
            StableUnCLIPImg2ImgPipeline,
            StableUnCLIPPipeline,
        )
486
        from .stable_diffusion_attend_and_excite import StableDiffusionAttendAndExcitePipeline
487
        from .stable_diffusion_diffedit import StableDiffusionDiffEditPipeline
488
        from .stable_diffusion_gligen import StableDiffusionGLIGENPipeline, StableDiffusionGLIGENTextImagePipeline
489
        from .stable_diffusion_ldm3d import StableDiffusionLDM3DPipeline
490
        from .stable_diffusion_panorama import StableDiffusionPanoramaPipeline
Pedro Cuenca's avatar
Pedro Cuenca committed
491
        from .stable_diffusion_safe import StableDiffusionPipelineSafe
492
        from .stable_diffusion_sag import StableDiffusionSAGPipeline
Pedro Cuenca's avatar
Pedro Cuenca committed
493
494
495
496
497
498
        from .stable_diffusion_xl import (
            StableDiffusionXLImg2ImgPipeline,
            StableDiffusionXLInpaintPipeline,
            StableDiffusionXLInstructPix2PixPipeline,
            StableDiffusionXLPipeline,
        )
Suraj Patil's avatar
Suraj Patil committed
499
500
501
502
503
        from .stable_video_diffusion import StableVideoDiffusionPipeline
        from .t2i_adapter import (
            StableDiffusionAdapterPipeline,
            StableDiffusionXLAdapterPipeline,
        )
Pedro Cuenca's avatar
Pedro Cuenca committed
504
505
506
        from .text_to_video_synthesis import (
            TextToVideoSDPipeline,
            TextToVideoZeroPipeline,
507
            TextToVideoZeroSDXLPipeline,
Pedro Cuenca's avatar
Pedro Cuenca committed
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
            VideoToVideoSDPipeline,
        )
        from .unclip import UnCLIPImageVariationPipeline, UnCLIPPipeline
        from .unidiffuser import (
            ImageTextPipelineOutput,
            UniDiffuserModel,
            UniDiffuserPipeline,
            UniDiffuserTextDecoder,
        )
        from .wuerstchen import (
            WuerstchenCombinedPipeline,
            WuerstchenDecoderPipeline,
            WuerstchenPriorPipeline,
        )

        try:
            if not is_onnx_available():
                raise OptionalDependencyNotAvailable()
        except OptionalDependencyNotAvailable:
            from ..utils.dummy_onnx_objects import *  # noqa F403

        else:
            from .onnx_utils import OnnxRuntimeModel

        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 *
        else:
            from .stable_diffusion import (
                OnnxStableDiffusionImg2ImgPipeline,
                OnnxStableDiffusionInpaintPipeline,
                OnnxStableDiffusionPipeline,
                OnnxStableDiffusionUpscalePipeline,
                StableDiffusionOnnxPipeline,
            )

        try:
            if not (is_torch_available() and is_transformers_available() and is_k_diffusion_available()):
                raise OptionalDependencyNotAvailable()
        except OptionalDependencyNotAvailable:
            from ..utils.dummy_torch_and_transformers_and_k_diffusion_objects import *
        else:
552
553
554
555
            from .stable_diffusion_k_diffusion import (
                StableDiffusionKDiffusionPipeline,
                StableDiffusionXLKDiffusionPipeline,
            )
Pedro Cuenca's avatar
Pedro Cuenca committed
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587

        try:
            if not is_flax_available():
                raise OptionalDependencyNotAvailable()
        except OptionalDependencyNotAvailable:
            from ..utils.dummy_flax_objects import *  # noqa F403
        else:
            from .pipeline_flax_utils import FlaxDiffusionPipeline

        try:
            if not (is_flax_available() and is_transformers_available()):
                raise OptionalDependencyNotAvailable()
        except OptionalDependencyNotAvailable:
            from ..utils.dummy_flax_and_transformers_objects import *
        else:
            from .controlnet import FlaxStableDiffusionControlNetPipeline
            from .stable_diffusion import (
                FlaxStableDiffusionImg2ImgPipeline,
                FlaxStableDiffusionInpaintPipeline,
                FlaxStableDiffusionPipeline,
            )
            from .stable_diffusion_xl import (
                FlaxStableDiffusionXLPipeline,
            )

        try:
            if not (is_transformers_available() and is_torch_available() and is_note_seq_available()):
                raise OptionalDependencyNotAvailable()
        except OptionalDependencyNotAvailable:
            from ..utils.dummy_transformers_and_torch_and_note_seq_objects import *  # noqa F403

        else:
Dhruv Nair's avatar
Dhruv Nair committed
588
            from .deprecated import (
Suraj Patil's avatar
Suraj Patil committed
589
590
591
                MidiProcessor,
                SpectrogramDiffusionPipeline,
            )
Pedro Cuenca's avatar
Pedro Cuenca committed
592
593
594
595
596
597
598
599
600
601
602
603

else:
    import sys

    sys.modules[__name__] = _LazyModule(
        __name__,
        globals()["__file__"],
        _import_structure,
        module_spec=__spec__,
    )
    for name, value in _dummy_objects.items():
        setattr(sys.modules[__name__], name, value)