o
    پiO                     @   st   d dl mZmZ d dlmZmZ eG dd deZeG dd deZeG dd deZeG d	d
 d
eZ	dS )    )	dataclassfield)VAEArchConfig	VAEConfigc                   @   s   e Zd ZU dZeed< dZeed< dZedB ed< dZeed< d	Z	e
ed
f ed< dZeed< dZe
ed
f ed< dZe
ed
f ed< dZeed< dZeed< dZeed< dZeed< dZedB ed< dZeed< dZeed< dZeed< dS ) FluxVAEArchConfig   spatial_compression_ratio`   base_dimNdecoder_base_dim   z_dim)r         r   .dim_multr   num_res_blocks attn_scales)FTTtemperal_downsampleg        dropoutFis_residual   in_channelsout_channels
patch_sizer   scale_factor_temporal   scale_factor_spatialTclip_output)__name__
__module____qualname__r   int__annotations__r
   r   r   r   tupler   r   floatr   boolr   r   r   r   r   r   r   r   r   r   r   b/home/ubuntu/.local/lib/python3.10/site-packages/sglang/multimodal_gen/configs/models/vaes/flux.pyr      s"   
 r   c                   @   s   e Zd ZdS )Flux2VAEArchConfigN)r   r    r!   r   r   r   r'   r(      s    r(   c                   @   s`   e Zd ZU eedZeed< dZeed< dZ	eed< dZ
eed< dZeed< d	d
 Zdd ZdS )FluxVAEConfigdefault_factoryarch_configTuse_feature_cacheF
use_tilinguse_temporal_tilinguse_parallel_tilingc                 C   s   | j | j d | _d S )Nr   )tile_sample_min_num_framestile_sample_stride_num_framesblend_num_framesselfr   r   r'   __post_init__,   s   

zFluxVAEConfig.__post_init__c                 C   sl   t | jdr| jjrdt| jjd  | j_n| jjr(dt| jjd  | j_n| jj| j_| jj| j_d S )Nblock_out_channelsr   r   )hasattrr,   r7   lenvae_scale_factorr   r   r   r4   r   r   r'   	post_init1   s   


zFluxVAEConfig.post_initN)r   r    r!   r   r   r,   r#   r-   r&   r.   r/   r0   r6   r;   r   r   r   r'   r)   "   s   
 r)   c                   @   s    e Zd ZU eedZeed< dS )Flux2VAEConfigr*   r,   N)r   r    r!   r   r(   r,   r#   r   r   r   r'   r<   D   s   
 r<   N)
dataclassesr   r   .sglang.multimodal_gen.configs.models.vaes.baser   r   r   r(   r)   r<   r   r   r   r'   <module>   s   !