§
    ‚Štj¶  ã                   ó’   — d Z ddlmZ ddlmZ ddlmZ ddlmZ  ed¬¦  «        e G d	„ d
ee¦  «        ¦   «         ¦   «         Z	d
gZ
dS )z$Swin Transformer model configurationé    )Ústricté   )ÚBackboneConfigMixin)ÚPreTrainedConfig)Úauto_docstringz&microsoft/swin-tiny-patch4-window7-224)Ú
checkpointc                   ó  ‡ — e Zd ZU dZdZdddœZdZeee         z  e	eef         z  e
d<   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         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z  e
d<   dZee
d<   dZeez  e
d<   dZeez  e
d<   dZee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
d&<   d'Zee         d'z  e
d(<   d'Zee         d'z  e
d)<   ˆ fd*„Z ˆ xZ!S )+Ú
SwinConfigaÆ  
    depths (`list(int)`, *optional*, defaults to `[2, 2, 6, 2]`):
        Depth of each layer in the Transformer encoder.
    num_heads (`list(int)`, *optional*, defaults to `[3, 6, 12, 24]`):
        Number of attention heads in each layer of the Transformer encoder.
    window_size (`int`, *optional*, defaults to 7):
        Size of windows.
    encoder_stride (`int`, *optional*, defaults to 32):
        Factor to increase the spatial resolution by in the decoder head for masked image modeling.

    Example:

    ```python
    >>> from transformers import SwinConfig, SwinModel

    >>> # Initializing a Swin microsoft/swin-tiny-patch4-window7-224 style configuration
    >>> configuration = SwinConfig()

    >>> # Initializing a model (with random weights) from the microsoft/swin-tiny-patch4-window7-224 style configuration
    >>> model = SwinModel(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config
    ```ÚswinÚ	num_headsÚ
num_layers)Únum_attention_headsÚnum_hidden_layerséà   Ú
image_sizeé   Ú
patch_sizer   Únum_channelsé`   Ú	embed_dim)é   r   é   r   .Údepths)r   r   é   é   é   Úwindow_sizeg      @Ú	mlp_ratioTÚqkv_biasg        Úhidden_dropout_probÚattention_probs_dropout_probgš™™™™™¹?Údrop_path_rateÚgeluÚ
hidden_actFÚuse_absolute_embeddingsg{®Gáz”?Úinitializer_rangegñhãˆµøä>Úlayer_norm_epsé    Úencoder_strideNÚ_out_featuresÚ_out_indicesc                 óÂ  •— t          | j        ¦  «        | _        t          | j        dt          | j        ¦  «        dz
  z  z  ¦  «        | _        dgd„ t          dt          | j        ¦  «        dz   ¦  «        D ¦   «         z   | _        |                      | 	                    dd ¦  «        | 	                    dd ¦  «        ¬¦  «          t          ¦   «         j        di |¤Ž d S )	Nr   é   Ústemc                 ó   — g | ]}d |› �‘ŒS )Ústage© )Ú.0Úidxs     úi/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/transformers/models/swin/configuration_swin.pyú
<listcomp>z,SwinConfig.__post_init__.<locals>.<listcomp>S   s   € Ð&_Ð&_Ð&_¸ }¨s } }Ð&_Ð&_Ð&_ó    Úout_indicesÚout_features)r7   r8   r1   )Úlenr   r   Úintr   Úhidden_sizeÚrangeÚstage_namesÚ"set_output_features_output_indicesÚpopÚsuperÚ__post_init__)ÚselfÚkwargsÚ	__class__s     €r4   rA   zSwinConfig.__post_init__N   sÞ   ø€ Ý˜dœkÑ*Ô*ˆŒõ ˜tœ~°µc¸$¼+Ñ6FÔ6FÈÑ6JÑ0KÑKÑLÔLˆÔØ"˜8Ð&_Ð&_ÅÀaÍÈTÌ[ÑIYÔIYÐ\]ÑI]Ñ@^Ô@^Ð&_Ñ&_Ô&_Ñ_ˆÔØ×/Ò/ØŸ
š
 =°$Ñ7Ô7ÀfÇjÂjÐQ_ÐaeÑFfÔFfð 	0ñ 	
ô 	
ð 	
ð 	�‰ŒÔÐ'Ð' Ð'Ð'Ð'Ð'Ð'r6   )"Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú
model_typeÚattribute_mapr   r:   ÚlistÚtupleÚ__annotations__r   r   r   r   r   r   r   Úfloatr   Úboolr    r!   r"   r$   Ústrr%   r&   r'   r)   r*   r+   rA   Ú__classcell__)rD   s   @r4   r
   r
      s  ø€ € € € € € ðð ð2 €Jð  +Ø)ðð €Mð
 58€J��d˜3”i‘ %¨¨S¨¤/Ñ1Ð7Ð7Ñ7Ø45€J��d˜3”i‘ %¨¨S¨¤/Ñ1Ð5Ð5Ñ5Ø€L�#ÐÐÑØ€IˆsÐÐÑØ*6€FˆD�ŒI˜˜c 3˜hœÑ'Ð6Ð6Ñ6Ø-;€Iˆt�CŒy˜5  c œ?Ñ*Ð;Ð;Ñ;Ø€K�ÐÐÑØ €Iˆu�s‰{Ð Ð Ñ Ø€HˆdÐÐÑØ'*Ð˜ ™Ð*Ð*Ñ*Ø03Ð  %¨#¡+Ð3Ð3Ñ3Ø"%€N�E˜C‘KÐ%Ð%Ñ%Ø€J�ÐÐÑØ$)Ð˜TÐ)Ð)Ñ)Ø#Ð�uÐ#Ð#Ñ#Ø €N�EÐ Ð Ñ Ø€N�CÐÐÑØ&*€M�4˜”9˜tÑ#Ð*Ð*Ñ*Ø%)€L�$�s”)˜dÑ"Ð)Ð)Ñ)ð	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(r6   r
   N)rH   Úhuggingface_hub.dataclassesr   Úbackbone_utilsr   Úconfiguration_utilsr   Úutilsr   r
   Ú__all__r1   r6   r4   ú<module>rW      s·   ðð +Ð *à .Ð .Ð .Ð .Ð .Ð .à 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø #Ð #Ð #Ð #Ð #Ð #ð €ÐCÐDÑDÔDØð>(ð >(ð >(ð >(ð >(Ð$Ð&6ñ >(ô >(ñ „ñ EÔDð>(ðB ˆ.€€€r6   