ó
    qyüiE  ã                   ó¬   • S SK Jr  S SKJr  SSKJr  SSKJr  SSKJ	r	  \	" SS9\ " S	 S
\5      5       5       r
\	" SS9\ " S S\5      5       5       rSS
/rg)é    )ÚAny)Ústricté   )ÚPreTrainedConfig)ÚRopeParameters)Úauto_docstringzgoogle/t5_gemma_module-7b)Ú
checkpointc                   ó*  ^ • \ rS rSr% SrSrS/rSSSSSSSS.rS/S	/4S
S/S
/4S
/S
/4S.rSr	\
\S'   Sr\
\S'   Sr\
\S'   Sr\
\S'   Sr\
\S'   Sr\
\S'   Sr\
\S'   Sr\\S'   Sr\
\S'   Sr\\S '   S!r\\S"'   S#r\\S$'   S%r\
S&-  \S''   S(r\
\\
   -  S&-  \S)'   S*r\
S&-  \S+'   S#r\\S,'   S&r\ \!-  S&-  \S-'   S.r"\\S/'   S0r#\
\-  S&-  \S1'   Sr$\
\S2'   S3r%\
S&-  \S4'   S&r&\\   S&-  \S5'   S6r'\S&-  \S7'   S8r(\S&-  \S9'   S.r)\\S:'   U 4S; jr*S< r+S=r,U =r-$ )>ÚT5GemmaModuleConfigé   a  
query_pre_attn_scalar (`float`, *optional*, defaults to 256):
    scaling factor used on the attention scores
final_logit_softcapping (`float`, *optional*, defaults to 30.0):
    scaling factor when applying tanh softcapping on the logits.
attn_logit_softcapping (`float`, *optional*, defaults to 50.0):
    scaling factor when applying tanh softcapping on the attention scores.

```python
>>> from transformers import T5GemmaModuleModel, T5GemmaModuleConfig
>>> # Initializing a T5GemmaModule t5_gemma_module-7b style configuration
>>> configuration = T5GemmaModuleConfig()
>>> # Initializing a model from the t5_gemma_module-7b style configuration
>>> model = T5GemmaModuleModel(configuration)
>>> # Accessing the model configuration
>>> configuration = model.config
```Út5_gemma_moduleÚpast_key_valuesÚcolwiseÚrowwise)zlayers.*.self_attn.q_projzlayers.*.self_attn.k_projzlayers.*.self_attn.v_projzlayers.*.self_attn.o_projzlayers.*.mlp.gate_projzlayers.*.mlp.up_projzlayers.*.mlp.down_projÚ	input_idsÚinputs_embedsÚhidden_statesÚattention_mask)Úembed_tokensÚlayersÚnormé è Ú
vocab_sizei 	  Úhidden_sizei $  Úintermediate_sizeé   Únum_hidden_layersé   Únum_attention_headsé   Únum_key_value_headsé   Úhead_dimÚgelu_pytorch_tanhÚhidden_activationi    Úmax_position_embeddingsg{®Gáz”?Úinitializer_rangeg�íµ ÷Æ°>Úrms_norm_epsTÚ	use_cacher   NÚpad_token_idé   Úeos_token_idé   Úbos_token_idÚtie_word_embeddingsÚrope_parametersFÚattention_biasç        Úattention_dropoutÚquery_pre_attn_scalari   Úsliding_windowÚlayer_typesg      >@Úfinal_logit_softcappingg      I@Úattn_logit_softcappingÚ
is_decoderc                 óÐ   >• U R                   cC  [        U R                  5       Vs/ s H  n[        US-   S-  5      (       a  SOSPM     snU l         [        TU ]  " S0 UD6  g s  snf )Nr+   r-   Úsliding_attentionÚfull_attention© )r6   Úranger   ÚboolÚsuperÚ__post_init__)ÚselfÚkwargsÚiÚ	__class__s      €Ún/home/mande/repo/quber/.venv/lib/python3.13/site-packages/transformers/models/t5gemma/configuration_t5gemma.pyrA   Ú!T5GemmaModuleConfig.__post_init___   si   ø€ Ø×ÑÑ#äX]Ð^b×^tÑ^tÔXuó ÚXuÐST¤t¨Q°©U°a©K×'8Ñ'8Ñ#Ð>NÒNÑXuñ ˆDÔô 	‰ÒÑ' Ó'ùò	 s   ¦$A#c                 óŠ   • U R                   U R                  -  S:w  a&  [        SU R                    SU R                   S35      eg)zOPart of `@strict`-powered validation. Validates the architecture of the config.r   zThe hidden size (z6) is not a multiple of the number of attention heads (z).N)r   r   Ú
ValueError)rB   s    rF   Úvalidate_architectureÚ)T5GemmaModuleConfig.validate_architectureg   sS   € à×Ñ˜d×6Ñ6Ñ6¸!Ó;ÜØ# D×$4Ñ$4Ð#5ð 6Ø×2Ñ2Ð3°2ð7óð ð <ó    )r6   ).Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú
model_typeÚkeys_to_ignore_at_inferenceÚbase_model_tp_planÚbase_model_pp_planr   ÚintÚ__annotations__r   r   r   r   r!   r#   r%   Ústrr&   r'   Úfloatr(   r)   r?   r*   r,   Úlistr.   r/   r0   r   Údictr1   r3   r4   r5   r6   r7   r8   r9   rA   rJ   Ú__static_attributes__Ú__classcell__©rE   s   @rF   r   r      s¿  ø‡ ñð$ #€JØ#4Ð"5Ðà%.Ø%.Ø%.Ø%.Ø"+Ø )Ø"+ñÐð &˜¨Ð(9Ð:Ø#Ð%5Ð6¸Ð8IÐJØ!Ð" _Ð$5Ð6ñÐð €J�ÓØ€K�ÓØ!Ð�sÓ!ØÐ�sÓØ Ð˜Ó Ø Ð˜Ó Ø€HˆcÓØ0Ð�sÓ0Ø#'Ð˜SÓ'Ø#Ð�uÓ#Ø€L�%ÓØ€IˆtÓØ €L�#˜‘*Ó Ø+,€L�#˜˜S™	‘/ DÑ(Ó,Ø €L�#˜‘*Ó Ø $Ð˜Ó$Ø48€O�^ dÑ*¨TÑ1Ó8Ø €N�DÓ Ø,/Ð�s˜U‘{ TÑ)Ó/Ø!$Ð˜3Ó$Ø!%€N�C˜$‘JÓ%Ø$(€K��c‘˜TÑ!Ó(Ø,0Ð˜U T™\Ó0Ø+/Ð˜E D™LÓ/à€J�Óõ(÷ð rL   r   c                   óð   ^ • \ rS rSr% SrSrS/r\\S.rSr	\\
\\4   -  S-  \S'   Sr\\
\\4   -  S-  \S'   S	r\\S
'   Sr\\-  \S'   Sr\\-  \S'   Sr\\-  \S'   S	r\\S'   Sr\\S'   U 4S jrSrU =r$ )ÚT5GemmaConfigép   a   
encoder (`Union[T5GemmaModuleConfig, dict]`, optional, *optional*):
    Configuration for the encoder.
decoder (`Union[T5GemmaModuleConfig, dict]`, optional, *optional*):
    Configuration for the decoder.

Example:

```python
>>> from transformers import T5GemmaConfig, T5GemmaModel
>>> t5gemma_config = T5GemmaConfig.from_pretrained("google/t5gemma-2b-2b-prefixlm-it")
>>> model = T5GemmaModel(t5gemma_config)
```Út5gemmar   )ÚencoderÚdecoderNrc   rd   TÚis_encoder_decoderr2   Údropout_rateÚclassifier_dropout_rater3   r/   r   r   c                 ó¬  >• [        U R                  [        5      (       a  [        S0 U R                  D6U l        OU R                  c  [        5       U l        [        U R                  [        5      (       a  [        S0 U R                  D6U l        OU R                  c  [        5       U l        SU R                  l        U R                  U R                  l        U R                  U R                  l        SU R                  l        SU R                  l        U R                  U R                  l        U R                  U R                  l        U R                  R                  U R                  l
        UR                  SU R                  R                  5      U l        S H"  nX!;  d  M
  [        U R                  U5      X'   M$     [        TU ]<  " S0 UD6  g )NFTr'   )r.   r*   r,   r=   )Ú
isinstancerc   r[   r   rd   r9   rf   r3   r)   r   Úcross_attention_hidden_sizeÚpopr'   Úgetattrr@   rA   )rB   rC   Úspecial_token_keyrE   s      €rF   rA   ÚT5GemmaConfig.__post_init__Ž   sK  ø€ Ü�d—l‘l¤D×)Ñ)Ü.Ñ>°·±Ñ>ˆD�LØ�\‰\Ñ!Ü.Ó0ˆDŒLä�d—l‘l¤D×)Ñ)Ü.Ñ>°·±Ñ>ˆD�LØ�\‰\Ñ!Ü.Ó0ˆDŒLà"'ˆ�‰ÔØ$(×$5Ñ$5ˆ�‰Ô!Ø)-×)?Ñ)?ˆ�‰Ô&à"&ˆ�‰ÔØ!%ˆ�‰ÔØ$(×$5Ñ$5ˆ�‰Ô!Ø)-×)?Ñ)?ˆ�‰Ô&Ø37·<±<×3KÑ3Kˆ�‰Ô0à!'§¡Ð,?ÀÇÁ×A_ÑA_Ó!`ˆÔã!QÐØ Õ.Ü,3°D·L±LÐBSÓ,T�Ó)ñ "Rô 	‰ÒÑ' Ó'rL   )rd   rc   r'   )rM   rN   rO   rP   rQ   rR   rS   r   Úsub_configsrc   r[   r   rW   rd   re   r?   rf   rV   rY   rg   r3   r/   r   rA   r\   r]   r^   s   @rF   r`   r`   p   s³   ø‡ ñð €JØ#4Ð"5ÐØ1Ð>QÑR€Kà;?€GÐ  4¨¨S¨¡>Ñ1°DÑ8Ó?Ø;?€GÐ  4¨¨S¨¡>Ñ1°DÑ8Ó?Ø#Ð˜Ó#Ø #€L�#˜‘+Ó#Ø+.Ð˜S 5™[Ó.Ø%(Ð�u˜s‘{Ó(Ø $Ð˜Ó$Ø€J�Ó÷(ó (rL   r`   N)Útypingr   Úhuggingface_hub.dataclassesr   Úconfiguration_utilsr   Úmodeling_rope_utilsr   Úutilsr   r   r`   Ú__all__r=   rL   rF   Ú<module>rv      s|   ðõ* å .å 3Ý 1Ý #ñ Ð6Ñ7ØôMÐ*ó Mó ó 8ðMñ` Ð6Ñ7Øô7(Ð$ó 7(ó ó 8ð7(ðt Ð1Ð
2�rL   