Ë
    ÛÓ^j\  ã                   óä   — d dl mZ ddlmZ ddlmZ ddlm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y)é    )Ústricté   )ÚPreTrainedConfig)ÚRopeParameters)Úauto_docstringzzai-org/GLM-4.1V-9B-Thinking)Ú
checkpointc                   óF  — 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z  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e   z  eeef   z  ed<   dZeed<   dZeed<   dZeed <   y!)"ÚGlm4vVisionConfiga,  
    out_hidden_size (`int`, *optional*, defaults to 4096):
        The output hidden size of the vision model.

    Example:

    ```python
    >>> from transformers import Glm4vVisionConfig, Glm4vVisionModel

    >>> # Initializing a Glm4vVisionConfig GLM-4.1V-9B style configuration
    >>> configuration = Glm4vVisionConfig()

    >>> # Initializing a model (with random weights) from the GLM-4.1V-9B configuration
    >>> model = Glm4vVisionModel(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config
    ```Úglm4v_visionÚvision_configé   Údepthi   Úhidden_sizeÚsiluÚ
hidden_actFÚattention_biasç        Úattention_dropouté   Ú	num_headsr   Úin_channelsiP  Ú
image_sizeé   Ú
patch_sizeçñhãˆµøä>Úrms_norm_epsé   Úspatial_merge_sizeÚtemporal_patch_sizeé   Úout_hidden_sizeé€5  Úintermediate_sizeç{®Gáz”?Úinitializer_rangeN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú
model_typeÚbase_config_keyr   ÚintÚ__annotations__r   r   Ústrr   Úboolr   Úfloatr   r   r   ÚlistÚtupler   r   r   r   r!   r#   r%   © ó    úx/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/transformers/models/glm4v/configuration_glm4v.pyr
   r
      sð   … ñð&  €JØ%€Oà€Eˆ3ƒOØ€K�ÓØ€J�ÓØ €N�DÓ Ø%(Ð�u˜s‘{Ó(Ø€IˆsÓØ€K�ÓØ47€J��d˜3‘i‘ %¨¨S¨¡/Ñ1Ó7Ø46€J��d˜3‘i‘ %¨¨S¨¡/Ñ1Ó6Ø€L�%ÓØÐ˜ÓØ=>Ð˜˜t C™y™¨5°°c°©?Ñ:Ó>Ø€O�SÓØ"Ð�sÓ"Ø#Ð�uÔ#r4   r
   c                   óR  ‡ — e Zd ZU dZdZdZdgZddddddd	œZd
gdgfddgdgfdgdgfdœZdh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d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z  ed(<   dZeez  dz  ed)<   dZedz  ed*<   ˆ fd+„Zˆ xZ S ),ÚGlm4vTextConfiga„  
    Example:

    ```python
    >>> from transformers import Glm4vTextModel, Glm4vConfig

    >>> # Initializing a GLM-4.1V style configuration
    >>> configuration = Glm4vConfig()

    >>> # Initializing a model from the GLM-4.1V style configuration
    >>> model = Glm4vTextModel(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config
    ```Ú
glm4v_textÚtext_configÚpast_key_valuesÚcolwiseÚrowwiseÚcolwise_gather_outputÚrowwise_split_input)zlayers.*.self_attn.q_projzlayers.*.self_attn.k_projzlayers.*.self_attn.v_projzlayers.*.self_attn.o_projzlayers.*.mlp.gate_up_projzlayers.*.mlp.down_projÚ	input_idsÚinputs_embedsÚhidden_statesÚattention_mask)Úembed_tokensÚlayersÚnormÚmrope_sectioni P Ú
vocab_sizer    r   r"   r#   é(   Únum_hidden_layersé    Únum_attention_headsr   NÚnum_key_value_headsr   r   i €  Úmax_position_embeddingsr$   r%   r   r   TÚ	use_cacher   r   Úrope_parametersÚpad_token_idc                 ó^   •— | j                   €| j                  | _         t        ‰| �  di |¤Ž y )Nr3   )rL   rK   ÚsuperÚ__post_init__©ÚselfÚkwargsÚ	__class__s     €r5   rS   zGlm4vTextConfig.__post_init__z   s-   ø€ Ø×#Ñ#Ð+Ø'+×'?Ñ'?ˆDÔ$ä‰ÑÑ' Ó'r4   )!r&   r'   r(   r)   r*   r+   Úkeys_to_ignore_at_inferenceÚbase_model_tp_planÚbase_model_pp_planÚignore_keys_at_rope_validationrG   r,   r-   r   r#   rI   rK   rL   r   r.   rM   r%   r0   r   rN   r/   r   rO   r   ÚdictrP   rS   Ú__classcell__©rW   s   @r5   r7   r7   E   s-  ø… ñð  €JØ#€OØ#4Ð"5Ðð &/Ø%.Ø%.Ø%.Ø%<Ø"7ñÐð &˜¨Ð(9Ð:Ø#Ð%5Ð6¸Ð8IÐJØ!Ð" _Ð$5Ð6ñÐð
 '6Ð%6Ð"à€J�ÓØ€K�ÓØ"Ð�sÓ"ØÐ�sÓØ!Ð˜Ó!Ø&'Ð˜˜t™Ó'Ø€J�ÓØ#(Ð˜SÓ(Ø#Ð�uÓ#Ø€L�%ÓØ€IˆtÓØ%(Ð�u˜s‘{Ó(Ø48€O�^ dÑ*¨TÑ1Ó8Ø#€L�#˜‘*Ó#÷(ð (r4   r7   c                   óÎ   ‡ — e Zd ZU dZdZeedœZdg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d<   dZeed<   dZeed<   dZeed<   ˆ fd„Zˆ xZS )ÚGlm4vConfiga™  
    image_start_token_id (`int`, *optional*, defaults to 151339):
        The image start token index to encode the start of image.
    image_end_token_id (`int`, *optional*, defaults to 151340):
        The image end token index to encode the end of image.
    video_start_token_id (`int`, *optional*, defaults to 151341):
        The video start token index to encode the start of video.
    video_end_token_id (`int`, *optional*, defaults to 151342):
        The video end token index to encode the end of video.

    ```python
    >>> from transformers import Glm4vForConditionalGeneration, Glm4vConfig

    >>> # Initializing a GLM-4.1V style configuration
    >>> configuration = Glm4vConfig()

    >>> # Initializing a model from the GLM-4.1V style configuration
    >>> model = Glm4vForConditionalGeneration(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config
    ```Úglm4v)r   r9   r:   Nr9   r   i/O Úimage_token_idi0O Úvideo_token_idi+O Úimage_start_token_idi,O Úimage_end_token_idi-O Úvideo_start_token_idi.O Úvideo_end_token_idFÚtie_word_embeddingsc                 ó¸  •— t        | j                  t        «      r% | j                  d   di | j                  ¤Ž| _        n&| j                  € | j                  d   di |¤Ž| _        t        | j                  t        «      r% | j                  d   di | j                  ¤Ž| _        n&| j                  € | j                  d   di |¤Ž| _        t        ‰| �  di |¤Ž y )Nr   r9   r3   )Ú
isinstancer   r\   Úsub_configsr9   rR   rS   rT   s     €r5   rS   zGlm4vConfig.__post_init__©   sË   ø€ Ü�d×(Ñ(¬$Ô/Ø!B ×!1Ñ!1°/Ñ!BÑ!XÀT×EWÑEWÑ!XˆDÕØ×ÑÐ'Ø!B ×!1Ñ!1°/Ñ!BÑ!LÀVÑ!LˆDÔä�d×&Ñ&¬Ô-Ø>˜t×/Ñ/°Ñ>ÑRÀ×AQÑAQÑRˆDÕØ×ÑÐ%Ø>˜t×/Ñ/°Ñ>ÑHÀÑHˆDÔä‰ÑÑ' Ó'r4   )r&   r'   r(   r)   r*   r
   r7   rk   rX   r9   r\   r   r-   r   rb   r,   rc   rd   re   rf   rg   rh   r/   rS   r]   r^   s   @r5   r`   r`   �   s¡   ø… ñð. €JØ$5ÀoÑV€KØ#4Ð"5Ðà26€K�Ð(Ñ(¨4Ñ/Ó6Ø48€M�4Ð*Ñ*¨TÑ1Ó8Ø €N�CÓ Ø €N�CÓ Ø &Ð˜#Ó&Ø$Ð˜Ó$Ø &Ð˜#Ó&Ø$Ð˜Ó$Ø %Ð˜Ó%÷(ð (r4   r`   )r`   r7   r
   N)Úhuggingface_hub.dataclassesr   Úconfiguration_utilsr   Úmodeling_rope_utilsr   Úutilsr   r
   r7   r`   Ú__all__r3   r4   r5   ú<module>rq      sœ   ðõ( /å 3Ý 1Ý #ñ Ð9Ô:Øô%$Ð(ó %$ó ó ;ð%$ñP Ð9Ô:Øô7(Ð&ó 7(ó ó ;ð7(ñt Ð9Ô:Øô1(Ð"ó 1(ó ó ;ð1(òh B�r4   