+
    œ°³jY  ã                   ó˜  € ^ RI t ^ RIHt ^RIHtHt ^RIHtHt ^RI	H
t
 ^RIHt ^RIHtHtHt ^RIHt ^R	IHtHtHtHt ^R
IHtHt ]P6                  ! ]4      t]! RR7      ] ! R R]4      4       4       t ! R R]4      t ! R R]4      t  ! R R]4      t! ! R R]4      t" ! R R]
4      t# ! R R]4      t$ ! R R]4      t%. ROt&R# )é    N)Ústrict)ÚCacheÚDynamicCache)Úcreate_causal_maskÚ!create_sliding_window_causal_mask)ÚBaseModelOutputWithPast)ÚUnpack)ÚTransformersKwargsÚauto_docstringÚlogging)ÚLlamaConfig)ÚLlamaDecoderLayerÚLlamaForCausalLMÚ
LlamaModelÚLlamaPreTrainedModel)ÚQwen2AttentionÚQwen2RotaryEmbeddingzfacebook/cwm)Ú
checkpointc                   ó¬   a a€ ] tR t^%t oRtRtRtRtRt^@t	^0t
^t^€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]! 4       tV 3R ltV3R ltRt Vt!V ;t"# )Ú	CwmConfigÚcwmç    €„.Ai õ i   i T  Úsilui   g{®Gáz”?gñhãˆµøä>TNi ô Fg        é    c                óÜ  <€ V P                   f   RRRRRRRRR	R
RR/V n         V P                  f<   ^p\        V P                  4       Uu. uF  pW2,          ^ 8X  d   RMRNK  	  upV n        V P                  '       d   \        V P                  4      MR V n        \        V P                  4      V n        V P                  e   V P                  M. ROV n        \        SV `$  ! R/ VB  R # u upi )NÚ
rope_thetar   Úfactorg      0@Úhigh_freq_factorg      @Úlow_freq_factorg      ð?Ú original_max_position_embeddingsr   Ú	rope_typeÚllama3Úfull_attentionÚsliding_attention)iô iô i	ô © )
Úrope_parametersÚlayer_typesÚrangeÚnum_hidden_layersÚsliding_windowÚintÚlistÚeos_token_idÚsuperÚ__post_init__)ÚselfÚkwargsÚwindow_patternÚiÚ	__class__s   &,  €Úd/home/luca/screen-checking/.venv/lib/python3.14/site-packages/transformers/models/cwm/modular_cwm.pyr/   ÚCwmConfig.__post_init__D   sï   ø€ Ø×ÑÒ'à˜kØ˜$Ø" CØ! 3Ø2°DØ˜Xð$ˆDÔ ð ×ÑÒ#àˆNô ˜t×5Ñ5Ô6ó á6�Að '(Õ&8¸AÔ&=Ñ!ÐDWÒWÙ6ñ ˆDÔð
 ;?×:M×:MÐ:Mœc $×"5Ñ"5Ô6ÐSWˆÔÜ × 0Ñ 0Ó1ˆÔØ15×1BÑ1BÒ1N˜D×-Ò-ÒTlˆÔÜ‰ÒÑ' Ô'ùò s   Á
C)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&   S[ R,          ;R&   S[ S[S[ ,          ,          R,          ;R&   S[ ;R&   S[;R&   S[S[ ,          ;R&   S[ ;R&   S[;R&   S[R,          ;R&   S[ ;R&   S[S[,          R,          ;R&   # )é   Ú
vocab_sizeÚhidden_sizeÚintermediate_sizer)   Únum_attention_headsÚnum_key_value_headsÚhead_dimÚ
hidden_actÚmax_position_embeddingsÚinitializer_rangeÚrms_norm_epsÚ	use_cacheNÚpad_token_idr-   Úbos_token_idÚtie_word_embeddingsÚattention_dropoutÚpretraining_tpÚmlp_biasr&   r*   r'   )r+   ÚstrÚfloatÚboolr,   Údict)ÚformatÚ__classdict__s   "€r5   Ú__annotate__ÚCwmConfig.__annotate__%   sE  ø‡ ‚ ñ Ññ ñ Ññ ñ Ñ"ñ ñ Ññ ñ Ñ!ñ ñ Ñ ñ ñ Ññ ñ Ññ ñ !Ñ)ñ ñ Ñ#ñ ñ  Ññ! ñ" Ññ# ñ$ ˜•*Ñ#ñ% ñ& ™™S�	•/ DÕ(Ñ/ñ' ñ( Ññ) ñ* Ñ%ñ+ ñ, ™s•{Ñ(ñ- ñ. Ññ/ ñ0 Ññ1 ñ2 ˜D•[Ñ'ñ3 ñ4 Ññ5 ñ6 ‘c•˜TÕ!Ñ(ò7 ó    )r-   r'   r&   r*   )#Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú
model_typeÚdefault_thetar9   r:   r;   r)   r<   r=   r>   r?   r@   rA   rB   rC   rD   r-   rE   rF   rG   rH   rI   r&   r*   r'   ÚAttributeErrorÚattention_biasr/   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r4   rO   s   @@r5   r   r   %   s›   ù‡ € ð €JØ€Mà€JØ€KØ"ÐØÐØ!ÐØ ÐØ€HØ€JØ#)ÐØ#ÐØ€LØ€IØ#€LØ+/€LØ€LØ %ÐØ%(ÐØ€NØ€HØ#'€OØ€NØ$(€Ká#Ó%€Nõ(÷? … rR   r   c                   ó   € ] tR t^]tRtR# )ÚCwmRotaryEmbeddingr%   N©rS   rT   rU   rV   r\   r%   rR   r5   ra   ra   ]   ó   † ÛrR   ra   c                   ó>   a a€ ] tR t^at oV3R lV 3R lltRtVtV ;t# )ÚCwmAttentionc                ó&   <€ V ^8„  d   QhRS[ RS[/# ©r8   ÚconfigÚ	layer_idx©r   r+   )rN   rO   s   "€r5   rP   ÚCwmAttention.__annotate__b   s   ø€ ÷ rñ r™yð r±Sñ rrR   c                óð  <€ \         SV `  WR 7       \        P                  P	                  VP
                  VP                  V P                  ,          RR7      V n        \        P                  P	                  VP
                  VP                  V P                  ,          RR7      V n
        \        P                  P	                  VP
                  VP                  V P                  ,          RR7      V n        R# )©rh   ri   F)ÚbiasN)r.   Ú__init__ÚtorchÚnnÚLinearr:   r<   r>   Úq_projr=   Úk_projÚv_proj©r0   rh   ri   r4   s   &&&€r5   ro   ÚCwmAttention.__init__b   s¬   ø€ Ü‰Ñ ÐÔ<Ü—h‘h—o‘o f×&8Ñ&8¸&×:TÑ:TÐW[×WdÑWdÕ:dÐkp�oÓqˆŒÜ—h‘h—o‘o f×&8Ñ&8¸&×:TÑ:TÐW[×WdÑWdÕ:dÐkp�oÓqˆŒÜ—h‘h—o‘o f×&8Ñ&8¸&×:TÑ:TÐW[×WdÑWdÕ:dÐkp�oÓqˆŽrR   )rt   rs   ru   ©rS   rT   rU   rV   ro   r\   r]   r^   r_   s   @@r5   re   re   a   s   ù‡ € ÷r÷ ró rrR   re   c                   ó>   a a€ ] tR t^it oV3R lV 3R lltRtVtV ;t# )ÚCwmDecoderLayerc                ó&   <€ V ^8„  d   QhRS[ RS[/# rg   rj   )rN   rO   s   "€r5   rP   ÚCwmDecoderLayer.__annotate__j   s   ø€ ÷ Jñ J™yð J±Sñ JrR   c                óJ   <€ \         SV `  WR 7       \        WR 7      V n        R# )rm   N)r.   ro   re   Ú	self_attnrv   s   &&&€r5   ro   ÚCwmDecoderLayer.__init__j   s   ø€ Ü‰Ñ ÐÔ<Ü%¨VÔIˆŽrR   )r~   rx   r_   s   @@r5   rz   rz   i   s   ù‡ € ÷J÷ Jó JrR   rz   c                   ó   € ] tR t^otRtR# )ÚCwmPreTrainedModelr%   Nrb   r%   rR   r5   r�   r�   o   rc   rR   r�   c                   ó   € ] tR t^stRtR# )ÚCwmModelOutputWithPastr%   Nrb   r%   rR   r5   rƒ   rƒ   s   rc   rR   rƒ   c                   óX   a a€ ] tR t^wt o]tV3R lV 3R lltRV3R lR lltRtVt	V ;t
# )ÚCwmModelc                ó    <€ V ^8„  d   QhRS[ /# )r8   rh   )r   )rN   rO   s   "€r5   rP   ÚCwmModel.__annotate__z   s   ø€ ÷ 
ñ 
™yñ 
rR   c           	     óÐ   <€ \         SV `  V4       \        P                  P	                  \        VP                  4       Uu. uF  p\        W4      NK  	  up4      V n        R # u upi )N)	r.   ro   rp   rq   Ú
ModuleListr(   r)   rz   Úlayersrv   s   && €r5   ro   ÚCwmModel.__init__z   sM   ø€ Ü‰Ñ˜Ô Ü—h‘h×)Ñ)ÜAFÀv×G_ÑG_ÔA`ÓaÑA`°IŒ_˜VÖ/ÑA`Ñaó
ˆŽùÚas   ÁA#c                óþ   <€ V ^8„  d   QhRS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[R,          RS[ P                  R,          RS[R,          RS[S[,          R	S[/# )
r8   Ú	input_idsNÚattention_maskÚposition_idsÚpast_key_valuesÚinputs_embedsrC   r1   Úreturn)	rp   Ú
LongTensorÚTensorr   ÚFloatTensorrL   r	   r
   rƒ   )rN   rO   s   "€r5   rP   r‡   €   s“   ø€ ÷ 8
ñ 8
á×#Ñ# dÕ*ð8
ñ Ÿ™ tÕ+ð8
ñ ×&Ñ&¨Õ-ð	8
ñ
  �ð8
ñ ×(Ñ(¨4Õ/ð8
ñ ˜$•;ð8
ñ Ñ+Õ,ð8
ñ 
 ñ8
rR   c                óR  € VR J VR J,          '       d   \        R4      hVf   V P                  V4      pV'       d   Vf   \        V P                  R7      pVfb   Ve   VP	                  4       M^ p\
        P                  ! VP                  ^,          VP                  R7      V,           pVP                  ^ 4      p\        T;p	\        4      '       g?   RV P                  RVRVRVRV/p
V
P                  4       pR	\        R/ V
B R
\        R/ VB /p	TpV P                  WÃ4      p\!        V P"                  R V P                  P$                   4       F7  w  rïV! V3RW�P                  P&                  V,          ,          RVRVRV/VB pK9  	  V P)                  V4      p\+        VVR7      # )Nz:You must specify exactly one of input_ids or inputs_embeds)rh   )Údevicerh   r‘   rŽ   r�   r�   r#   r$   Úposition_embeddings)Úlast_hidden_stater�   r%   )Ú
ValueErrorÚembed_tokensr   rh   Úget_seq_lengthrp   ÚarangeÚshaper—   Ú	unsqueezeÚ
isinstancerM   Úcopyr   r   Ú
rotary_embÚ	enumeraterŠ   r)   r'   Únormrƒ   )r0   r�   rŽ   r�   r�   r‘   rC   r1   Úpast_seen_tokensÚcausal_mask_mappingÚmask_kwargsÚsliding_mask_kwargsÚhidden_statesr˜   r3   Údecoder_layers   &&&&&&&,        r5   ÚforwardÚCwmModel.forward€   sÅ  € ð ˜Ð -°tÐ";×<Ô<ÜÐYÓZÐZàÒ Ø*.×*;Ñ*;¸IÓ*FˆMç˜Ò0Ü*°$·+±+Ô>ˆOàÒØCRÒC^˜×=Ñ=Ô?ÐdeÐÜ Ÿ<š<¨×(;Ñ(;¸AÕ(>À}×G[ÑG[Ô\Ð_oÕoˆLØ'×1Ñ1°!Ó4ˆLä°Ð?Ð-Ä×FÒFà˜$Ÿ+™+Ø Ø  .Ø! ?Ø ðˆKð #.×"2Ñ"2Ó"4Ðð !Ô"4Ñ"C°{Ñ"CØ#Ô%FÑ%]ÐI\Ñ%]ð#Ðð
 &ˆØ"Ÿo™o¨mÓJÐä )¨$¯+©+Ð6U¸¿¹×8UÑ8UÐ*VÖ WÑˆAÙ)Øñà2·;±;×3JÑ3JÈ1Õ3MÕNðð *ðð !0ð	ð
 %8ðð ñŠMñ !Xð Ÿ	™	 -Ó0ˆÜ%Ø+Ø+ô
ð 	
rR   )rŠ   )NNNNNN)rS   rT   rU   rV   r   Úconfig_classro   r«   r\   r]   r^   r_   s   @@r5   r…   r…   w   s#   ù‡ € Ø€L÷
ó 
÷8
÷ 8
ò 8
rR   r…   c                   ó   € ] tR t^»tRtR# )ÚCwmForCausalLMr%   Nrb   r%   rR   r5   r¯   r¯   »   rc   rR   r¯   )r   r�   r…   r¯   )'rp   Úhuggingface_hub.dataclassesr   Úcache_utilsr   r   Úmasking_utilsr   r   Úmodeling_outputsr   Úprocessing_utilsr	   Úutilsr
   r   r   Úllama.configuration_llamar   Úllama.modeling_llamar   r   r   r   Úqwen2.modeling_qwen2r   r   Ú
get_loggerrS   Úloggerr   ra   re   rz   r�   rƒ   r…   r¯   Ú__all__r%   rR   r5   Ú<module>r¼      sÔ   ðó  Ý .ç .ß RÝ 7Ý &ß @Ñ @Ý 3÷ó ÷ Hð 
×	Ò	˜HÓ	%€ñ ˜>Ô*Øô3(�ó 3(ó ó +ð3(ôl	Ð-ô 	ôr�>ô rôJÐ'ô Jô	Ð-ô 	ô	Ð4ô 	ôA
ˆzô A
ôH	Ð%ô 	ò‚rR   