| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| from dataclasses import dataclass |
| from typing import List, Optional, Union |
|
|
| import numpy as np |
| import PIL |
|
|
| from ...utils import ( |
| BaseOutput, |
| OptionalDependencyNotAvailable, |
| is_fastdeploy_available, |
| is_k_diffusion_available, |
| is_paddle_available, |
| is_paddlenlp_available, |
| ) |
|
|
|
|
| @dataclass |
| class StableDiffusionPipelineOutput(BaseOutput): |
| """ |
| Output class for Stable Diffusion pipelines. |
| |
| Args: |
| images (`List[PIL.Image.Image]` or `np.ndarray`) |
| List of denoised PIL images of length `batch_size` or numpy array of shape `(batch_size, height, width, |
| num_channels)`. PIL images or numpy array present the denoised images of the diffusion pipeline. |
| nsfw_content_detected (`List[bool]`) |
| List of flags denoting whether the corresponding generated image likely represents "not-safe-for-work" |
| (nsfw) content, or `None` if safety checking could not be performed. |
| """ |
|
|
| images: Union[List[PIL.Image.Image], np.ndarray] |
| nsfw_content_detected: Optional[List[bool]] |
|
|
|
|
| try: |
| if not (is_paddlenlp_available() and is_paddle_available()): |
| raise OptionalDependencyNotAvailable() |
| except OptionalDependencyNotAvailable: |
| from ...utils.dummy_paddle_and_paddlenlp_objects import ( |
| StableDiffusionDepth2ImgPipeline, |
| ) |
| else: |
| from .pipeline_stable_diffusion_depth2img import StableDiffusionDepth2ImgPipeline |
|
|
| if is_paddlenlp_available() and is_paddle_available(): |
| from .pipeline_cycle_diffusion import CycleDiffusionPipeline |
| from .pipeline_stable_diffusion import StableDiffusionPipeline |
| from .pipeline_stable_diffusion_all_in_one import StableDiffusionPipelineAllinOne |
| 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_mega import StableDiffusionMegaPipeline |
| from .pipeline_stable_diffusion_upscale import StableDiffusionUpscalePipeline |
| from .safety_checker import StableDiffusionSafetyChecker |
|
|
| try: |
| if not (is_paddlenlp_available() and is_paddle_available()): |
| raise OptionalDependencyNotAvailable() |
| except OptionalDependencyNotAvailable: |
| from ...utils.dummy_paddle_and_paddlenlp_objects import ( |
| StableDiffusionImageVariationPipeline, |
| ) |
| else: |
| from .pipeline_stable_diffusion_image_variation import ( |
| StableDiffusionImageVariationPipeline, |
| ) |
|
|
| try: |
| if not (is_paddle_available() and is_paddlenlp_available() and is_k_diffusion_available()): |
| raise OptionalDependencyNotAvailable() |
| except OptionalDependencyNotAvailable: |
| from ...utils.dummy_paddle_and_paddlenlp_and_k_diffusion_objects import * |
| else: |
| from .pipeline_stable_diffusion_k_diffusion import StableDiffusionKDiffusionPipeline |
|
|
| if is_paddlenlp_available() and is_fastdeploy_available(): |
| from .pipeline_fastdeploy_stable_diffusion import FastDeployStableDiffusionPipeline |
| from .pipeline_fastdeploy_stable_diffusion_img2img import ( |
| FastDeployStableDiffusionImg2ImgPipeline, |
| ) |
| from .pipeline_fastdeploy_stable_diffusion_inpaint import ( |
| FastDeployStableDiffusionInpaintPipeline, |
| ) |
| from .pipeline_fastdeploy_stable_diffusion_inpaint_legacy import ( |
| FastDeployStableDiffusionInpaintPipelineLegacy, |
| ) |
| from .pipeline_fastdeploy_stable_diffusion_mega import ( |
| FastDeployStableDiffusionMegaPipeline, |
| ) |
|
|