
    Z j&                     d    S r SSKJr  SSKJr  SSKJr  \" SS9\ " S S	\5      5       5       rS	/rg
)zLeViT model configuration    )strict   )PreTrainedConfig)auto_docstringzfacebook/levit-128S)
checkpointc                     ^  \ rS rSr% SrSrSr\\\   -  \	\\4   -  \
S'   Sr\\
S'   Sr\\
S'   S	r\\
S
'   Sr\\
S'   Sr\\\   -  \	\\4   -  \
S'   Sr\\   \	\S4   -  \
S'   Sr\\   \	\S4   -  \
S'   Sr\\   \	\S4   -  \
S'   Sr\\   \	\S4   -  \
S'   Sr\\
S'   Sr\\   \	\S4   -  \
S'   Sr\\   \	\S4   -  \
S'   Sr\\
S'   U 4S jrS rU =r$ )!LevitConfig   ax  
stride (`int`, *optional*, defaults to 2):
    The stride size for the initial convolution layers of patch embedding.
padding (`int`, *optional*, defaults to 1):
    The padding size for the initial convolution layers of patch embedding.
key_dim (`list[int]`, *optional*, defaults to `[16, 16, 16]`):
    The size of key in each of the encoder blocks.
attention_ratio (`list[int]`, *optional*, defaults to `[2, 2, 2]`):
    Ratio of the size of the output dimension compared to input dimension of attention layers.

Example:

```python
>>> from transformers import LevitConfig, LevitModel

>>> # Initializing a LeViT levit-128S style configuration
>>> configuration = LevitConfig()

>>> # Initializing a model (with random weights) from the levit-128S style configuration
>>> model = LevitModel(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config
```levit   
image_sizer   num_channelskernel_size   stride   padding   
patch_size)      i  .hidden_sizes)         num_attention_heads)r   r   r   depths)r   r   r   key_dimr   drop_path_rate)r   r   r   	mlp_ratioattention_ratiog{Gz?initializer_rangec                    > SU R                   S   U R                  S   U R                   S   -  SSS/SU R                   S   U R                  S   U R                   S   -  SSS//U l        [        TU ]  " S0 UD6  g )N	Subsampler   r   r   r    )r   r   down_opssuper__post_init__)selfkwargs	__class__s     ~/root/GenerationalWealth/GenerationalWealth/venv/lib/python3.13/site-packages/transformers/models/levit/configuration_levit.pyr(   LevitConfig.__post_init__C   s    $,,q/4+<+<Q+?4<<PQ?+RTUWXZ[\$,,q/4+<+<Q+?4<<PQ?+RTUWXZ[\
 	''    )r&   )__name__
__module____qualname____firstlineno____doc__
model_typer   intlisttuple__annotations__r   r   r   r   r   r   r   r   r   r   r    r!   r"   floatr(   __static_attributes____classcell__)r+   s   @r,   r	   r	      s6   2 J47Jd3i%S/17L#KFCOGS46Jd3i%S/160?L$s)eCHo-?7AcU38_4A*3FDIc3h'3+7GT#YsCx(7NC-6ItCy5c?*63<OT#YsCx0<#u#( (r.   r	   N)	r3   huggingface_hub.dataclassesr   configuration_utilsr   utilsr   r	   __all__r%   r.   r,   <module>r@      sG      . 3 # 010(" 0(  20(f /r.   