§
     `ƒiÅ  ã                   óp   — d dl mZ d dlmZ ddlmZmZ  ej        e¦  «        Z	 G d„ de¦  «        Z
dgZdS )é   )ÚPretrainedConfig)Úloggingé   )ÚCONFIG_MAPPINGÚ
AutoConfigc                   ób   ‡ — e Zd ZdZdZddddœZeedœZ	 	 	 	 	 	 	 ddedededede	f
ˆ fd„Z
ˆ xZS )ÚShieldGemma2Configaá  
    This is the configuration class to store the configuration of a [`ShieldGemma2ForImageClassification`]. It is used to instantiate an
    ShieldGemma2ForImageClassification according to the specified arguments, defining the model architecture. Instantiating a configuration
    with the defaults will yield a similar configuration to that of the shieldgemma-2-4b-it.

    e.g. [google/gemma-3-4b](https://huggingface.co/google/gemma-3-4b)

    Configuration objects inherit from [`PretrainedConfig`] and can be used to control the model outputs. Read the
    documentation from [`PretrainedConfig`] for more information.

    Args:
        text_config (`Union[ShieldGemma2TextConfig, dict]`, *optional*):
            The config object of the text backbone.
        vision_config (`Union[AutoConfig, dict]`,  *optional*):
            Custom vision config or dict.
        mm_tokens_per_image (`int`, *optional*, defaults to 256):
            The number of tokens per image embedding.
        boi_token_index (`int`, *optional*, defaults to 255999):
            The begin-of-image token index to wrap the image prompt.
        eoi_token_index (`int`, *optional*, defaults to 256000):
            The end-of-image token index to wrap the image prompt.
        image_token_index (`int`, *optional*, defaults to 262144):
            The image token index to encode the image prompt.
        initializer_range (`float`, *optional*, defaults to 0.02):
            The standard deviation of the truncated_normal_initializer for initializing all weight matrices.


    Example:

    ```python
    >>> from transformers import ShieldGemma2ForConditionalGeneration, ShieldGemma2Config, SiglipVisionConfig, ShieldGemma2TextConfig

    >>> # Initializing a Siglip-like vision config
    >>> vision_config = SiglipVisionConfig()

    >>> # Initializing a ShieldGemma2 Text config
    >>> text_config = ShieldGemma2TextConfig()

    >>> # Initializing a ShieldGemma2 gemma-3-4b style configuration
    >>> configuration = ShieldGemma2Config(vision_config, text_config)

    >>> # Initializing a model from the gemma-3-4b style configuration
    >>> model = ShieldGemma2TextConfig(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config
    ```Úshieldgemma2Úimage_token_indexÚboi_token_indexÚeoi_token_index)Úimage_token_idÚboi_token_idÚeoi_token_id)Útext_configÚvision_configNé   éÿç é è é   ç{®Gáz”?Úmm_tokens_per_imageÚinitializer_rangec                 ó  •— t          |t          ¦  «        r2|                     dd¦  «        |d<   t          |d                  di |¤Ž}n|€t          d         ¦   «         }|| _        t          |t          ¦  «        r2|                     dd¦  «        |d<   t          |d                  di |¤Ž}n|€t          d         ¦   «         }|| _        || _        || _        || _        || _        || _	        || _
         t          ¦   «         j        di |¤Ž d S )NÚ
model_typeÚsiglip_vision_modelÚgemma3_text© )Ú
isinstanceÚdictÚgetr   r   r   r   r   r   r   r   ÚsuperÚ__init__)
Úselfr   r   r   r   r   r   r   ÚkwargsÚ	__class__s
            €ú/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/transformers/models/shieldgemma2/configuration_shieldgemma2.pyr#   zShieldGemma2Config.__init__R   s+  ø€ õ m¥TÑ*Ô*ð 	DØ*7×*;Ò*;¸LÐJ_Ñ*`Ô*`ˆM˜,Ñ'Ý*¨=¸Ô+FÔGÐXÐXÈ-ÐXÐXˆMˆMØÐ"Ý*Ð+@ÔAÑCÔCˆMà*ˆÔåk¥4Ñ(Ô(ð 	:Ø(3¯ª¸ÀmÑ(TÔ(TˆK˜Ñ%Ý(¨°\Ô)BÔCÐRÐRÀkÐRÐRˆKˆKØÐ Ý(¨Ô7Ñ9Ô9ˆKà&ˆÔØ*ˆÔØ#6ˆÔ Ø.ˆÔØ.ˆÔØ!2ˆÔØ!2ˆÔà‰ŒÔÐ"Ð"˜6Ð"Ð"Ð"Ð"Ð"ó    )NNr   r   r   r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Úattribute_mapr   Úsub_configsÚintÚfloatr#   Ú__classcell__)r&   s   @r'   r	   r	      sÁ   ø€ € € € € ð.ð .ð`  €Jà-Ø)Ø)ðð €Mð
 #-¸zÐJÐJ€Kð ØØ#&Ø&Ø&Ø!(Ø#'ð!#ð !#ð !ð	!#ð
 ð!#ð ð!#ð ð!#ð !ð!#ð !#ð !#ð !#ð !#ð !#ð !#ð !#ð !#ð !#r(   r	   N)Úconfiguration_utilsr   Úutilsr   Úautor   r   Ú
get_loggerr)   Úloggerr	   Ú__all__r   r(   r'   ú<module>r8      s™   ðð" 4Ð 3Ð 3Ð 3Ð 3Ð 3Ø Ð Ð Ð Ð Ð Ø -Ð -Ð -Ð -Ð -Ð -Ð -Ð -ð 
ˆÔ	˜HÑ	%Ô	%€ðZ#ð Z#ð Z#ð Z#ð Z#Ð)ñ Z#ô Z#ð Z#ðz  Ð
 €€€r(   