| | from typing import TYPE_CHECKING |
| |
|
| | from ...utils import ( |
| | DIFFUSERS_SLOW_IMPORT, |
| | OptionalDependencyNotAvailable, |
| | _LazyModule, |
| | get_objects_from_module, |
| | is_flax_available, |
| | is_k_diffusion_available, |
| | is_k_diffusion_version, |
| | is_onnx_available, |
| | is_torch_available, |
| | is_transformers_available, |
| | is_transformers_version, |
| | ) |
| |
|
| |
|
| | _dummy_objects = {} |
| | _additional_imports = {} |
| | _import_structure = {"pipeline_output": ["StableDiffusionPipelineOutput"]} |
| |
|
| | if is_transformers_available() and is_flax_available(): |
| | _import_structure["pipeline_output"].extend(["FlaxStableDiffusionPipelineOutput"]) |
| | try: |
| | if not (is_transformers_available() and is_torch_available()): |
| | raise OptionalDependencyNotAvailable() |
| | except OptionalDependencyNotAvailable: |
| | from ...utils import dummy_torch_and_transformers_objects |
| |
|
| | _dummy_objects.update(get_objects_from_module(dummy_torch_and_transformers_objects)) |
| | else: |
| | _import_structure["clip_image_project_model"] = ["CLIPImageProjection"] |
| | _import_structure["pipeline_cycle_diffusion"] = ["CycleDiffusionPipeline"] |
| | _import_structure["pipeline_stable_diffusion"] = ["StableDiffusionPipeline"] |
| | _import_structure["pipeline_stable_diffusion_attend_and_excite"] = ["StableDiffusionAttendAndExcitePipeline"] |
| | _import_structure["pipeline_stable_diffusion_gligen"] = ["StableDiffusionGLIGENPipeline"] |
| | _import_structure["pipeline_stable_diffusion_gligen"] = ["StableDiffusionGLIGENPipeline"] |
| | _import_structure["pipeline_stable_diffusion_gligen_text_image"] = ["StableDiffusionGLIGENTextImagePipeline"] |
| | _import_structure["pipeline_stable_diffusion_img2img"] = ["StableDiffusionImg2ImgPipeline"] |
| | _import_structure["pipeline_stable_diffusion_inpaint"] = ["StableDiffusionInpaintPipeline"] |
| | _import_structure["pipeline_stable_diffusion_inpaint_legacy"] = ["StableDiffusionInpaintPipelineLegacy"] |
| | _import_structure["pipeline_stable_diffusion_instruct_pix2pix"] = ["StableDiffusionInstructPix2PixPipeline"] |
| | _import_structure["pipeline_stable_diffusion_latent_upscale"] = ["StableDiffusionLatentUpscalePipeline"] |
| | _import_structure["pipeline_stable_diffusion_ldm3d"] = ["StableDiffusionLDM3DPipeline"] |
| | _import_structure["pipeline_stable_diffusion_model_editing"] = ["StableDiffusionModelEditingPipeline"] |
| | _import_structure["pipeline_stable_diffusion_panorama"] = ["StableDiffusionPanoramaPipeline"] |
| | _import_structure["pipeline_stable_diffusion_paradigms"] = ["StableDiffusionParadigmsPipeline"] |
| | _import_structure["pipeline_stable_diffusion_sag"] = ["StableDiffusionSAGPipeline"] |
| | _import_structure["pipeline_stable_diffusion_upscale"] = ["StableDiffusionUpscalePipeline"] |
| | _import_structure["pipeline_stable_unclip"] = ["StableUnCLIPPipeline"] |
| | _import_structure["pipeline_stable_unclip_img2img"] = ["StableUnCLIPImg2ImgPipeline"] |
| | _import_structure["safety_checker"] = ["StableDiffusionSafetyChecker"] |
| | _import_structure["stable_unclip_image_normalizer"] = ["StableUnCLIPImageNormalizer"] |
| | try: |
| | if not (is_transformers_available() and is_torch_available() and is_transformers_version(">=", "4.25.0")): |
| | raise OptionalDependencyNotAvailable() |
| | except OptionalDependencyNotAvailable: |
| | from ...utils.dummy_torch_and_transformers_objects import StableDiffusionImageVariationPipeline |
| |
|
| | _dummy_objects.update({"StableDiffusionImageVariationPipeline": StableDiffusionImageVariationPipeline}) |
| | else: |
| | _import_structure["pipeline_stable_diffusion_image_variation"] = ["StableDiffusionImageVariationPipeline"] |
| | try: |
| | if not (is_transformers_available() and is_torch_available() and is_transformers_version(">=", "4.26.0")): |
| | raise OptionalDependencyNotAvailable() |
| | except OptionalDependencyNotAvailable: |
| | from ...utils.dummy_torch_and_transformers_objects import ( |
| | StableDiffusionDepth2ImgPipeline, |
| | StableDiffusionDiffEditPipeline, |
| | StableDiffusionPix2PixZeroPipeline, |
| | ) |
| |
|
| | _dummy_objects.update( |
| | { |
| | "StableDiffusionDepth2ImgPipeline": StableDiffusionDepth2ImgPipeline, |
| | "StableDiffusionDiffEditPipeline": StableDiffusionDiffEditPipeline, |
| | "StableDiffusionPix2PixZeroPipeline": StableDiffusionPix2PixZeroPipeline, |
| | } |
| | ) |
| | else: |
| | _import_structure["pipeline_stable_diffusion_depth2img"] = ["StableDiffusionDepth2ImgPipeline"] |
| | _import_structure["pipeline_stable_diffusion_diffedit"] = ["StableDiffusionDiffEditPipeline"] |
| | _import_structure["pipeline_stable_diffusion_pix2pix_zero"] = ["StableDiffusionPix2PixZeroPipeline"] |
| | try: |
| | if not ( |
| | is_torch_available() |
| | and is_transformers_available() |
| | and is_k_diffusion_available() |
| | and is_k_diffusion_version(">=", "0.0.12") |
| | ): |
| | raise OptionalDependencyNotAvailable() |
| | except OptionalDependencyNotAvailable: |
| | from ...utils import dummy_torch_and_transformers_and_k_diffusion_objects |
| |
|
| | _dummy_objects.update(get_objects_from_module(dummy_torch_and_transformers_and_k_diffusion_objects)) |
| | else: |
| | _import_structure["pipeline_stable_diffusion_k_diffusion"] = ["StableDiffusionKDiffusionPipeline"] |
| | try: |
| | if not (is_transformers_available() and is_onnx_available()): |
| | raise OptionalDependencyNotAvailable() |
| | except OptionalDependencyNotAvailable: |
| | from ...utils import dummy_onnx_objects |
| |
|
| | _dummy_objects.update(get_objects_from_module(dummy_onnx_objects)) |
| | else: |
| | _import_structure["pipeline_onnx_stable_diffusion"] = [ |
| | "OnnxStableDiffusionPipeline", |
| | "StableDiffusionOnnxPipeline", |
| | ] |
| | _import_structure["pipeline_onnx_stable_diffusion_img2img"] = ["OnnxStableDiffusionImg2ImgPipeline"] |
| | _import_structure["pipeline_onnx_stable_diffusion_inpaint"] = ["OnnxStableDiffusionInpaintPipeline"] |
| | _import_structure["pipeline_onnx_stable_diffusion_inpaint_legacy"] = ["OnnxStableDiffusionInpaintPipelineLegacy"] |
| | _import_structure["pipeline_onnx_stable_diffusion_upscale"] = ["OnnxStableDiffusionUpscalePipeline"] |
| |
|
| | if is_transformers_available() and is_flax_available(): |
| | from ...schedulers.scheduling_pndm_flax import PNDMSchedulerState |
| |
|
| | _additional_imports.update({"PNDMSchedulerState": PNDMSchedulerState}) |
| | _import_structure["pipeline_flax_stable_diffusion"] = ["FlaxStableDiffusionPipeline"] |
| | _import_structure["pipeline_flax_stable_diffusion_img2img"] = ["FlaxStableDiffusionImg2ImgPipeline"] |
| | _import_structure["pipeline_flax_stable_diffusion_inpaint"] = ["FlaxStableDiffusionInpaintPipeline"] |
| | _import_structure["safety_checker_flax"] = ["FlaxStableDiffusionSafetyChecker"] |
| |
|
| | if TYPE_CHECKING or DIFFUSERS_SLOW_IMPORT: |
| | try: |
| | if not (is_transformers_available() and is_torch_available()): |
| | raise OptionalDependencyNotAvailable() |
| |
|
| | except OptionalDependencyNotAvailable: |
| | from ...utils.dummy_torch_and_transformers_objects import * |
| |
|
| | else: |
| | from .clip_image_project_model import CLIPImageProjection |
| | from .pipeline_cycle_diffusion import CycleDiffusionPipeline |
| | from .pipeline_stable_diffusion import ( |
| | StableDiffusionPipeline, |
| | StableDiffusionPipelineOutput, |
| | StableDiffusionSafetyChecker, |
| | ) |
| | from .pipeline_stable_diffusion_attend_and_excite import StableDiffusionAttendAndExcitePipeline |
| | from .pipeline_stable_diffusion_gligen import StableDiffusionGLIGENPipeline |
| | from .pipeline_stable_diffusion_gligen_text_image import StableDiffusionGLIGENTextImagePipeline |
| | from .pipeline_stable_diffusion_img2img import StableDiffusionImg2ImgPipeline |
| | from .pipeline_stable_diffusion_inpaint import StableDiffusionInpaintPipeline |
| | from .pipeline_stable_diffusion_inpaint_legacy import StableDiffusionInpaintPipelineLegacy |
| | from .pipeline_stable_diffusion_instruct_pix2pix import StableDiffusionInstructPix2PixPipeline |
| | from .pipeline_stable_diffusion_latent_upscale import StableDiffusionLatentUpscalePipeline |
| | from .pipeline_stable_diffusion_ldm3d import StableDiffusionLDM3DPipeline |
| | from .pipeline_stable_diffusion_model_editing import StableDiffusionModelEditingPipeline |
| | from .pipeline_stable_diffusion_panorama import StableDiffusionPanoramaPipeline |
| | from .pipeline_stable_diffusion_paradigms import StableDiffusionParadigmsPipeline |
| | from .pipeline_stable_diffusion_sag import StableDiffusionSAGPipeline |
| | from .pipeline_stable_diffusion_upscale import StableDiffusionUpscalePipeline |
| | from .pipeline_stable_unclip import StableUnCLIPPipeline |
| | from .pipeline_stable_unclip_img2img import StableUnCLIPImg2ImgPipeline |
| | from .safety_checker import StableDiffusionSafetyChecker |
| | from .stable_unclip_image_normalizer import StableUnCLIPImageNormalizer |
| |
|
| | try: |
| | if not (is_transformers_available() and is_torch_available() and is_transformers_version(">=", "4.25.0")): |
| | raise OptionalDependencyNotAvailable() |
| | except OptionalDependencyNotAvailable: |
| | from ...utils.dummy_torch_and_transformers_objects import StableDiffusionImageVariationPipeline |
| | else: |
| | from .pipeline_stable_diffusion_image_variation import StableDiffusionImageVariationPipeline |
| |
|
| | try: |
| | if not (is_transformers_available() and is_torch_available() and is_transformers_version(">=", "4.26.0")): |
| | raise OptionalDependencyNotAvailable() |
| | except OptionalDependencyNotAvailable: |
| | from ...utils.dummy_torch_and_transformers_objects import ( |
| | StableDiffusionDepth2ImgPipeline, |
| | StableDiffusionDiffEditPipeline, |
| | StableDiffusionPix2PixZeroPipeline, |
| | ) |
| | else: |
| | from .pipeline_stable_diffusion_depth2img import StableDiffusionDepth2ImgPipeline |
| | from .pipeline_stable_diffusion_diffedit import StableDiffusionDiffEditPipeline |
| | from .pipeline_stable_diffusion_pix2pix_zero import StableDiffusionPix2PixZeroPipeline |
| |
|
| | try: |
| | if not ( |
| | is_torch_available() |
| | and is_transformers_available() |
| | and is_k_diffusion_available() |
| | and is_k_diffusion_version(">=", "0.0.12") |
| | ): |
| | raise OptionalDependencyNotAvailable() |
| | except OptionalDependencyNotAvailable: |
| | from ...utils.dummy_torch_and_transformers_and_k_diffusion_objects import * |
| | else: |
| | from .pipeline_stable_diffusion_k_diffusion import StableDiffusionKDiffusionPipeline |
| |
|
| | try: |
| | if not (is_transformers_available() and is_onnx_available()): |
| | raise OptionalDependencyNotAvailable() |
| | except OptionalDependencyNotAvailable: |
| | from ...utils.dummy_onnx_objects import * |
| | else: |
| | from .pipeline_onnx_stable_diffusion import OnnxStableDiffusionPipeline, StableDiffusionOnnxPipeline |
| | from .pipeline_onnx_stable_diffusion_img2img import OnnxStableDiffusionImg2ImgPipeline |
| | from .pipeline_onnx_stable_diffusion_inpaint import OnnxStableDiffusionInpaintPipeline |
| | from .pipeline_onnx_stable_diffusion_inpaint_legacy import OnnxStableDiffusionInpaintPipelineLegacy |
| | from .pipeline_onnx_stable_diffusion_upscale import OnnxStableDiffusionUpscalePipeline |
| |
|
| | try: |
| | if not (is_transformers_available() and is_flax_available()): |
| | raise OptionalDependencyNotAvailable() |
| | except OptionalDependencyNotAvailable: |
| | from ...utils.dummy_flax_objects import * |
| | else: |
| | from .pipeline_flax_stable_diffusion import FlaxStableDiffusionPipeline |
| | from .pipeline_flax_stable_diffusion_img2img import FlaxStableDiffusionImg2ImgPipeline |
| | from .pipeline_flax_stable_diffusion_inpaint import FlaxStableDiffusionInpaintPipeline |
| | from .pipeline_output import FlaxStableDiffusionPipelineOutput |
| | from .safety_checker_flax import FlaxStableDiffusionSafetyChecker |
| |
|
| | 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) |
| | for name, value in _additional_imports.items(): |
| | setattr(sys.modules[__name__], name, value) |
| |
|