+
    œ°³jÆ  ã                   ót   € ^ RI Ht ^ RIHt ^RIHt ^RIHt ]! RR7      ] ! R R]4      4       4       tR.t	R	# )
é    )ÚLiteral)Ústrict)ÚPreTrainedConfig)Úauto_docstringzanswerdotai/ModernBERT-base)Ú
checkpointc                   ó"  a a€ ] tR t^t oRtRtR.tRRRR/tRtR	t	R
t
^t^tRtRtRtRtRtRtRtRtRtRtRtRtRtRtRt^€tRtRtRtRt Rt!Rt"Rt#Rt$Rt%Rt&Rt'Rt(V 3R lt)R t*V 3R lt+],R 4       t-]-P\                  R 4       t-V3R lt/Rt0Vt1V ;t2# ) ÚModernBertConfigaŸ  
initializer_cutoff_factor (`float`, *optional*, defaults to 2.0):
    The cutoff factor for the truncated_normal_initializer for initializing all weight matrices.
norm_eps (`float`, *optional*, defaults to 1e-05):
    The epsilon used by the rms normalization layers.
norm_bias (`bool`, *optional*, defaults to `False`):
    Whether to use bias in the normalization layers.
local_attention (`int`, *optional*, defaults to 128):
    The window size for local attention.
mlp_dropout (`float`, *optional*, defaults to 0.0):
    The dropout ratio for the MLP layers.
decoder_bias (`bool`, *optional*, defaults to `True`):
    Whether to use bias in the decoder layers.
classifier_pooling (`str`, *optional*, defaults to `"cls"`):
    The pooling method for the classifier. Should be either `"cls"` or `"mean"`. In local attention layers, the
    CLS token doesn't attend to all tokens on long sequences.
classifier_bias (`bool`, *optional*, defaults to `False`):
    Whether to use bias in the classifier.
classifier_activation (`str`, *optional*, defaults to `"gelu"`):
    The activation function for the classifier.
deterministic_flash_attn (`bool`, *optional*, defaults to `False`):
    Whether to use deterministic flash attention. If `False`, inference will be faster but not deterministic.
sparse_prediction (`bool`, *optional*, defaults to `False`):
    Whether to use sparse prediction for the masked language model instead of returning the full dense logits.
sparse_pred_ignore_index (`int`, *optional*, defaults to -100):
    The index to ignore for the sparse prediction.

Examples:

```python
>>> from transformers import ModernBertModel, ModernBertConfig

>>> # Initializing a ModernBert style configuration
>>> configuration = ModernBertConfig()

>>> # Initializing a model from the modernbert-base style configuration
>>> model = ModernBertModel(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config
```Ú
modernbertÚpast_key_valuesÚglobalg     ˆAÚlocalg     ˆÃ@iÀÄ  i   i€  Úgelui    g{®Gáz”?g       @gñhãˆµøä>FikÄ  ijÄ  iiÄ  g        NTÚclsc                óø   <€ VP                  R ^4      pV P                  fD   \        V P                  4       Uu. uF  p\	        W2,          4      '       d   RMRNK   	  upV n        \
        SV `  ! R/ VB  R# u upi )Úglobal_attn_every_n_layersNÚsliding_attentionÚfull_attention© )ÚgetÚlayer_typesÚrangeÚnum_hidden_layersÚboolÚsuperÚ__post_init__)ÚselfÚkwargsr   ÚiÚ	__class__s   &,  €Úx/home/luca/screen-checking/.venv/lib/python3.14/site-packages/transformers/models/modernbert/configuration_modernbert.pyr   ÚModernBertConfig.__post_init__q   sy   ø€ à%+§Z¡ZÐ0LÈaÓ%PÐ"Ø×ÑÒ#ô ˜t×5Ñ5Ô6ó á6�Aô (,¨AÕ,J×'KÒ'KÑ#ÐQaÒaÙ6ñ ˆDÔô
 	‰ÒÑ' Ô'ùò s   ¹$A7c                óø  € VP                  R R4      pRRR/RRR//pV P                  e   V P                  MTV n        VeE   V P                  R,          P                  V4       V P                  R,          P                  V4       V P                  P                  R4      f   RR/V P                  R&   V P                  R,          P	                  RVP                  RV P
                  R,          4      4       V P                  P                  R4      f   RR/V P                  R&   V P                  R,          P	                  RVP                  R	V P
                  R
,          4      4       V P                  4        V# )Úrope_scalingNr   Ú	rope_typeÚdefaultr   Ú
rope_thetaÚglobal_rope_thetar   Úlocal_rope_thetar   )ÚpopÚrope_parametersÚupdater   Ú
setdefaultÚdefault_thetaÚstandardize_rope_params)r   r   r#   Údefault_rope_paramss   &,  r    Úconvert_rope_params_to_dictÚ,ModernBertConfig.convert_rope_params_to_dict|   sg  € Ø—z‘z .°$Ó7ˆð
   +¨yÐ!9Ø˜{¨IÐ6ð
Ðð 8<×7KÑ7KÒ7W˜t×3Ò3Ð]pˆÔØÒ#Ø× Ñ Ð!1Õ2×9Ñ9¸,ÔGØ× Ñ Ð!4Õ5×<Ñ<¸\ÔJð ×Ñ×#Ñ#Ð$4Ó5Ò=Ø6AÀ9Ð5MˆD× Ñ Ð!1Ñ2Ø×ÑÐ-Õ.×9Ñ9Ø˜&Ÿ*™*Ð%8¸$×:LÑ:LÈXÕ:VÓWô	
ð ×Ñ×#Ñ#Ð$7Ó8Ò@Ø9DÀiÐ8PˆD× Ñ Ð!4Ñ5Ø×ÑÐ0Õ1×<Ñ<Ø˜&Ÿ*™*Ð%7¸×9KÑ9KÈGÕ9TÓUô	
ð
 	×$Ñ$Ô&Øˆó    c                óH   <€ \         SV `  4       pVP                  R R4       V# )Úreference_compileN)r   Úto_dictr)   )r   Úoutputr   s   & €r    r5   ÚModernBertConfig.to_dictš   s#   ø€ Ü‘‘Ó"ˆØ�
‰
Ð&¨Ô-Øˆr2   c                ó(   € V P                   ^,          # )zKHalf-window size: `local_attention` is the total window, so we divide by 2.©Úlocal_attention)r   s   &r    Úsliding_windowÚModernBertConfig.sliding_windowŸ   s   € ð ×#Ñ# qÕ(Ð(r2   c                ó"   € V^,          V n         R# )z<Set sliding_window by updating local_attention to 2 * value.Nr9   )r   Úvalues   &&r    r;   r<   ¤   s   € ð  % q�yˆÖr2   c                óª  <€ V ^8„  d   Qh/ S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[;R&   S[ ;R&   S[;R&   S[;R	&   S[;R
&   S[;R&   S[ R,          ;R&   S[ S[S[ ,          ,          R,          ;R&   S[ R,          ;R&   S[ R,          ;R&   S[ R,          ;R&   S[;R&   S[S[ ,          ;R&   S[S[,          R,          ;R&   S[S[R#,          S[3,          R,          ;R&   S[ ;R&   S[S[ ,          ;R&   S[;R&   S[S[ ,          ;R&   S[;R&   S[R$,          ;R&   S[S[ ,          ;R&   S[;R&   S[;R&   S[;R&   S[;R &   S[ ;R!&   S[;R"&   # )%é   Ú
vocab_sizeÚhidden_sizeÚintermediate_sizer   Únum_attention_headsÚhidden_activationÚmax_position_embeddingsÚinitializer_rangeÚinitializer_cutoff_factorÚnorm_epsÚ	norm_biasNÚpad_token_idÚeos_token_idÚbos_token_idÚcls_token_idÚsep_token_idÚattention_biasÚattention_dropoutr   r*   r:   Úembedding_dropoutÚmlp_biasÚmlp_dropoutÚdecoder_biasÚclassifier_poolingÚclassifier_dropoutÚclassifier_biasÚclassifier_activationÚdeterministic_flash_attnÚsparse_predictionÚsparse_pred_ignore_indexÚtie_word_embeddings)r   r   )r   Úmean)ÚintÚstrÚfloatr   ÚlistÚdictr   )ÚformatÚ__classdict__s   "€r    Ú__annotate__ÚModernBertConfig.__annotate__   sE  ø‡ ‚ ñb Ññc ñd Ññe ñf Ñ!ñg ñh Ññi ñj Ñ!ñk ñl Ñ#ñm ñn !Ñ'ño ñp Ñ#ñq ñr  %Ñ*ñs ñt Ññu ñv Ññw ñx ˜•*Ñ$ñy ñz ™™S�	•/ DÕ(Ñ0ñ{ ñ| ˜•*Ñ$ñ} ñ~ ˜•*Ñ$ñ ñ@ ˜•*Ñ$ñA ñB Ñ ñC ñD ™s•{Ñ(ñE ñF ‘c•˜TÕ!Ñ(ñG ñH ™'Ð"GÕHÉ$ÐNÕOÐRVÕVÑ]ñI ñJ ÑñK ñL ™s•{Ñ(ñM ñN ÑñO ñP ™•Ñ"ñQ ñR ÑñS ñT   Õ.Ñ6ñU ñV ¡�Ñ)ñW ñX Ñ!ñY ñZ Ñ'ñ[ ñ\ #Ñ*ñ] ñ^ Ñ#ñ_ ñ` "Ñ(ña ñb Ñ$òc r2   )r   r:   r*   iœÿÿÿ)3Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú
model_typeÚkeys_to_ignore_at_inferencer-   rA   rB   rC   r   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   r   r*   r:   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r   r0   r5   Úpropertyr;   ÚsetterÚ__annotate_func__Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r   re   s   @@r    r	   r	      s#  ù‡ € ñ(ðT €JØ#4Ð"5ÐØ˜y¨'°8Ð<€Mà€JØ€KØ!ÐØÐØ!ÐØ#ÐØ#'ÐØ#ÐØ'*ÐØ€HØ€IØ$€LØ+0€LØ$€LØ$€LØ$€LØ €NØ%(ÐØ$(€KØY]€OØ€OØ%(ÐØ€HØ"€KØ€LØ16ÐØ&)ÐØ!€OØ!'ÐØ%*ÐØ#ÐØ$(ÐØ $Ðõ	(òõ<ð
 ñ)ó ð)ð ×Ññ)ó ð)÷O … r2   r	   N)
Útypingr   Úhuggingface_hub.dataclassesr   Úconfiguration_utilsr   Úutilsr   r	   Ú__all__r   r2   r    Ú<module>rz      sK   ðõ, å .å 3Ý #ñ Ð8Ô9ØôG)Ð'ó G)ó ó :ðG)ðT Ð
‚r2   