§
    ‚Š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TextNet model configurationé    )Ústricté   )ÚBackboneConfigMixin)ÚPreTrainedConfig)Úauto_docstringzczczup/textnet-base)Ú
checkpointc                   óX  ‡ — e Zd ZU dZdZ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         eeef         z  ez  ed<   dZedz  ed<   dZedz  ed<   dZee         eedf         z  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 )ÚTextNetConfiga—  
    stem_kernel_size (`int`, *optional*, defaults to 3):
        The kernel size for the initial convolution layer.
    stem_stride (`int`, *optional*, defaults to 2):
        The stride for the initial convolution layer.
    stem_num_channels (`int`, *optional*, defaults to 3):
        The num of channels in input for the initial convolution layer.
    stem_out_channels (`int`, *optional*, defaults to 64):
        The num of channels in out for the initial convolution layer.
    stem_act_func (`str`, *optional*, defaults to `"relu"`):
        The activation function for the initial convolution layer.
    conv_layer_kernel_sizes (`list[list[list[int]]]`, *optional*):
        A list of stage-wise kernel sizes. If `None`, defaults to:
        `[[[3, 3], [3, 3], [3, 3]], [[3, 3], [1, 3], [3, 3], [3, 1]], [[3, 3], [3, 3], [3, 1], [1, 3]], [[3, 3], [3, 1], [1, 3], [3, 3]]]`.
    conv_layer_strides (`list[list[int]]`, *optional*):
        A list of stage-wise strides. If `None`, defaults to:
        `[[1, 2, 1], [2, 1, 1, 1], [2, 1, 1, 1], [2, 1, 1, 1]]`.

    Examples:

    ```python
    >>> from transformers import TextNetConfig, TextNetBackbone

    >>> # Initializing a TextNetConfig
    >>> configuration = TextNetConfig()

    >>> # Initializing a model (with random weights)
    >>> model = TextNetBackbone(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config
    ```Útextnetr   Ústem_kernel_sizeé   Ústem_strideÚstem_num_channelsé@   Ústem_out_channelsÚreluÚstem_act_func)é€  r   Ú
image_sizeNÚconv_layer_kernel_sizesÚconv_layer_strides)r   r   é€   é   i   .Úhidden_sizesgñhãˆµøä>Úbatch_norm_epsg{®Gáz”?Úinitializer_rangeÚ_out_featuresÚ_out_indicesc                 óÜ  •— | j         €8ddgddgddggddgddgddgddggddgddgddgddggddgddgddgddggg| _         | j        €g d¢g d¢g d¢g d¢g| _        d„ | j         D ¦   «         | _        dgd„ t          dd¦  «        D ¦   «         z   | _        |                      |                     d	d ¦  «        |                     d
d ¦  «        ¬¦  «          t          ¦   «         j        di |¤Ž d S )Nr   é   )r    r   r    )r   r    r    r    c                 ó,   — g | ]}t          |¦  «        ‘ŒS © )Úlen)Ú.0Úlayers     úo/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/transformers/models/textnet/configuration_textnet.pyú
<listcomp>z/TextNetConfig.__post_init__.<locals>.<listcomp>V   s   € ÐLÐLÐL e•s˜5‘z”zÐLÐLÐLó    Ústemc                 ó   — g | ]}d |› �‘ŒS )Ústager"   )r$   Úidxs     r&   r'   z/TextNetConfig.__post_init__.<locals>.<listcomp>W   s   € Ð&LÐ&LÐ&L¸ }¨s } }Ð&LÐ&LÐ&Lr(   é   Úout_indicesÚout_features)r.   r/   r"   )	r   r   ÚdepthsÚrangeÚstage_namesÚ"set_output_features_output_indicesÚpopÚsuperÚ__post_init__)ÚselfÚkwargsÚ	__class__s     €r&   r6   zTextNetConfig.__post_init__K   sO  ø€ ØÔ'Ð/à�Q�˜!˜Q˜ ! Q Ð(Ø�Q�˜!˜Q˜ ! Q ¨!¨Q¨Ð0Ø�Q�˜!˜Q˜ ! Q ¨!¨Q¨Ð0Ø�Q�˜!˜Q˜ ! Q ¨!¨Q¨Ð0ð	,ˆDÔ(ð Ô"Ð*Ø'0 y y°,°,°,ÀÀÀÈlÈlÈlÐ&[ˆDÔ#àLÐL¨tÔ/KÐLÑLÔLˆŒØ"˜8Ð&LÐ&LÅÀaÈÁÄÐ&LÑ&LÔ&LÑLˆÔØ×/Ò/ØŸ
š
 =°$Ñ7Ô7ÀfÇjÂjÐQ_ÐaeÑFfÔFfð 	0ñ 	
ô 	
ð 	
ð 	�‰ŒÔÐ'Ð' Ð'Ð'Ð'Ð'Ð'r(   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú
model_typer   ÚintÚ__annotations__r   r   r   r   Ústrr   ÚlistÚtupler   r   r   r   Úfloatr   r   r   r6   Ú__classcell__)r9   s   @r&   r
   r
      sc  ø€ € € € € € ðð ðB €JàÐ�cÐÐÑØ€K�ÐÐÑØÐ�sÐÐÑØÐ�sÐÐÑØ€M�3ÐÐÑØ4>€J��S”	˜E # s (œOÑ+¨cÑ1Ð>Ð>Ñ>Ø+/Ð˜T D™[Ð/Ð/Ñ/Ø&*Ð˜˜t™Ð*Ð*Ñ*Ø0G€L�$�s”)˜e C¨ HœoÑ-ÐGÐGÑGØ €N�EÐ Ð Ñ Ø#Ð�uÐ#Ð#Ñ#Ø&*€M�4˜”9˜tÑ#Ð*Ð*Ñ*Ø%)€L�$�s”)˜dÑ"Ð)Ð)Ñ)ð(ð (ð (ð (ð (ð (ð (ð (ð (r(   r
   N)r=   Úhuggingface_hub.dataclassesr   Úbackbone_utilsr   Úconfiguration_utilsr   Úutilsr   r
   Ú__all__r"   r(   r&   ú<module>rK      s¿   ðð "Ð !à .Ð .Ð .Ð .Ð .Ð .à 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø #Ð #Ð #Ð #Ð #Ð #ð €Ð0Ð1Ñ1Ô1ØðB(ð B(ð B(ð B(ð B(Ð'Ð)9ñ B(ô B(ñ „ñ 2Ô1ðB(ðJ Ð
€€€r(   