ó
    qyüiü  ã                   óÌ   • S SK Jr  SSKJr  SSKJrJr  SSKJrJ	r	  \R                  " \5      r\" SS9\ " S	 S
\5      5       5       r\" SS9\ " S S\5      5       5       rS
S/rg)é    )Ústricté   )ÚPreTrainedConfig)Úauto_docstringÚloggingé   )ÚCONFIG_MAPPINGÚ
AutoConfigz$HuggingFaceTB/SmolVLM2-2.2B-Instruct)Ú
checkpointc                   óú   • \ rS rSr% SrSrSrSr\\	S'   Sr
\\	S'   S	r\\	S
'   Sr\\	S'   Sr\\	S'   Sr\\\   -  \\\4   -  \	S'   Sr\\\   -  \\\4   -  \	S'   Sr\\	S'   Sr\\	S'   Sr\\-  \	S'   Sr\\	S'   Srg)ÚSmolVLMVisionConfigé!   aS  
Example:

```python
>>> from transformers.models.smolvlm.modeling_smolvlm import SmolVLMVisionTransformer
>>> from transformers.models.smolvlm.configuration_smolvlm import SmolVLMVisionConfig

>>> # Initializing a SmolVLMVisionConfig with google/siglip-so400m-patch14-384 style configuration
>>> configuration = SmolVLMVisionConfig()

>>> # Initializing a SmolVLMVisionTransformer (with random weights) from the google/siglip-so400m-patch14-384 style configuration
>>> model = SmolVLMVisionTransformer(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config
```Úsmolvlm_visionÚvision_configi€  Úhidden_sizei   Úintermediate_sizeé   Únum_hidden_layersé   Únum_attention_headsr   Únum_channelséà   Ú
image_sizeé    Ú
patch_sizeÚgelu_pytorch_tanhÚ
hidden_actg�íµ ÷Æ°>Úlayer_norm_epsg        Úattention_dropoutg{®Gáz”?Úinitializer_range© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú
model_typeÚbase_config_keyr   ÚintÚ__annotations__r   r   r   r   r   ÚlistÚtupler   r   Ústrr   Úfloatr   r    Ú__static_attributes__r!   ó    Ún/home/mande/repo/quber/.venv/lib/python3.13/site-packages/transformers/models/smolvlm/configuration_smolvlm.pyr   r   !   s´   ‡ ñð" "€JØ%€Oà€K�ÓØ!Ð�sÓ!ØÐ�sÓØ!Ð˜Ó!Ø€L�#ÓØ47€J��d˜3‘i‘ %¨¨S¨¡/Ñ1Ó7Ø46€J��d˜3‘i‘ %¨¨S¨¡/Ñ1Ó6Ø)€J�Ó)Ø €N�EÓ Ø%(Ð�u˜s‘{Ó(Ø#Ð�uÖ#r0   r   c                   ó¼   ^ • \ rS rSr% SrSr\\S.rSr	\
\S'   Sr\\S'   S	r\
\S
'   Sr\\-  S-  \S'   Sr\\-  S-  \S'   Sr\\S'   Sr\S-  \S'   U 4S jrSrU =r$ )ÚSmolVLMConfigéE   a–  
scale_factor (`int`, *optional*, defaults to 2):
    The scale factor for the image encoder.

Example:
```python
>>> from transformers import SmolVLMModel, SmolVLMConfig
>>> # Initializing configuration
>>> configuration = SmolVLMConfig()
>>> # Initializing a model from the configuration
>>> model = SmolVLMModel(configuration)
>>> # Accessing the model configuration
>>> configuration = model.config
```Úsmolvlm)Útext_configr   TÚ	use_cacheiõ Úimage_token_idFÚtie_word_embeddingsNr   r6   r   Úscale_factoriô Úpad_token_idc                 ób  >• U R                   c%  [        5       U l         [        R                  S5        O9[	        U R                   [
        5      (       a  [        S0 U R                   D6U l         [	        U R                  [
        5      (       aU  U R                  R                  SS5      U R                  S'   [        U R                  S      " S0 U R                  D6U l        O?U R                  c2  [        R                  S5        [        S   " SU R                  S9U l        [        TU ],  " S0 UD6  g )Nz2vision_config is None, using default vision configr'   Úllamaz4text_config is None, using default Llama text configgñhãˆµøä>)Úrms_norm_epsr;   r!   )r   r   ÚloggerÚinfoÚ
isinstanceÚdictr6   Úgetr	   r;   ÚsuperÚ__post_init__)ÚselfÚkwargsÚ	__class__s     €r1   rE   ÚSmolVLMConfig.__post_init__b   s÷   ø€ Ø×ÑÑ%Ü!4Ó!6ˆDÔÜ�K‰KÐLÕMÜ˜×*Ñ*¬D×1Ñ1Ü!4Ñ!J°t×7IÑ7IÑ!JˆDÔä�d×&Ñ&¬×-Ñ-Ø-1×-=Ñ-=×-AÑ-AÀ,ÐPWÓ-XˆD×Ñ˜\Ñ*Ü-¨d×.>Ñ.>¸|Ñ.LÒMÑaÐPT×P`ÑP`ÑaˆDÕØ×ÑÑ%Ü�K‰KÐNÔOÜ-¨gÒ6Ø!Ø!×.Ñ.ñ ˆDÔô
 	‰ÒÑ' Ó'r0   )r"   r#   r$   r%   r&   r'   r
   r   Úsub_configsr7   Úboolr*   r8   r)   r9   r   rB   r   r6   r:   r;   rE   r/   Ú__classcell__)rH   s   @r1   r3   r3   E   s…   ø‡ ñð €JØ",Ð?RÑS€Kà€IˆtÓØ €N�CÓ Ø %Ð˜Ó%Ø48€M�4Ð*Ñ*¨TÑ1Ó8Ø26€K�Ð(Ñ(¨4Ñ/Ó6Ø€L�#ÓØ&€L�#˜‘*Ó&÷(ó (r0   r3   N)Úhuggingface_hub.dataclassesr   Úconfiguration_utilsr   Úutilsr   r   Úautor	   r
   Ú
get_loggerr"   r?   r   r3   Ú__all__r!   r0   r1   Ú<module>rS      s‰   ðõ. /å 3ß ,ß -ð 
×	Ò	˜HÓ	%€ñ ÐAÑBØô$Ð*ó $ó ó Cð$ñD ÐAÑBØô,(Ð$ó ,(ó ó Cð,(ð^ ! /Ð
2�r0   