
    i#                     v    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)    )strict   )PreTrainedConfig)auto_docstring   )CONFIG_MAPPING
AutoConfigz-mistralai/Mistral-Small-3.1-24B-Instruct-2503)
checkpointc                        e Zd ZU dZdZddiZeedZ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e   z  ed<   dZeed<   dZeed<   dZeed<    fdZ xZS )Mistral3Configa  
    Example:

    ```python
    >>> from transformers import Mistral3ForConditionalGeneration, Mistral3Config, PixtralVisionConfig, MistralConfig

    >>> # Initializing a Pixtral-vision config
    >>> vision_config = PixtralVisionConfig()

    >>> # Initializing a Mistral config
    >>> text_config = MistralConfig()

    >>> # Initializing a Mistral3 configuration
    >>> configuration = Mistral3Config(vision_config, text_config)

    >>> # Initializing a model from the mistral3.1 configuration
    >>> model = Mistral3ForConditionalGeneration(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config
    ```mistral3image_token_idimage_token_index)text_configvision_configTNr   r   
   geluprojector_hidden_actvision_feature_layerFmultimodal_projector_biasr   spatial_merge_sizetie_word_embeddingsc                    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
d	      | _        t        | j
                  t              rT| j
                  j                  dd      | j
                  d<   t	        | j
                  d      d*i | j
                  | _        nM| j
                  At	        d   d*i ddddddddddddddddddddd d!d"d#d$d%d&d d'd(d)d| _        t        |   d*i | y )+N
model_typepixtrali   i      i        i }  @   r   )	intermediate_sizehidden_size
patch_size
image_sizenum_hidden_layersnum_attention_heads
vocab_sizehead_dim
hidden_actmistralattention_dropoutg        r(      r)   silur"   i   initializer_rangeg{Gz?r!   i   max_position_embeddingsi   r&       r%   (   num_key_value_heads   rms_norm_epsgh㈵>
rope_thetag    eAsliding_window	use_cacheTr'    )
isinstancer   dictgetr   r   super__post_init__)selfkwargs	__class__s     /var/www/vps2.regionflexible.com/Desarrollo/venv/lib/python3.12/site-packages/transformers/models/mistral3/configuration_mistral3.pyr=   zMistral3Config.__post_init__A   s   d(($//3/A/A/E/ElT]/^D|,!/0B0B<0P!Q!gTXTfTf!gD'!/	!:"& "$$& !
"D d&&--1-=-=-A-A,PY-ZD\*-d.>.>|.LMaPTP`P`aD%-i8  "%   "  !	 
 #'  #(  )/  %  %'  #%  %&  #  (   $     "! D& 	''    )__name__
__module____qualname____doc__r   attribute_mapr	   sub_configsis_compositionr   r:   r   __annotations__r   r   intr   strr   listr   boolr   r   r=   __classcell__)r@   s   @rA   r   r      s    , J-M #-zJKN48M4**T1826K((4/6s &#&,.#S	/.&+t+ $$(( ((rB   r   N)huggingface_hub.dataclassesr   configuration_utilsr   utilsr   autor   r	   r   __all__r8   rB   rA   <module>rU      sL   " / 3 # - JKO(% O(  LO(d 
rB   