o
    GÆÏi3	  ã                   @   sD   d dl mZ d dlmZ ddlmZ e e¡ZG dd„ deeƒZ	dS )é   )ÚZImageLoraLoaderMixin)Úloggingé   )ÚModularPipelinec                   @   s\   e Zd ZdZdZedd„ ƒZedd„ ƒZedd„ ƒZed	d
„ ƒZ	edd„ ƒZ
edd„ ƒZdS )ÚZImageModularPipelinezƒ
    A ModularPipeline for Z-Image.

    > [!WARNING] > This is an experimental feature and is likely to change in the future.
    ÚZImageAutoBlocksc                 C   ó   dS ©Ni   © ©Úselfr
   r
   úh/home/ubuntu/.local/lib/python3.10/site-packages/diffusers/modular_pipelines/z_image/modular_pipeline.pyÚdefault_height$   ó   z$ZImageModularPipeline.default_heightc                 C   r   r	   r
   r   r
   r
   r   Údefault_width(   r   z#ZImageModularPipeline.default_widthc                 C   ó&   d}t | dƒr| jd ur| jjj}|S )Né   Úimage_processor)Úhasattrr   ÚconfigÚvae_scale_factor)r   Úvae_scale_factor_spatialr
   r
   r   r   ,   ó   
z.ZImageModularPipeline.vae_scale_factor_spatialc                 C   s2   d}t | dƒr| jd urdt| jjjƒd  }|S )Né   Úvaer   é   )r   r   Úlenr   Úblock_out_channels)r   r   r
   r
   r   r   3   s   z&ZImageModularPipeline.vae_scale_factorc                 C   r   )Nr   Útransformer)r   r   r   Úin_channels)r   Únum_channels_latentsr
   r
   r   r    :   r   z*ZImageModularPipeline.num_channels_latentsc                 C   s0   d}t | dƒr| jd ur| jjo| jjdk}|S )NFÚguiderr   )r   r!   Ú_enabledÚnum_conditions)r   Úrequires_unconditional_embedsr
   r
   r   r$   A   s   z3ZImageModularPipeline.requires_unconditional_embedsN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Údefault_blocks_nameÚpropertyr   r   r   r   r    r$   r
   r
   r
   r   r      s    




r   N)
Úloadersr   Úutilsr   Úmodular_pipeliner   Ú
get_loggerr%   Úloggerr   r
   r
   r
   r   Ú<module>   s   

þ