§
    ‚Štjƒ  ã                   óV  — d dl mZ ddlmZ ddlmZmZ ddlmZm	Z	  ej
        e¦  «        Z ed¬¦  «        e G d	„ d
e¦  «        ¦   «         ¦   «         Z ed¬¦  «        e G d„ de¦  «        ¦   «         ¦   «         Z ed¬¦  «        e G d„ de¦  «        ¦   «         ¦   «         Zg d¢ZdS )é    )Ústricté   )ÚPreTrainedConfig)Úauto_docstringÚloggingé   )ÚCONFIG_MAPPINGÚ
AutoConfigzdeepseek-community/Janus-Pro-1B)Ú
checkpointc                   ó€  — e Zd ZU dZ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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z  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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%S )&ÚJanusVisionConfigzÕ
    projection_dropout (`float`, *optional*, defaults to 0.0):
        Dropout probability for the projection layer.
    num_image_tokens (`int`, *optional*, defaults to 576):
        Number of image tokens.
    Újanus_vision_modelÚvision_configi   Úhidden_sizeé   Únum_hidden_layersé   Únum_attention_headsr   Únum_channelsi€  Ú
image_sizeÚ
patch_sizeÚgeluÚ
hidden_actg�íµ ÷Æ°>Úlayer_norm_epsç        Úattention_dropoutg      @Ú	mlp_ratioTÚattention_biasÚhidden_dropout_rateé   Úprojection_dimÚprojection_dropoutFÚuse_qk_normç{®Gáz”?Úinitializer_ranger   Údepthi@  Únum_image_tokensN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú
model_typeÚbase_config_keyr   ÚintÚ__annotations__r   r   r   r   ÚlistÚtupler   r   Ústrr   Úfloatr   r   r   Úboolr   r!   r"   r#   r%   r&   r'   © ó    úk/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/transformers/models/janus/configuration_janus.pyr   r      s†  € € € € € € ðð ð &€JØ%€Oà€K�ÐÐÑØÐ�sÐÐÑØ!Ð˜Ð!Ð!Ñ!Ø€L�#ÐÐÑØ47€J��d˜3”i‘ %¨¨S¨¤/Ñ1Ð7Ð7Ñ7Ø46€J��d˜3”i‘ %¨¨S¨¤/Ñ1Ð6Ð6Ñ6Ø€J�ÐÐÑØ €N�EÐ Ð Ñ Ø%(Ð�u˜s‘{Ð(Ð(Ñ(Ø €Iˆu�s‰{Ð Ð Ñ Ø€N�DÐÐÑØ'*Ð˜ ™Ð*Ð*Ñ*Ø€N�CÐÐÑØ&)Ð˜ ™Ð)Ð)Ñ)Ø€K�ÐÐÑØ#Ð�uÐ#Ð#Ñ#Ø€Eˆ3€N€N�NØÐ�cÐÐÑÐÐr6   r   c                   ó$  — e Zd ZU dZ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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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"S )#ÚJanusVQVAEConfiga   
    base_channels (`int`, *optional*, defaults to 128):
        Base channel count.
    channel_multiplier (`list[int]`, *optional*, defaults to `[1, 1, 2, 2, 4]`):
        Channel multipliers for each resolution.
    num_res_blocks (`int`, *optional*, defaults to 2):
        Number of residual blocks.
    num_patches (`int`, *optional*, defaults to 32):
        Num of patches the input images can be divided into.
    out_channels (`int`, *optional*, defaults to 3):
        Number of out channels.
    image_token_embed_dim (`int`, *optional*, defaults to 2048):
        Dimension of image embeddings. It should be same as the dimensionality of text embeddings.
    Újanus_vqganÚ	vq_configé   Ú	embed_dimi @  Únum_embeddingsFÚdouble_latenté   Úlatent_channelsr   Úin_channelsé€   Úbase_channels)é   rE   r   r   é   .Úchannel_multiplierr   Únum_res_blocksr   Údropoutr$   r%   é    Únum_patchesÚout_channelsr    r!   r   r   r   Úimage_token_embed_dimN)r(   r)   r*   r+   r,   r-   r=   r.   r/   r>   r?   r4   rA   rB   rD   rG   r0   r1   rH   rI   r3   r%   rK   rL   r!   r   r   r2   rM   r5   r6   r7   r9   r9   @   sA  € € € € € € ðð ð €JØ!€Oà€IˆsÐÐÑØ€N�CÐÐÑØ€M�4ÐÐÑØ€O�SÐÐÑØ€K�ÐÐÑØ€M�3ÐÐÑØ6EÐ˜˜Sœ	 E¨#¨s¨(¤OÑ3ÐEÐEÑEØ€N�CÐÐÑØ€GˆU�S‰[ÐÐÑØ#Ð�uÐ#Ð#Ñ#Ø€K�ÐÐÑØ€L�#ÐÐÑØ€N�CÐÐÑØÐ�sÐÐÑØ€J�ÐÐÑØ!%Ð˜3Ð%Ð%Ñ%Ð%Ð%r6   r9   c                   óž   ‡ — e Zd ZU dZdZe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z  dz  ed<   dZeed	<   d
Zeed<   ˆ fd„Zˆ xZS )ÚJanusConfiga  
    Example:

    ```python
    >>> from transformers import JanusForConditionalGeneration, JanusConfig, JanusVisionConfig, JanusVQVAEConfig, LlamaConfig

    >>> # Initializing a Janus vision config
    >>> vision_config = JanusVisionConfig()

    >>> # Initializing a Llama config
    >>> text_config = LlamaConfig()

    >>> # Initializing a VQ config
    >>> vq_config = JanusVQVAEConfig()

    >>> # Initializing a Janus Pro 1B style configuration
    >>> configuration = JanusConfig(vision_config=vision_config, text_config=text_config, vq_config=vq_config)

    >>> # Initializing a model from the Janus Pro 1B style configuration
    >>> model = JanusForConditionalGeneration(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config
    ```Újanus)Útext_configr   r;   NrQ   r   r;   iåˆ Úimage_token_idTÚtie_word_embeddingsc                 óR  •— t          | j        t          ¦  «        rK| j                             dd¦  «        | j        d<   t	          | j        d                  di | j        ¤Ž| _        n:| j        €3t
                               d¦  «         t	          d         ¦   «         | _        | j        €.t
                               d¦  «         t          ¦   «         | _        n0t          | j        t          ¦  «        rt          di | j        ¤Ž| _        | j	        €.t
                               d¦  «         t          ¦   «         | _	        n0t          | j	        t          ¦  «        rt          di | j	        ¤Ž| _	        | j        j        | j        j        z  | j	        _         t          ¦   «         j        di |¤Ž d S )Nr,   Úllamaz7`text_config` is None. Initializing with default valueszK`vision_config` is None. Initializing with default JanusVisionConfig valueszF`vq_config` is None. Initializing with default JanusVQVAEConfig valuesr5   )Ú
isinstancerQ   ÚdictÚgetr	   ÚloggerÚinfor   r   r;   r9   r   r   rK   ÚsuperÚ__post_init__)ÚselfÚkwargsÚ	__class__s     €r7   r\   zJanusConfig.__post_init__�   s„  ø€ Ý�dÔ&­Ñ-Ô-ð 	9Ø-1Ô-=×-AÒ-AÀ,ÐPWÑ-XÔ-XˆDÔ˜\Ñ*Ý-¨dÔ.>¸|Ô.LÔMÐaÐaÐPTÔP`ÐaÐaˆDÔÐØÔÐ%Ý�KŠKÐQÑRÔRÐRÝ-¨gÔ6Ñ8Ô8ˆDÔàÔÐ%Ý�KŠKÐeÑfÔfÐfÝ!2Ñ!4Ô!4ˆDÔÐÝ˜Ô*­DÑ1Ô1ð 	IÝ!2Ð!HÐ!H°TÔ5GÐ!HÐ!HˆDÔàŒ>Ð!Ý�KŠKÐ`ÑaÔaÐaÝ-Ñ/Ô/ˆDŒNˆNÝ˜œ­Ñ-Ô-ð 	@Ý-Ð?Ð?°´Ð?Ð?ˆDŒNð &*Ô%7Ô%BÀdÔFXÔFcÑ%cˆŒÔ"Ø�‰ŒÔÐ'Ð' Ð'Ð'Ð'Ð'Ð'r6   )r(   r)   r*   r+   r,   r
   r   r9   Úsub_configsrQ   rW   r   r/   r   r;   rR   r.   rS   r4   r\   Ú__classcell__)r_   s   @r7   rO   rO   g   sÔ   ø€ € € € € € ðð ð2 €Jà!Ø*Ø%ðð €Kð 37€K�Ð(Ñ(¨4Ñ/Ð6Ð6Ñ6Ø48€M�4Ð*Ñ*¨TÑ1Ð8Ð8Ñ8Ø04€IˆtÐ&Ñ&¨Ñ-Ð4Ð4Ñ4Ø €N�CÐ Ð Ñ Ø $Ð˜Ð$Ð$Ñ$ð(ð (ð (ð (ð (ð (ð (ð (ð (r6   rO   )r9   r   rO   N)Úhuggingface_hub.dataclassesr   Úconfiguration_utilsr   Úutilsr   r   Úautor	   r
   Ú
get_loggerr(   rY   r   r9   rO   Ú__all__r5   r6   r7   ú<module>rh      ss  ðð* /Ð .Ð .Ð .Ð .Ð .à 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø -Ð -Ð -Ð -Ð -Ð -Ð -Ð -ð 
ˆÔ	˜HÑ	%Ô	%€ð €Ð<Ð=Ñ=Ô=Øð ð  ð  ð  ð  Ð(ñ  ô  ñ „ñ >Ô=ð ð> €Ð<Ð=Ñ=Ô=Øð"&ð "&ð "&ð "&ð "&Ð'ñ "&ô "&ñ „ñ >Ô=ð"&ðJ €Ð<Ð=Ñ=Ô=Øð=(ð =(ð =(ð =(ð =(Ð"ñ =(ô =(ñ „ñ >Ô=ð=(ð@ CÐ
BÐ
B€€€r6   