Ë
    ÜÓ^jI  ã                   óz   — d Z ddlmZ ddlmZ ddlmZ ddlmZm	Z	  ed¬	«      e G d
„ de«      «       «       Z
dgZy)zVipLlava model configurationé    )Ústricté   )ÚPreTrainedConfig)Úauto_docstringé   )ÚCONFIG_MAPPINGÚ
AutoConfigzllava-hf/vip-llava-7b-hf)Ú
checkpointc                   óÞ   ‡ — e Zd ZU dZdZddi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<   d
Zeed<   dZeed<   dZeee   z  eedf   z  ed<   dZeed<   dZeed<   ˆ fd„Zˆ xZS )ÚVipLlavaConfiga×  
    projector_layernorm_eps (`float`, *optional*, defaults to 1e-05):
        The layer norm epsilon of the projector layernorm
    vision_feature_layers (`Union[int, list[int]]`, *optional*, defaults to `[-2, -5, -8, -11, 6]`):
        The vision feature layer, or list of layers to select the vision features from.

    Example:

    ```python
    >>> from transformers import VipLlavaForConditionalGeneration, VipLlavaConfig, CLIPVisionConfig, LlamaConfig

    >>> # Initializing a CLIP-vision config
    >>> vision_config = CLIPVisionConfig()

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

    >>> # Initializing a VipLlava vipllava-7b style configuration
    >>> configuration = VipLlavaConfig(vision_config, text_config)

    >>> # Initializing a model from the vipllava-7b style configuration
    >>> model = VipLlavaForConditionalGeneration(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config
    ```ÚvipllavaÚimage_token_idÚimage_token_index)Útext_configÚvision_configNr   r   é }  ÚgeluÚprojector_hidden_actgñhãˆµøä>Úprojector_layernorm_eps)éþÿÿÿéûÿÿÿiøÿÿÿiõÿÿÿé   .Úvision_feature_layersi@  Úimage_seq_lengthFÚtie_word_embeddingsc           
      óf  •— t        | j                  t        «      rT| j                  j                  dd«      | j                  d<   t	        | j                  d      di | j                  ¤Ž| _        n'| j                  €t	        d   ddddddd	d
¬«      | _        t        | j
                  t        «      rT| j
                  j                  dd«      | j
                  d<   t	        | j
                  d      di | j
                  ¤Ž| _        n| j
                  €t	        d   «       | _        t        ‰| �  di |¤Ž y )NÚ
model_typeÚclip_vision_modeli   i   é   iP  é   é   r   i   )Úintermediate_sizeÚhidden_sizeÚ
patch_sizeÚ
image_sizeÚnum_hidden_layersÚnum_attention_headsÚ
vocab_sizeÚprojection_dimÚllama© )Ú
isinstancer   ÚdictÚgetr   r   ÚsuperÚ__post_init__)ÚselfÚkwargsÚ	__class__s     €ú~/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/transformers/models/vipllava/configuration_vipllava.pyr0   zVipLlavaConfig.__post_init__C   s  ø€ Ü�d×(Ñ(¬$Ô/Ø/3×/AÑ/A×/EÑ/EÀlÐTgÓ/hˆD×Ñ˜|Ñ,Ü!/°×0BÑ0BÀ<Ñ0PÑ!QÑ!gÐTX×TfÑTfÑ!gˆDÕØ×ÑÐ'Ü!/Ð0CÑ!DØ"&Ø ØØØ"$Ø$&Ø Ø"ô	"ˆDÔô �d×&Ñ&¬Ô-Ø-1×-=Ñ-=×-AÑ-AÀ,ÐPWÓ-XˆD×Ñ˜\Ñ*Ü-¨d×.>Ñ.>¸|Ñ.LÑMÑaÐPT×P`ÑP`ÑaˆDÕØ×ÑÐ%Ü-¨gÑ6Ó8ˆDÔä‰ÑÑ' Ó'ó    )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Úattribute_mapr	   Úsub_configsr   r-   r   Ú__annotations__r   r   Úintr   Ústrr   Úfloatr   ÚlistÚtupler   r   Úboolr0   Ú__classcell__)r3   s   @r4   r   r      s³   ø… ñð6 €JàÐ-ð€Mð #-¸zÑJ€Kà48€M�4Ð*Ñ*¨TÑ1Ó8Ø26€K�Ð(Ñ(¨4Ñ/Ó6Ø"Ð�sÓ"Ø &Ð˜#Ó&Ø%)Ð˜UÓ)Ø?SÐ˜3  c¡™?¨U°3¸°8©_Ñ<ÓSØÐ�cÓØ %Ð˜Ó%÷(ð (r5   r   N)r9   Úhuggingface_hub.dataclassesr   Úconfiguration_utilsr   Úutilsr   Úautor   r	   r   Ú__all__r+   r5   r4   ú<module>rI      sN   ðñ #å .å 3Ý #ß -ñ Ð5Ô6ØôA(Ð%ó A(ó ó 7ðA(ðH Ð
�r5   