§
    ‚ŠtjØ  ã                   ó°   — d dl mZ ddlmZ ddlmZmZ ddlmZ  ej	        e
¦  «        Z ed¬¦  «        e G d	„ d
e¦  «        ¦   «         ¦   «         Zd
gZdS )é    )Ústricté   )ÚPreTrainedConfig)Úauto_docstringÚloggingé   )Ú
AutoConfigzfacebook/nougat-base)Ú
checkpointc                   ó˜   ‡ — e Zd ZU dZdZeedœZdZee	z  dz  e
d<   dZee	z  dz  e
d<   dZee
d<   ˆ fd	„Zed
e	de	de	fd„¦   «         Zˆ xZS )ÚNougatConfiga3  
    encoder (`dict | PreTrainedConfig`):
        The config object or dictionary of the encoder backbone.
    decoder (`dict | PreTrainedConfig`):
        The config object or dictionary of the decoder backbone.

    Examples:

    ```python
    >>> from transformers import NougatConfig, VisionEncoderDecoderModel

    >>> # Initializing a Nougat configuration
    >>> config = NougatConfig()

    >>> # Initializing a VisionEncoderDecoder model (with random weights) from a Nougat configurations
    >>> model = VisionEncoderDecoderModel(config=config)
    ```Únougat©ÚencoderÚdecoderNr   r   TÚis_encoder_decoderc                 óÆ  •— | j         �| j        €t          d| j        › d�¦  «        ‚t	          | j         t
          ¦  «        r6| j                              d¦  «        }t          j        |fi | j         ¤Ž| _         t	          | j        t
          ¦  «        r6| j                             d¦  «        }t          j        |fi | j        ¤Ž| _         t          ¦   «         j
        di |¤Ž d S )NzA configuration of type zd cannot be instantiated because one of both `encoder` or `decoder` sub-configurations is not passed.Ú
model_type© )r   r   Ú
ValueErrorr   Ú
isinstanceÚdictÚpopr	   Ú	for_modelÚsuperÚ__post_init__)ÚselfÚkwargsÚencoder_model_typeÚdecoder_model_typeÚ	__class__s       €úm/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/transformers/models/nougat/configuration_nougat.pyr   zNougatConfig.__post_init__6   sõ   ø€ ØŒ<Ð 4¤<Ð#7ÝðX¨4¬?ð Xð Xð Xñô ð õ
 �d”l¥DÑ)Ô)ð 	TØ!%¤×!1Ò!1°,Ñ!?Ô!?ÐÝ%Ô/Ð0BÐSÐSÀdÄlÐSÐSˆDŒLÝ�d”l¥DÑ)Ô)ð 	TØ!%¤×!1Ò!1°,Ñ!?Ô!?ÐÝ%Ô/Ð0BÐSÐSÀdÄlÐSÐSˆDŒLØ�‰ŒÔÐ'Ð' Ð'Ð'Ð'Ð'Ð'ó    Úencoder_configÚdecoder_configÚreturnc                 ó°   — t                                d¦  «         d|_        d|_         | d|                     ¦   «         |                     ¦   «         dœ|¤ŽS )a  
        Instantiate a [`VisionEncoderDecoderConfig`] (or a derived class) from a pre-trained encoder model
        configuration and decoder model configuration.

        Returns:
            [`VisionEncoderDecoderConfig`]: An instance of a configuration object
        zYSetting `config.is_decoder=True` and `config.add_cross_attention=True` for decoder_configTr   r   )ÚloggerÚinfoÚ
is_decoderÚadd_cross_attentionÚto_dict)Úclsr#   r$   r   s       r!   Úfrom_encoder_decoder_configsz)NougatConfig.from_encoder_decoder_configsE   s]   € õ 	�ŠÐoÑpÔpÐpØ$(ˆÔ!Ø-1ˆÔ*àˆsÐ`˜>×1Ò1Ñ3Ô3¸^×=SÒ=SÑ=UÔ=UÐ`Ð`ÐY_Ð`Ð`Ð`r"   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r	   Úsub_configsr   r   r   Ú__annotations__r   r   Úboolr   Úclassmethodr-   Ú__classcell__)r    s   @r!   r   r      sâ   ø€ € € € € € ðð ð$ €JØ(°ZÐ@Ð@€Kà.2€GˆTÐ$Ñ$ tÑ+Ð2Ð2Ñ2Ø.2€GˆTÐ$Ñ$ tÑ+Ð2Ð2Ñ2Ø#Ð˜Ð#Ð#Ñ#ð(ð (ð (ð (ð (ð ðaØ-ðaØ?Oðaà	ðað að añ „[ðað að að að ar"   r   N)Úhuggingface_hub.dataclassesr   Úconfiguration_utilsr   Úutilsr   r   Úauto.configuration_autor	   Ú
get_loggerr.   r'   r   Ú__all__r   r"   r!   ú<module>r=      sÐ   ðð  /Ð .Ð .Ð .Ð .Ð .à 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0ð 
ˆÔ	˜HÑ	%Ô	%€ð €Ð1Ð2Ñ2Ô2Øð8að 8að 8að 8að 8aÐ#ñ 8aô 8añ „ñ 3Ô2ð8aðv Ð
€€€r"   