"src/vscode:/vscode.git/clone" did not exist on "71ecc7aed87718d8383acae71c29aab2008a26a2"
__init__.py 38.8 KB
Newer Older
1
__version__ = "0.33.0.dev0"
2

Dhruv Nair's avatar
Dhruv Nair committed
3
4
from typing import TYPE_CHECKING

5
from .utils import (
6
    DIFFUSERS_SLOW_IMPORT,
7
    OptionalDependencyNotAvailable,
Dhruv Nair's avatar
Dhruv Nair committed
8
    _LazyModule,
9
    is_flax_available,
10
    is_k_diffusion_available,
11
    is_librosa_available,
12
    is_note_seq_available,
13
14
    is_onnx_available,
    is_scipy_available,
15
    is_sentencepiece_available,
16
    is_torch_available,
17
    is_torchsde_available,
18
19
    is_transformers_available,
)
Patrick von Platen's avatar
Patrick von Platen committed
20
21


Dhruv Nair's avatar
Dhruv Nair committed
22
23
24
25
26
27
28
29
30
# Lazy Import based on
# https://github.com/huggingface/transformers/blob/main/src/transformers/__init__.py

# When adding a new object to this init, please add it to `_import_structure`. The `_import_structure` is a dictionary submodule to list of object names,
# and is used to defer the actual importing for when the objects are requested.
# This way `import diffusers` provides the names in the namespace without actually importing anything (and especially none of the backends).

_import_structure = {
    "configuration_utils": ["ConfigMixin"],
31
    "hooks": [],
32
    "loaders": ["FromOriginalModelMixin"],
Dhruv Nair's avatar
Dhruv Nair committed
33
34
    "models": [],
    "pipelines": [],
35
    "quantizers.quantization_config": ["BitsAndBytesConfig", "GGUFQuantizationConfig", "TorchAoConfig"],
Dhruv Nair's avatar
Dhruv Nair committed
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
    "schedulers": [],
    "utils": [
        "OptionalDependencyNotAvailable",
        "is_flax_available",
        "is_inflect_available",
        "is_invisible_watermark_available",
        "is_k_diffusion_available",
        "is_k_diffusion_version",
        "is_librosa_available",
        "is_note_seq_available",
        "is_onnx_available",
        "is_scipy_available",
        "is_torch_available",
        "is_torchsde_available",
        "is_transformers_available",
        "is_transformers_version",
        "is_unidecode_available",
        "logging",
    ],
}

57
58
59
60
try:
    if not is_onnx_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
Dhruv Nair's avatar
Dhruv Nair committed
61
62
63
64
65
66
    from .utils import dummy_onnx_objects  # noqa F403

    _import_structure["utils.dummy_onnx_objects"] = [
        name for name in dir(dummy_onnx_objects) if not name.startswith("_")
    ]

67
else:
Dhruv Nair's avatar
Dhruv Nair committed
68
    _import_structure["pipelines"].extend(["OnnxRuntimeModel"])
69

70
71
72
73
try:
    if not is_torch_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
Dhruv Nair's avatar
Dhruv Nair committed
74
75
76
77
    from .utils import dummy_pt_objects  # noqa F403

    _import_structure["utils.dummy_pt_objects"] = [name for name in dir(dummy_pt_objects) if not name.startswith("_")]

78
else:
79
80
81
82
83
84
85
    _import_structure["hooks"].extend(
        [
            "HookRegistry",
            "PyramidAttentionBroadcastConfig",
            "apply_pyramid_attention_broadcast",
        ]
    )
Dhruv Nair's avatar
Dhruv Nair committed
86
87
    _import_structure["models"].extend(
        [
Aryan's avatar
Aryan committed
88
            "AllegroTransformer3DModel",
Dhruv Nair's avatar
Dhruv Nair committed
89
            "AsymmetricAutoencoderKL",
Sayak Paul's avatar
Sayak Paul committed
90
            "AuraFlowTransformer2DModel",
91
            "AutoencoderDC",
Dhruv Nair's avatar
Dhruv Nair committed
92
            "AutoencoderKL",
Aryan's avatar
Aryan committed
93
            "AutoencoderKLAllegro",
94
            "AutoencoderKLCogVideoX",
Aryan's avatar
Aryan committed
95
            "AutoencoderKLHunyuanVideo",
Aryan's avatar
Aryan committed
96
            "AutoencoderKLLTXVideo",
Aryan's avatar
Aryan committed
97
            "AutoencoderKLMochi",
Suraj Patil's avatar
Suraj Patil committed
98
            "AutoencoderKLTemporalDecoder",
99
            "AutoencoderKLWan",
100
            "AutoencoderOobleck",
Dhruv Nair's avatar
Dhruv Nair committed
101
            "AutoencoderTiny",
102
            "CacheMixin",
103
            "CogVideoXTransformer3DModel",
Yuxuan.Zhang's avatar
Yuxuan.Zhang committed
104
            "CogView3PlusTransformer2DModel",
105
            "CogView4Transformer2DModel",
Shenghai Yuan's avatar
Shenghai Yuan committed
106
            "ConsisIDTransformer3DModel",
Will Berman's avatar
Will Berman committed
107
            "ConsistencyDecoderVAE",
Dhruv Nair's avatar
Dhruv Nair committed
108
            "ControlNetModel",
hlky's avatar
hlky committed
109
            "ControlNetUnionModel",
110
            "ControlNetXSAdapter",
111
            "DiTTransformer2DModel",
王奇勋's avatar
王奇勋 committed
112
            "FluxControlNetModel",
113
            "FluxMultiControlNetModel",
Sayak Paul's avatar
Sayak Paul committed
114
            "FluxTransformer2DModel",
115
            "HunyuanDiT2DControlNetModel",
116
            "HunyuanDiT2DModel",
117
            "HunyuanDiT2DMultiControlNetModel",
Aryan's avatar
Aryan committed
118
            "HunyuanVideoTransformer3DModel",
119
            "I2VGenXLUNet",
120
            "Kandinsky3UNet",
121
            "LatteTransformer3DModel",
Aryan's avatar
Aryan committed
122
            "LTXVideoTransformer3DModel",
Le Zhuo's avatar
Le Zhuo committed
123
            "Lumina2Transformer2DModel",
124
            "LuminaNextDiT2DModel",
Aryan's avatar
Aryan committed
125
            "MochiTransformer3DModel",
Dhruv Nair's avatar
Dhruv Nair committed
126
            "ModelMixin",
Dhruv Nair's avatar
Dhruv Nair committed
127
            "MotionAdapter",
Dhruv Nair's avatar
Dhruv Nair committed
128
            "MultiAdapter",
129
            "MultiControlNetModel",
Shitao Xiao's avatar
Shitao Xiao committed
130
            "OmniGenTransformer2DModel",
131
            "PixArtTransformer2DModel",
Dhruv Nair's avatar
Dhruv Nair committed
132
            "PriorTransformer",
133
            "SanaTransformer2DModel",
134
135
            "SD3ControlNetModel",
            "SD3MultiControlNetModel",
Dhruv Nair's avatar
Dhruv Nair committed
136
            "SD3Transformer2DModel",
Aryan's avatar
Aryan committed
137
            "SparseControlNetModel",
138
            "StableAudioDiTModel",
139
            "StableCascadeUNet",
Dhruv Nair's avatar
Dhruv Nair committed
140
141
142
143
144
145
146
            "T2IAdapter",
            "T5FilmDecoder",
            "Transformer2DModel",
            "UNet1DModel",
            "UNet2DConditionModel",
            "UNet2DModel",
            "UNet3DConditionModel",
147
            "UNetControlNetXSModel",
Dhruv Nair's avatar
Dhruv Nair committed
148
            "UNetMotionModel",
Suraj Patil's avatar
Suraj Patil committed
149
            "UNetSpatioTemporalConditionModel",
Will Berman's avatar
Will Berman committed
150
            "UVit2DModel",
Dhruv Nair's avatar
Dhruv Nair committed
151
            "VQModel",
152
            "WanTransformer3DModel",
Dhruv Nair's avatar
Dhruv Nair committed
153
        ]
154
    )
Dhruv Nair's avatar
Dhruv Nair committed
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
    _import_structure["optimization"] = [
        "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",
    ]
    _import_structure["pipelines"].extend(
        [
            "AudioPipelineOutput",
            "AutoPipelineForImage2Image",
            "AutoPipelineForInpainting",
            "AutoPipelineForText2Image",
            "ConsistencyModelPipeline",
            "DanceDiffusionPipeline",
            "DDIMPipeline",
            "DDPMPipeline",
            "DiffusionPipeline",
            "DiTPipeline",
            "ImagePipelineOutput",
            "KarrasVePipeline",
            "LDMPipeline",
            "LDMSuperResolutionPipeline",
            "PNDMPipeline",
            "RePaintPipeline",
            "ScoreSdeVePipeline",
183
            "StableDiffusionMixin",
Dhruv Nair's avatar
Dhruv Nair committed
184
        ]
185
    )
186
    _import_structure["quantizers"] = ["DiffusersQuantizer"]
Dhruv Nair's avatar
Dhruv Nair committed
187
188
    _import_structure["schedulers"].extend(
        [
Will Berman's avatar
Will Berman committed
189
            "AmusedScheduler",
Dhruv Nair's avatar
Dhruv Nair committed
190
            "CMStochasticIterativeScheduler",
191
192
            "CogVideoXDDIMScheduler",
            "CogVideoXDPMScheduler",
Dhruv Nair's avatar
Dhruv Nair committed
193
194
195
196
197
198
199
200
201
202
            "DDIMInverseScheduler",
            "DDIMParallelScheduler",
            "DDIMScheduler",
            "DDPMParallelScheduler",
            "DDPMScheduler",
            "DDPMWuerstchenScheduler",
            "DEISMultistepScheduler",
            "DPMSolverMultistepInverseScheduler",
            "DPMSolverMultistepScheduler",
            "DPMSolverSinglestepScheduler",
203
            "EDMDPMSolverMultistepScheduler",
Suraj Patil's avatar
Suraj Patil committed
204
            "EDMEulerScheduler",
Dhruv Nair's avatar
Dhruv Nair committed
205
206
            "EulerAncestralDiscreteScheduler",
            "EulerDiscreteScheduler",
Dhruv Nair's avatar
Dhruv Nair committed
207
            "FlowMatchEulerDiscreteScheduler",
208
            "FlowMatchHeunDiscreteScheduler",
Dhruv Nair's avatar
Dhruv Nair committed
209
210
211
212
213
            "HeunDiscreteScheduler",
            "IPNDMScheduler",
            "KarrasVeScheduler",
            "KDPM2AncestralDiscreteScheduler",
            "KDPM2DiscreteScheduler",
214
            "LCMScheduler",
Dhruv Nair's avatar
Dhruv Nair committed
215
216
            "PNDMScheduler",
            "RePaintScheduler",
Junsong Chen's avatar
Junsong Chen committed
217
            "SASolverScheduler",
Dhruv Nair's avatar
Dhruv Nair committed
218
219
            "SchedulerMixin",
            "ScoreSdeVeScheduler",
Michael's avatar
Michael committed
220
            "TCDScheduler",
Dhruv Nair's avatar
Dhruv Nair committed
221
222
223
224
            "UnCLIPScheduler",
            "UniPCMultistepScheduler",
            "VQDiffusionScheduler",
        ]
225
    )
Dhruv Nair's avatar
Dhruv Nair committed
226
    _import_structure["training_utils"] = ["EMAModel"]
Patrick von Platen's avatar
Patrick von Platen committed
227

228
229
230
231
try:
    if not (is_torch_available() and is_scipy_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
Dhruv Nair's avatar
Dhruv Nair committed
232
233
234
235
236
237
    from .utils import dummy_torch_and_scipy_objects  # noqa F403

    _import_structure["utils.dummy_torch_and_scipy_objects"] = [
        name for name in dir(dummy_torch_and_scipy_objects) if not name.startswith("_")
    ]

238
else:
Dhruv Nair's avatar
Dhruv Nair committed
239
    _import_structure["schedulers"].extend(["LMSDiscreteScheduler"])
Patrick von Platen's avatar
Patrick von Platen committed
240

241
242
243
244
try:
    if not (is_torch_available() and is_torchsde_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
Dhruv Nair's avatar
Dhruv Nair committed
245
246
247
248
249
250
    from .utils import dummy_torch_and_torchsde_objects  # noqa F403

    _import_structure["utils.dummy_torch_and_torchsde_objects"] = [
        name for name in dir(dummy_torch_and_torchsde_objects) if not name.startswith("_")
    ]

251
else:
252
    _import_structure["schedulers"].extend(["CosineDPMSolverMultistepScheduler", "DPMSolverSDEScheduler"])
253
254
255
256
257

try:
    if not (is_torch_available() and is_transformers_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
Dhruv Nair's avatar
Dhruv Nair committed
258
259
260
261
262
263
    from .utils import dummy_torch_and_transformers_objects  # noqa F403

    _import_structure["utils.dummy_torch_and_transformers_objects"] = [
        name for name in dir(dummy_torch_and_transformers_objects) if not name.startswith("_")
    ]

264
else:
Dhruv Nair's avatar
Dhruv Nair committed
265
266
    _import_structure["pipelines"].extend(
        [
Aryan's avatar
Aryan committed
267
            "AllegroPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
268
269
            "AltDiffusionImg2ImgPipeline",
            "AltDiffusionPipeline",
Will Berman's avatar
Will Berman committed
270
271
272
            "AmusedImg2ImgPipeline",
            "AmusedInpaintPipeline",
            "AmusedPipeline",
273
            "AnimateDiffControlNetPipeline",
Aryan's avatar
Aryan committed
274
            "AnimateDiffPAGPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
275
            "AnimateDiffPipeline",
Aryan's avatar
Aryan committed
276
            "AnimateDiffSDXLPipeline",
Aryan's avatar
Aryan committed
277
            "AnimateDiffSparseControlNetPipeline",
278
            "AnimateDiffVideoToVideoControlNetPipeline",
Aryan V S's avatar
Aryan V S committed
279
            "AnimateDiffVideoToVideoPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
280
281
282
283
            "AudioLDM2Pipeline",
            "AudioLDM2ProjectionModel",
            "AudioLDM2UNet2DConditionModel",
            "AudioLDMPipeline",
Sayak Paul's avatar
Sayak Paul committed
284
            "AuraFlowPipeline",
Ayush Mangal's avatar
Ayush Mangal committed
285
286
            "BlipDiffusionControlNetPipeline",
            "BlipDiffusionPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
287
            "CLIPImageProjection",
288
            "CogVideoXFunControlPipeline",
289
            "CogVideoXImageToVideoPipeline",
290
            "CogVideoXPipeline",
291
            "CogVideoXVideoToVideoPipeline",
Yuxuan.Zhang's avatar
Yuxuan.Zhang committed
292
            "CogView3PlusPipeline",
293
            "CogView4Pipeline",
Shenghai Yuan's avatar
Shenghai Yuan committed
294
            "ConsisIDPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
295
            "CycleDiffusionPipeline",
Aryan's avatar
Aryan committed
296
            "FluxControlImg2ImgPipeline",
297
            "FluxControlInpaintPipeline",
298
299
            "FluxControlNetImg2ImgPipeline",
            "FluxControlNetInpaintPipeline",
王奇勋's avatar
王奇勋 committed
300
            "FluxControlNetPipeline",
Aryan's avatar
Aryan committed
301
302
            "FluxControlPipeline",
            "FluxFillPipeline",
303
304
            "FluxImg2ImgPipeline",
            "FluxInpaintPipeline",
Sayak Paul's avatar
Sayak Paul committed
305
            "FluxPipeline",
Aryan's avatar
Aryan committed
306
            "FluxPriorReduxPipeline",
307
            "HunyuanDiTControlNetPipeline",
308
            "HunyuanDiTPAGPipeline",
309
            "HunyuanDiTPipeline",
Aryan's avatar
Aryan committed
310
            "HunyuanSkyreelsImageToVideoPipeline",
Aryan's avatar
Aryan committed
311
            "HunyuanVideoPipeline",
312
            "I2VGenXLPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
313
314
315
316
317
318
319
            "IFImg2ImgPipeline",
            "IFImg2ImgSuperResolutionPipeline",
            "IFInpaintingPipeline",
            "IFInpaintingSuperResolutionPipeline",
            "IFPipeline",
            "IFSuperResolutionPipeline",
            "ImageTextPipelineOutput",
320
321
            "Kandinsky3Img2ImgPipeline",
            "Kandinsky3Pipeline",
Dhruv Nair's avatar
Dhruv Nair committed
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
            "KandinskyCombinedPipeline",
            "KandinskyImg2ImgCombinedPipeline",
            "KandinskyImg2ImgPipeline",
            "KandinskyInpaintCombinedPipeline",
            "KandinskyInpaintPipeline",
            "KandinskyPipeline",
            "KandinskyPriorPipeline",
            "KandinskyV22CombinedPipeline",
            "KandinskyV22ControlnetImg2ImgPipeline",
            "KandinskyV22ControlnetPipeline",
            "KandinskyV22Img2ImgCombinedPipeline",
            "KandinskyV22Img2ImgPipeline",
            "KandinskyV22InpaintCombinedPipeline",
            "KandinskyV22InpaintPipeline",
            "KandinskyV22Pipeline",
            "KandinskyV22PriorEmb2EmbPipeline",
            "KandinskyV22PriorPipeline",
339
            "LatentConsistencyModelImg2ImgPipeline",
340
            "LatentConsistencyModelPipeline",
341
            "LattePipeline",
Dhruv Nair's avatar
Dhruv Nair committed
342
            "LDMTextToImagePipeline",
343
344
            "LEditsPPPipelineStableDiffusion",
            "LEditsPPPipelineStableDiffusionXL",
Aryan's avatar
Aryan committed
345
346
            "LTXImageToVideoPipeline",
            "LTXPipeline",
Le Zhuo's avatar
Le Zhuo committed
347
            "Lumina2Text2ImgPipeline",
348
            "LuminaText2ImgPipeline",
349
            "MarigoldDepthPipeline",
350
            "MarigoldIntrinsicsPipeline",
351
            "MarigoldNormalsPipeline",
Aryan's avatar
Aryan committed
352
            "MochiPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
353
            "MusicLDMPipeline",
Shitao Xiao's avatar
Shitao Xiao committed
354
            "OmniGenPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
355
            "PaintByExamplePipeline",
Dhruv Nair's avatar
Dhruv Nair committed
356
            "PIAPipeline",
Sayak Paul's avatar
Sayak Paul committed
357
            "PixArtAlphaPipeline",
358
            "PixArtSigmaPAGPipeline",
359
            "PixArtSigmaPipeline",
Aryan's avatar
Aryan committed
360
            "ReduxImageEncoder",
361
362
            "SanaPAGPipeline",
            "SanaPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
363
364
365
            "SemanticStableDiffusionPipeline",
            "ShapEImg2ImgPipeline",
            "ShapEPipeline",
366
367
            "StableAudioPipeline",
            "StableAudioProjectionModel",
368
369
370
            "StableCascadeCombinedPipeline",
            "StableCascadeDecoderPipeline",
            "StableCascadePriorPipeline",
371
            "StableDiffusion3ControlNetInpaintingPipeline",
372
            "StableDiffusion3ControlNetPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
373
            "StableDiffusion3Img2ImgPipeline",
374
            "StableDiffusion3InpaintPipeline",
375
            "StableDiffusion3PAGImg2ImgPipeline",
376
            "StableDiffusion3PAGImg2ImgPipeline",
StAlKeR7779's avatar
StAlKeR7779 committed
377
            "StableDiffusion3PAGPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
378
            "StableDiffusion3Pipeline",
Dhruv Nair's avatar
Dhruv Nair committed
379
380
381
382
            "StableDiffusionAdapterPipeline",
            "StableDiffusionAttendAndExcitePipeline",
            "StableDiffusionControlNetImg2ImgPipeline",
            "StableDiffusionControlNetInpaintPipeline",
383
            "StableDiffusionControlNetPAGInpaintPipeline",
384
            "StableDiffusionControlNetPAGPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
385
            "StableDiffusionControlNetPipeline",
386
            "StableDiffusionControlNetXSPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
387
388
389
390
391
392
393
394
395
396
397
398
            "StableDiffusionDepth2ImgPipeline",
            "StableDiffusionDiffEditPipeline",
            "StableDiffusionGLIGENPipeline",
            "StableDiffusionGLIGENTextImagePipeline",
            "StableDiffusionImageVariationPipeline",
            "StableDiffusionImg2ImgPipeline",
            "StableDiffusionInpaintPipeline",
            "StableDiffusionInpaintPipelineLegacy",
            "StableDiffusionInstructPix2PixPipeline",
            "StableDiffusionLatentUpscalePipeline",
            "StableDiffusionLDM3DPipeline",
            "StableDiffusionModelEditingPipeline",
399
            "StableDiffusionPAGImg2ImgPipeline",
400
            "StableDiffusionPAGInpaintPipeline",
401
            "StableDiffusionPAGPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
402
403
404
405
406
407
408
409
410
411
            "StableDiffusionPanoramaPipeline",
            "StableDiffusionParadigmsPipeline",
            "StableDiffusionPipeline",
            "StableDiffusionPipelineSafe",
            "StableDiffusionPix2PixZeroPipeline",
            "StableDiffusionSAGPipeline",
            "StableDiffusionUpscalePipeline",
            "StableDiffusionXLAdapterPipeline",
            "StableDiffusionXLControlNetImg2ImgPipeline",
            "StableDiffusionXLControlNetInpaintPipeline",
412
            "StableDiffusionXLControlNetPAGImg2ImgPipeline",
YiYi Xu's avatar
YiYi Xu committed
413
            "StableDiffusionXLControlNetPAGPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
414
            "StableDiffusionXLControlNetPipeline",
hlky's avatar
hlky committed
415
416
417
            "StableDiffusionXLControlNetUnionImg2ImgPipeline",
            "StableDiffusionXLControlNetUnionInpaintPipeline",
            "StableDiffusionXLControlNetUnionPipeline",
418
            "StableDiffusionXLControlNetXSPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
419
420
421
            "StableDiffusionXLImg2ImgPipeline",
            "StableDiffusionXLInpaintPipeline",
            "StableDiffusionXLInstructPix2PixPipeline",
YiYi Xu's avatar
YiYi Xu committed
422
423
424
            "StableDiffusionXLPAGImg2ImgPipeline",
            "StableDiffusionXLPAGInpaintPipeline",
            "StableDiffusionXLPAGPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
425
426
427
            "StableDiffusionXLPipeline",
            "StableUnCLIPImg2ImgPipeline",
            "StableUnCLIPPipeline",
Suraj Patil's avatar
Suraj Patil committed
428
            "StableVideoDiffusionPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
429
430
            "TextToVideoSDPipeline",
            "TextToVideoZeroPipeline",
431
            "TextToVideoZeroSDXLPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
432
433
434
435
436
437
438
439
440
441
442
            "UnCLIPImageVariationPipeline",
            "UnCLIPPipeline",
            "UniDiffuserModel",
            "UniDiffuserPipeline",
            "UniDiffuserTextDecoder",
            "VersatileDiffusionDualGuidedPipeline",
            "VersatileDiffusionImageVariationPipeline",
            "VersatileDiffusionPipeline",
            "VersatileDiffusionTextToImagePipeline",
            "VideoToVideoSDPipeline",
            "VQDiffusionPipeline",
443
444
            "WanImageToVideoPipeline",
            "WanPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
445
446
447
448
            "WuerstchenCombinedPipeline",
            "WuerstchenDecoderPipeline",
            "WuerstchenPriorPipeline",
        ]
449
    )
450

451
452
453
454
try:
    if not (is_torch_available() and is_transformers_available() and is_k_diffusion_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
Dhruv Nair's avatar
Dhruv Nair committed
455
456
457
458
459
460
    from .utils import dummy_torch_and_transformers_and_k_diffusion_objects  # noqa F403

    _import_structure["utils.dummy_torch_and_transformers_and_k_diffusion_objects"] = [
        name for name in dir(dummy_torch_and_transformers_and_k_diffusion_objects) if not name.startswith("_")
    ]

461
else:
462
    _import_structure["pipelines"].extend(["StableDiffusionKDiffusionPipeline", "StableDiffusionXLKDiffusionPipeline"])
463

464
465
466
467
468
469
470
471
472
473
474
try:
    if not (is_torch_available() and is_transformers_available() and is_sentencepiece_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from .utils import dummy_torch_and_transformers_and_sentencepiece_objects  # noqa F403

    _import_structure["utils.dummy_torch_and_transformers_and_sentencepiece_objects"] = [
        name for name in dir(dummy_torch_and_transformers_and_sentencepiece_objects) if not name.startswith("_")
    ]

else:
Álvaro Somoza's avatar
Álvaro Somoza committed
475
    _import_structure["pipelines"].extend(["KolorsImg2ImgPipeline", "KolorsPAGPipeline", "KolorsPipeline"])
476

477
478
479
480
try:
    if not (is_torch_available() and is_transformers_available() and is_onnx_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
Dhruv Nair's avatar
Dhruv Nair committed
481
482
483
484
485
486
    from .utils import dummy_torch_and_transformers_and_onnx_objects  # noqa F403

    _import_structure["utils.dummy_torch_and_transformers_and_onnx_objects"] = [
        name for name in dir(dummy_torch_and_transformers_and_onnx_objects) if not name.startswith("_")
    ]

487
else:
Dhruv Nair's avatar
Dhruv Nair committed
488
489
490
491
492
493
494
495
496
    _import_structure["pipelines"].extend(
        [
            "OnnxStableDiffusionImg2ImgPipeline",
            "OnnxStableDiffusionInpaintPipeline",
            "OnnxStableDiffusionInpaintPipelineLegacy",
            "OnnxStableDiffusionPipeline",
            "OnnxStableDiffusionUpscalePipeline",
            "StableDiffusionOnnxPipeline",
        ]
497
    )
498
499
500
501
502

try:
    if not (is_torch_available() and is_librosa_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
Dhruv Nair's avatar
Dhruv Nair committed
503
504
505
506
507
508
    from .utils import dummy_torch_and_librosa_objects  # noqa F403

    _import_structure["utils.dummy_torch_and_librosa_objects"] = [
        name for name in dir(dummy_torch_and_librosa_objects) if not name.startswith("_")
    ]

509
else:
Dhruv Nair's avatar
Dhruv Nair committed
510
    _import_structure["pipelines"].extend(["AudioDiffusionPipeline", "Mel"])
511

512
try:
513
    if not (is_transformers_available() and is_torch_available() and is_note_seq_available()):
514
515
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
Dhruv Nair's avatar
Dhruv Nair committed
516
517
518
519
520
521
522
    from .utils import dummy_transformers_and_torch_and_note_seq_objects  # noqa F403

    _import_structure["utils.dummy_transformers_and_torch_and_note_seq_objects"] = [
        name for name in dir(dummy_transformers_and_torch_and_note_seq_objects) if not name.startswith("_")
    ]


523
else:
Dhruv Nair's avatar
Dhruv Nair committed
524
    _import_structure["pipelines"].extend(["SpectrogramDiffusionPipeline"])
525

526
527
528
529
try:
    if not is_flax_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
Dhruv Nair's avatar
Dhruv Nair committed
530
531
532
533
534
535
536
    from .utils import dummy_flax_objects  # noqa F403

    _import_structure["utils.dummy_flax_objects"] = [
        name for name in dir(dummy_flax_objects) if not name.startswith("_")
    ]


537
else:
538
    _import_structure["models.controlnets.controlnet_flax"] = ["FlaxControlNetModel"]
Dhruv Nair's avatar
Dhruv Nair committed
539
    _import_structure["models.modeling_flax_utils"] = ["FlaxModelMixin"]
540
    _import_structure["models.unets.unet_2d_condition_flax"] = ["FlaxUNet2DConditionModel"]
Dhruv Nair's avatar
Dhruv Nair committed
541
542
543
544
545
546
547
    _import_structure["models.vae_flax"] = ["FlaxAutoencoderKL"]
    _import_structure["pipelines"].extend(["FlaxDiffusionPipeline"])
    _import_structure["schedulers"].extend(
        [
            "FlaxDDIMScheduler",
            "FlaxDDPMScheduler",
            "FlaxDPMSolverMultistepScheduler",
Pedro Cuenca's avatar
Pedro Cuenca committed
548
            "FlaxEulerDiscreteScheduler",
Dhruv Nair's avatar
Dhruv Nair committed
549
550
551
552
553
554
            "FlaxKarrasVeScheduler",
            "FlaxLMSDiscreteScheduler",
            "FlaxPNDMScheduler",
            "FlaxSchedulerMixin",
            "FlaxScoreSdeVeScheduler",
        ]
555
556
    )

557

558
559
560
561
try:
    if not (is_flax_available() and is_transformers_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
Dhruv Nair's avatar
Dhruv Nair committed
562
563
564
565
566
567
568
    from .utils import dummy_flax_and_transformers_objects  # noqa F403

    _import_structure["utils.dummy_flax_and_transformers_objects"] = [
        name for name in dir(dummy_flax_and_transformers_objects) if not name.startswith("_")
    ]


569
else:
Dhruv Nair's avatar
Dhruv Nair committed
570
571
572
573
574
575
    _import_structure["pipelines"].extend(
        [
            "FlaxStableDiffusionControlNetPipeline",
            "FlaxStableDiffusionImg2ImgPipeline",
            "FlaxStableDiffusionInpaintPipeline",
            "FlaxStableDiffusionPipeline",
Pedro Cuenca's avatar
Pedro Cuenca committed
576
            "FlaxStableDiffusionXLPipeline",
Dhruv Nair's avatar
Dhruv Nair committed
577
        ]
578
    )
579
580
581
582
583

try:
    if not (is_note_seq_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
Dhruv Nair's avatar
Dhruv Nair committed
584
585
586
587
588
589
590
    from .utils import dummy_note_seq_objects  # noqa F403

    _import_structure["utils.dummy_note_seq_objects"] = [
        name for name in dir(dummy_note_seq_objects) if not name.startswith("_")
    ]


591
else:
Dhruv Nair's avatar
Dhruv Nair committed
592
593
    _import_structure["pipelines"].extend(["MidiProcessor"])

594
if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT:
Dhruv Nair's avatar
Dhruv Nair committed
595
    from .configuration_utils import ConfigMixin
596
    from .quantizers.quantization_config import BitsAndBytesConfig, GGUFQuantizationConfig, TorchAoConfig
Dhruv Nair's avatar
Dhruv Nair committed
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611

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

    try:
        if not is_torch_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        from .utils.dummy_pt_objects import *  # noqa F403
    else:
612
        from .hooks import HookRegistry, PyramidAttentionBroadcastConfig, apply_pyramid_attention_broadcast
Dhruv Nair's avatar
Dhruv Nair committed
613
        from .models import (
Aryan's avatar
Aryan committed
614
            AllegroTransformer3DModel,
Dhruv Nair's avatar
Dhruv Nair committed
615
            AsymmetricAutoencoderKL,
Sayak Paul's avatar
Sayak Paul committed
616
            AuraFlowTransformer2DModel,
617
            AutoencoderDC,
Dhruv Nair's avatar
Dhruv Nair committed
618
            AutoencoderKL,
Aryan's avatar
Aryan committed
619
            AutoencoderKLAllegro,
620
            AutoencoderKLCogVideoX,
Aryan's avatar
Aryan committed
621
            AutoencoderKLHunyuanVideo,
Aryan's avatar
Aryan committed
622
            AutoencoderKLLTXVideo,
Aryan's avatar
Aryan committed
623
            AutoencoderKLMochi,
Suraj Patil's avatar
Suraj Patil committed
624
            AutoencoderKLTemporalDecoder,
625
            AutoencoderKLWan,
626
            AutoencoderOobleck,
Dhruv Nair's avatar
Dhruv Nair committed
627
            AutoencoderTiny,
628
            CacheMixin,
629
            CogVideoXTransformer3DModel,
Yuxuan.Zhang's avatar
Yuxuan.Zhang committed
630
            CogView3PlusTransformer2DModel,
631
            CogView4Transformer2DModel,
Shenghai Yuan's avatar
Shenghai Yuan committed
632
            ConsisIDTransformer3DModel,
Will Berman's avatar
Will Berman committed
633
            ConsistencyDecoderVAE,
Dhruv Nair's avatar
Dhruv Nair committed
634
            ControlNetModel,
hlky's avatar
hlky committed
635
            ControlNetUnionModel,
636
            ControlNetXSAdapter,
637
            DiTTransformer2DModel,
王奇勋's avatar
王奇勋 committed
638
            FluxControlNetModel,
639
            FluxMultiControlNetModel,
Sayak Paul's avatar
Sayak Paul committed
640
            FluxTransformer2DModel,
641
            HunyuanDiT2DControlNetModel,
642
            HunyuanDiT2DModel,
643
            HunyuanDiT2DMultiControlNetModel,
Aryan's avatar
Aryan committed
644
            HunyuanVideoTransformer3DModel,
645
            I2VGenXLUNet,
646
            Kandinsky3UNet,
647
            LatteTransformer3DModel,
Aryan's avatar
Aryan committed
648
            LTXVideoTransformer3DModel,
Le Zhuo's avatar
Le Zhuo committed
649
            Lumina2Transformer2DModel,
650
            LuminaNextDiT2DModel,
Aryan's avatar
Aryan committed
651
            MochiTransformer3DModel,
Dhruv Nair's avatar
Dhruv Nair committed
652
            ModelMixin,
Dhruv Nair's avatar
Dhruv Nair committed
653
            MotionAdapter,
Dhruv Nair's avatar
Dhruv Nair committed
654
            MultiAdapter,
655
            MultiControlNetModel,
Shitao Xiao's avatar
Shitao Xiao committed
656
            OmniGenTransformer2DModel,
657
            PixArtTransformer2DModel,
Dhruv Nair's avatar
Dhruv Nair committed
658
            PriorTransformer,
659
            SanaTransformer2DModel,
660
661
            SD3ControlNetModel,
            SD3MultiControlNetModel,
Dhruv Nair's avatar
Dhruv Nair committed
662
            SD3Transformer2DModel,
Aryan's avatar
Aryan committed
663
            SparseControlNetModel,
664
            StableAudioDiTModel,
Dhruv Nair's avatar
Dhruv Nair committed
665
666
667
668
669
670
671
            T2IAdapter,
            T5FilmDecoder,
            Transformer2DModel,
            UNet1DModel,
            UNet2DConditionModel,
            UNet2DModel,
            UNet3DConditionModel,
672
            UNetControlNetXSModel,
Dhruv Nair's avatar
Dhruv Nair committed
673
            UNetMotionModel,
Suraj Patil's avatar
Suraj Patil committed
674
            UNetSpatioTemporalConditionModel,
Will Berman's avatar
Will Berman committed
675
            UVit2DModel,
Dhruv Nair's avatar
Dhruv Nair committed
676
            VQModel,
677
            WanTransformer3DModel,
Dhruv Nair's avatar
Dhruv Nair committed
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
        )
        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 .pipelines import (
            AudioPipelineOutput,
            AutoPipelineForImage2Image,
            AutoPipelineForInpainting,
            AutoPipelineForText2Image,
Ayush Mangal's avatar
Ayush Mangal committed
693
694
            BlipDiffusionControlNetPipeline,
            BlipDiffusionPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
695
696
697
698
699
700
701
702
703
704
705
706
707
708
            CLIPImageProjection,
            ConsistencyModelPipeline,
            DanceDiffusionPipeline,
            DDIMPipeline,
            DDPMPipeline,
            DiffusionPipeline,
            DiTPipeline,
            ImagePipelineOutput,
            KarrasVePipeline,
            LDMPipeline,
            LDMSuperResolutionPipeline,
            PNDMPipeline,
            RePaintPipeline,
            ScoreSdeVePipeline,
709
            StableDiffusionMixin,
Dhruv Nair's avatar
Dhruv Nair committed
710
        )
711
        from .quantizers import DiffusersQuantizer
Dhruv Nair's avatar
Dhruv Nair committed
712
        from .schedulers import (
Will Berman's avatar
Will Berman committed
713
            AmusedScheduler,
Dhruv Nair's avatar
Dhruv Nair committed
714
            CMStochasticIterativeScheduler,
715
716
            CogVideoXDDIMScheduler,
            CogVideoXDPMScheduler,
Dhruv Nair's avatar
Dhruv Nair committed
717
718
719
720
721
722
723
724
725
726
            DDIMInverseScheduler,
            DDIMParallelScheduler,
            DDIMScheduler,
            DDPMParallelScheduler,
            DDPMScheduler,
            DDPMWuerstchenScheduler,
            DEISMultistepScheduler,
            DPMSolverMultistepInverseScheduler,
            DPMSolverMultistepScheduler,
            DPMSolverSinglestepScheduler,
727
            EDMDPMSolverMultistepScheduler,
Suraj Patil's avatar
Suraj Patil committed
728
            EDMEulerScheduler,
Dhruv Nair's avatar
Dhruv Nair committed
729
730
            EulerAncestralDiscreteScheduler,
            EulerDiscreteScheduler,
Dhruv Nair's avatar
Dhruv Nair committed
731
            FlowMatchEulerDiscreteScheduler,
732
            FlowMatchHeunDiscreteScheduler,
Dhruv Nair's avatar
Dhruv Nair committed
733
734
735
736
737
            HeunDiscreteScheduler,
            IPNDMScheduler,
            KarrasVeScheduler,
            KDPM2AncestralDiscreteScheduler,
            KDPM2DiscreteScheduler,
738
            LCMScheduler,
Dhruv Nair's avatar
Dhruv Nair committed
739
740
            PNDMScheduler,
            RePaintScheduler,
Junsong Chen's avatar
Junsong Chen committed
741
            SASolverScheduler,
Dhruv Nair's avatar
Dhruv Nair committed
742
743
            SchedulerMixin,
            ScoreSdeVeScheduler,
Michael's avatar
Michael committed
744
            TCDScheduler,
Dhruv Nair's avatar
Dhruv Nair committed
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
            UnCLIPScheduler,
            UniPCMultistepScheduler,
            VQDiffusionScheduler,
        )
        from .training_utils import EMAModel

    try:
        if not (is_torch_available() and is_scipy_available()):
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        from .utils.dummy_torch_and_scipy_objects import *  # noqa F403
    else:
        from .schedulers import LMSDiscreteScheduler

    try:
        if not (is_torch_available() and is_torchsde_available()):
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        from .utils.dummy_torch_and_torchsde_objects import *  # noqa F403
    else:
765
        from .schedulers import CosineDPMSolverMultistepScheduler, DPMSolverSDEScheduler
Dhruv Nair's avatar
Dhruv Nair committed
766
767
768
769
770
771
772
773

    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:
        from .pipelines import (
Aryan's avatar
Aryan committed
774
            AllegroPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
775
776
            AltDiffusionImg2ImgPipeline,
            AltDiffusionPipeline,
Will Berman's avatar
Will Berman committed
777
778
779
            AmusedImg2ImgPipeline,
            AmusedInpaintPipeline,
            AmusedPipeline,
780
            AnimateDiffControlNetPipeline,
Aryan's avatar
Aryan committed
781
            AnimateDiffPAGPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
782
            AnimateDiffPipeline,
Aryan's avatar
Aryan committed
783
            AnimateDiffSDXLPipeline,
Aryan's avatar
Aryan committed
784
            AnimateDiffSparseControlNetPipeline,
785
            AnimateDiffVideoToVideoControlNetPipeline,
Aryan V S's avatar
Aryan V S committed
786
            AnimateDiffVideoToVideoPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
787
788
789
790
            AudioLDM2Pipeline,
            AudioLDM2ProjectionModel,
            AudioLDM2UNet2DConditionModel,
            AudioLDMPipeline,
Sayak Paul's avatar
Sayak Paul committed
791
            AuraFlowPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
792
            CLIPImageProjection,
793
            CogVideoXFunControlPipeline,
794
            CogVideoXImageToVideoPipeline,
795
            CogVideoXPipeline,
796
            CogVideoXVideoToVideoPipeline,
Yuxuan.Zhang's avatar
Yuxuan.Zhang committed
797
            CogView3PlusPipeline,
798
            CogView4Pipeline,
Shenghai Yuan's avatar
Shenghai Yuan committed
799
            ConsisIDPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
800
            CycleDiffusionPipeline,
Aryan's avatar
Aryan committed
801
            FluxControlImg2ImgPipeline,
802
            FluxControlInpaintPipeline,
803
804
            FluxControlNetImg2ImgPipeline,
            FluxControlNetInpaintPipeline,
王奇勋's avatar
王奇勋 committed
805
            FluxControlNetPipeline,
Aryan's avatar
Aryan committed
806
807
            FluxControlPipeline,
            FluxFillPipeline,
808
809
            FluxImg2ImgPipeline,
            FluxInpaintPipeline,
Sayak Paul's avatar
Sayak Paul committed
810
            FluxPipeline,
Aryan's avatar
Aryan committed
811
            FluxPriorReduxPipeline,
812
            HunyuanDiTControlNetPipeline,
813
            HunyuanDiTPAGPipeline,
814
            HunyuanDiTPipeline,
Aryan's avatar
Aryan committed
815
            HunyuanSkyreelsImageToVideoPipeline,
Aryan's avatar
Aryan committed
816
            HunyuanVideoPipeline,
817
            I2VGenXLPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
818
819
820
821
822
823
824
            IFImg2ImgPipeline,
            IFImg2ImgSuperResolutionPipeline,
            IFInpaintingPipeline,
            IFInpaintingSuperResolutionPipeline,
            IFPipeline,
            IFSuperResolutionPipeline,
            ImageTextPipelineOutput,
825
826
            Kandinsky3Img2ImgPipeline,
            Kandinsky3Pipeline,
Dhruv Nair's avatar
Dhruv Nair committed
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
            KandinskyCombinedPipeline,
            KandinskyImg2ImgCombinedPipeline,
            KandinskyImg2ImgPipeline,
            KandinskyInpaintCombinedPipeline,
            KandinskyInpaintPipeline,
            KandinskyPipeline,
            KandinskyPriorPipeline,
            KandinskyV22CombinedPipeline,
            KandinskyV22ControlnetImg2ImgPipeline,
            KandinskyV22ControlnetPipeline,
            KandinskyV22Img2ImgCombinedPipeline,
            KandinskyV22Img2ImgPipeline,
            KandinskyV22InpaintCombinedPipeline,
            KandinskyV22InpaintPipeline,
            KandinskyV22Pipeline,
            KandinskyV22PriorEmb2EmbPipeline,
            KandinskyV22PriorPipeline,
844
            LatentConsistencyModelImg2ImgPipeline,
845
            LatentConsistencyModelPipeline,
846
            LattePipeline,
Dhruv Nair's avatar
Dhruv Nair committed
847
            LDMTextToImagePipeline,
848
849
            LEditsPPPipelineStableDiffusion,
            LEditsPPPipelineStableDiffusionXL,
Aryan's avatar
Aryan committed
850
851
            LTXImageToVideoPipeline,
            LTXPipeline,
Le Zhuo's avatar
Le Zhuo committed
852
            Lumina2Text2ImgPipeline,
853
            LuminaText2ImgPipeline,
854
            MarigoldDepthPipeline,
855
            MarigoldIntrinsicsPipeline,
856
            MarigoldNormalsPipeline,
Aryan's avatar
Aryan committed
857
            MochiPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
858
            MusicLDMPipeline,
Shitao Xiao's avatar
Shitao Xiao committed
859
            OmniGenPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
860
            PaintByExamplePipeline,
Dhruv Nair's avatar
Dhruv Nair committed
861
            PIAPipeline,
Sayak Paul's avatar
Sayak Paul committed
862
            PixArtAlphaPipeline,
863
            PixArtSigmaPAGPipeline,
864
            PixArtSigmaPipeline,
Aryan's avatar
Aryan committed
865
            ReduxImageEncoder,
866
867
            SanaPAGPipeline,
            SanaPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
868
869
870
            SemanticStableDiffusionPipeline,
            ShapEImg2ImgPipeline,
            ShapEPipeline,
871
872
            StableAudioPipeline,
            StableAudioProjectionModel,
873
874
875
            StableCascadeCombinedPipeline,
            StableCascadeDecoderPipeline,
            StableCascadePriorPipeline,
876
            StableDiffusion3ControlNetInpaintingPipeline,
877
            StableDiffusion3ControlNetPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
878
            StableDiffusion3Img2ImgPipeline,
879
            StableDiffusion3InpaintPipeline,
880
            StableDiffusion3PAGImg2ImgPipeline,
881
            StableDiffusion3PAGPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
882
            StableDiffusion3Pipeline,
Dhruv Nair's avatar
Dhruv Nair committed
883
884
885
886
            StableDiffusionAdapterPipeline,
            StableDiffusionAttendAndExcitePipeline,
            StableDiffusionControlNetImg2ImgPipeline,
            StableDiffusionControlNetInpaintPipeline,
887
            StableDiffusionControlNetPAGInpaintPipeline,
888
            StableDiffusionControlNetPAGPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
889
            StableDiffusionControlNetPipeline,
890
            StableDiffusionControlNetXSPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
891
892
893
894
895
896
897
898
899
900
901
902
            StableDiffusionDepth2ImgPipeline,
            StableDiffusionDiffEditPipeline,
            StableDiffusionGLIGENPipeline,
            StableDiffusionGLIGENTextImagePipeline,
            StableDiffusionImageVariationPipeline,
            StableDiffusionImg2ImgPipeline,
            StableDiffusionInpaintPipeline,
            StableDiffusionInpaintPipelineLegacy,
            StableDiffusionInstructPix2PixPipeline,
            StableDiffusionLatentUpscalePipeline,
            StableDiffusionLDM3DPipeline,
            StableDiffusionModelEditingPipeline,
903
            StableDiffusionPAGImg2ImgPipeline,
904
            StableDiffusionPAGInpaintPipeline,
905
            StableDiffusionPAGPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
906
907
908
909
910
911
912
913
914
915
            StableDiffusionPanoramaPipeline,
            StableDiffusionParadigmsPipeline,
            StableDiffusionPipeline,
            StableDiffusionPipelineSafe,
            StableDiffusionPix2PixZeroPipeline,
            StableDiffusionSAGPipeline,
            StableDiffusionUpscalePipeline,
            StableDiffusionXLAdapterPipeline,
            StableDiffusionXLControlNetImg2ImgPipeline,
            StableDiffusionXLControlNetInpaintPipeline,
916
            StableDiffusionXLControlNetPAGImg2ImgPipeline,
YiYi Xu's avatar
YiYi Xu committed
917
            StableDiffusionXLControlNetPAGPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
918
            StableDiffusionXLControlNetPipeline,
hlky's avatar
hlky committed
919
920
921
            StableDiffusionXLControlNetUnionImg2ImgPipeline,
            StableDiffusionXLControlNetUnionInpaintPipeline,
            StableDiffusionXLControlNetUnionPipeline,
922
            StableDiffusionXLControlNetXSPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
923
924
925
            StableDiffusionXLImg2ImgPipeline,
            StableDiffusionXLInpaintPipeline,
            StableDiffusionXLInstructPix2PixPipeline,
YiYi Xu's avatar
YiYi Xu committed
926
927
928
            StableDiffusionXLPAGImg2ImgPipeline,
            StableDiffusionXLPAGInpaintPipeline,
            StableDiffusionXLPAGPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
929
930
931
            StableDiffusionXLPipeline,
            StableUnCLIPImg2ImgPipeline,
            StableUnCLIPPipeline,
Suraj Patil's avatar
Suraj Patil committed
932
            StableVideoDiffusionPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
933
934
            TextToVideoSDPipeline,
            TextToVideoZeroPipeline,
935
            TextToVideoZeroSDXLPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
936
937
938
939
940
941
942
943
944
945
946
            UnCLIPImageVariationPipeline,
            UnCLIPPipeline,
            UniDiffuserModel,
            UniDiffuserPipeline,
            UniDiffuserTextDecoder,
            VersatileDiffusionDualGuidedPipeline,
            VersatileDiffusionImageVariationPipeline,
            VersatileDiffusionPipeline,
            VersatileDiffusionTextToImagePipeline,
            VideoToVideoSDPipeline,
            VQDiffusionPipeline,
947
948
            WanImageToVideoPipeline,
            WanPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
949
950
951
952
953
954
955
956
957
958
959
            WuerstchenCombinedPipeline,
            WuerstchenDecoderPipeline,
            WuerstchenPriorPipeline,
        )

    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 *  # noqa F403
    else:
960
        from .pipelines import StableDiffusionKDiffusionPipeline, StableDiffusionXLKDiffusionPipeline
Dhruv Nair's avatar
Dhruv Nair committed
961

962
963
964
965
966
967
    try:
        if not (is_torch_available() and is_transformers_available() and is_sentencepiece_available()):
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        from .utils.dummy_torch_and_transformers_and_sentencepiece_objects import *  # noqa F403
    else:
Álvaro Somoza's avatar
Álvaro Somoza committed
968
        from .pipelines import KolorsImg2ImgPipeline, KolorsPAGPipeline, KolorsPipeline
Dhruv Nair's avatar
Dhruv Nair committed
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
    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:
        from .pipelines import (
            OnnxStableDiffusionImg2ImgPipeline,
            OnnxStableDiffusionInpaintPipeline,
            OnnxStableDiffusionInpaintPipelineLegacy,
            OnnxStableDiffusionPipeline,
            OnnxStableDiffusionUpscalePipeline,
            StableDiffusionOnnxPipeline,
        )

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

    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:
        from .pipelines import SpectrogramDiffusionPipeline

    try:
        if not is_flax_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        from .utils.dummy_flax_objects import *  # noqa F403
    else:
1006
        from .models.controlnets.controlnet_flax import FlaxControlNetModel
Dhruv Nair's avatar
Dhruv Nair committed
1007
        from .models.modeling_flax_utils import FlaxModelMixin
1008
        from .models.unets.unet_2d_condition_flax import FlaxUNet2DConditionModel
Dhruv Nair's avatar
Dhruv Nair committed
1009
1010
1011
1012
1013
1014
        from .models.vae_flax import FlaxAutoencoderKL
        from .pipelines import FlaxDiffusionPipeline
        from .schedulers import (
            FlaxDDIMScheduler,
            FlaxDDPMScheduler,
            FlaxDPMSolverMultistepScheduler,
Pedro Cuenca's avatar
Pedro Cuenca committed
1015
            FlaxEulerDiscreteScheduler,
Dhruv Nair's avatar
Dhruv Nair committed
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
            FlaxKarrasVeScheduler,
            FlaxLMSDiscreteScheduler,
            FlaxPNDMScheduler,
            FlaxSchedulerMixin,
            FlaxScoreSdeVeScheduler,
        )

    try:
        if not (is_flax_available() and is_transformers_available()):
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        from .utils.dummy_flax_and_transformers_objects import *  # noqa F403
    else:
        from .pipelines import (
            FlaxStableDiffusionControlNetPipeline,
            FlaxStableDiffusionImg2ImgPipeline,
            FlaxStableDiffusionInpaintPipeline,
            FlaxStableDiffusionPipeline,
Pedro Cuenca's avatar
Pedro Cuenca committed
1034
            FlaxStableDiffusionXLPipeline,
Dhruv Nair's avatar
Dhruv Nair committed
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
        )

    try:
        if not (is_note_seq_available()):
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        from .utils.dummy_note_seq_objects import *  # noqa F403
    else:
        from .pipelines import MidiProcessor

else:
    import sys

    sys.modules[__name__] = _LazyModule(
        __name__,
        globals()["__file__"],
        _import_structure,
        module_spec=__spec__,
        extra_objects={"__version__": __version__},
    )