Ë
    ÜÓ^j&  ã                   ój   — d Z ddlmZ ddlmZ ddlmZ  ed¬«      e G d„ d	e«      «       «       Zd	gZy
)zLeViT model configurationé    )Ústricté   )ÚPreTrainedConfig)Úauto_docstringzfacebook/levit-128S)Ú
checkpointc                   ó¨  ‡ — e Zd ZU dZdZdZeee   z  eeef   z  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ee   z  eeef   z  e	d<   dZee   eedf   z  e	d<   dZee   eedf   z  e	d<   dZee   eedf   z  e	d<   dZee   eedf   z  e	d<   dZee	d<   dZee   eedf   z  e	d<   dZee   eedf   z  e	d<   dZee	d<   ˆ fd„Zˆ xZS )ÚLevitConfigaÀ  
    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{®Gáz”?Úinitializer_rangec                 óö   •— d| j                   d   | j                  d   | j                   d   z  dddgd| j                   d   | j                  d   | j                   d   z  dddgg| _        t        ‰| �  di |¤Ž y )NÚ	Subsampler   r   r   r   © )r   r   Údown_opsÚsuperÚ__post_init__)ÚselfÚkwargsÚ	__class__s     €úx/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/transformers/models/levit/configuration_levit.pyr'   zLevitConfig.__post_init__C   s†   ø€ à˜$Ÿ,™, q™/¨4×+<Ñ+<¸QÑ+?À4Ç<Á<ÐPQÁ?Ñ+RÐTUÐWXÐZ[Ð\Ø˜$Ÿ,™, q™/¨4×+<Ñ+<¸QÑ+?À4Ç<Á<ÐPQÁ?Ñ+RÐTUÐWXÐZ[Ð\ð
ˆŒô 	‰ÑÑ' Ó'ó    )Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú
model_typer   ÚintÚlistÚtupleÚ__annotations__r   r   r   r   r   r   r   r   r   r   r   r    r!   Úfloatr'   Ú__classcell__)r*   s   @r+   r	   r	      s6  ø… ñð2 €Jà47€J��d˜3‘i‘ %¨¨S¨¡/Ñ1Ó7Ø€L�#ÓØ€K�ÓØ€FˆCƒOØ€GˆSÓØ46€J��d˜3‘i‘ %¨¨S¨¡/Ñ1Ó6Ø0?€L�$�s‘)˜e C¨ H™oÑ-Ó?Ø7AÐ˜˜c™ U¨3°¨8¡_Ñ4ÓAØ*3€FˆD�‰I˜˜c 3˜h™Ñ'Ó3Ø+7€GˆT�#‰Y˜˜s C˜x™Ñ(Ó7Ø€N�CÓØ-6€Iˆt�C‰y˜5  c ™?Ñ*Ó6Ø3<€O�T˜#‘Y  s¨C x¡Ñ0Ó<Ø#Ð�uÓ#÷(ð (r,   r	   N)	r0   Úhuggingface_hub.dataclassesr   Úconfiguration_utilsr   Úutilsr   r	   Ú__all__r$   r,   r+   ú<module>r<      sG   ðñ  å .å 3Ý #ñ Ð0Ô1Øô0(Ð"ó 0(ó ó 2ð0(ðf ˆ/�r,   