+
    œ°³j€Á  ã                   ó\  € ^ RI Ht ^ RIt^ RIHt ^ RIHtHtHt ^RIH	t
 ^RIHtHt ^RIHtHtHt ^RIHt ^RIHtHt ^R	IHt ^R
IHtHtHtHtHtHt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.H/t/ ^RI0H1t1 ^RI2H3t3 ],Ph                  ! ]54      t6 ! R R]Pn                  4      t8R?R R llt9 ! R R]Pn                  4      t: ! R R]Pn                  4      t; ! R R]Pn                  4      t< ! R R]Pn                  4      t= ! R R]Pn                  4      t> ! R  R!]Pn                  4      t? ! R" R#]4      t@]+ ! R$ R%]$4      4       tA ! R& R']Pn                  4      tB ! R( R)]Pn                  4      tC]+ ! R* R+]A4      4       tD ! R, R-]Pn                  4      tE ! R. R/]Pn                  4      tF]+! R0R17       ! R2 R3]A]4      4       tG]+ ! R4 R5]A4      4       tH]+! R6R17       ! R7 R8]A4      4       tI]+ ! R9 R:]A4      4       tJ]+ ! R; R<]A4      4       tK]+ ! R= R>]A4      4       tL. R@OtMR# )Aé    )ÚCallableN)ÚBCEWithLogitsLossÚCrossEntropyLossÚMSELoss)Úinitialization)ÚACT2FNÚgelu)ÚCacheÚDynamicCacheÚEncoderDecoderCache)ÚGenerationMixin)Úcreate_bidirectional_maskÚcreate_causal_mask)ÚGradientCheckpointingLayer)Ú)BaseModelOutputWithPastAndCrossAttentionsÚ,BaseModelOutputWithPoolingAndCrossAttentionsÚ!CausalLMOutputWithCrossAttentionsÚMaskedLMOutputÚMultipleChoiceModelOutputÚQuestionAnsweringModelOutputÚSequenceClassifierOutputÚTokenClassifierOutput)ÚALL_ATTENTION_FUNCTIONSÚPreTrainedModel)ÚUnpack)Úapply_chunking_to_forward)ÚTransformersKwargsÚauto_docstringÚlogging)Úcan_return_tupleÚmerge_with_config_defaults)Úcapture_outputs)ÚData2VecTextConfigc                   óp   a a€ ] tR t^7t oRtV 3R ltRV3R lR llt]R 4       t]R	R l4       t	Rt
VtV ;t# )
ÚData2VecTextEmbeddingszGConstruct the embeddings from word, position and token_type embeddings.c                óˆ  <€ \         SV `  4        \        P                  ! VP                  VP
                  VP                  R 7      V n        \        P                  ! VP                  VP
                  4      V n	        \        P                  ! VP
                  VP                  R7      V n
        \        P                  ! VP                  4      V n        \        P                  ! \         P"                  ! VP$                  4      P'                  R4      RR7      V n        \        P                  ! \         P*                  ! V P(                  P-                  4       \         P.                  R7      RR7      V n        VP                  V n        \        P                  ! VP$                  VP
                  V P2                  R 7      V n        R# ))Úpadding_idx©ÚepsF)Ú
persistent)ÚdtypeN©é   éÿÿÿÿ)ÚsuperÚ__init__ÚnnÚ	EmbeddingÚ
vocab_sizeÚhidden_sizeÚpad_token_idÚword_embeddingsÚtype_vocab_sizeÚtoken_type_embeddingsÚ	LayerNormÚlayer_norm_epsÚDropoutÚhidden_dropout_probÚdropoutÚBufferÚtorchÚarangeÚmax_position_embeddingsÚexpandÚposition_idsÚzerosÚsizeÚlongÚtoken_type_idsr'   Úposition_embeddings©ÚselfÚconfigÚ	__class__s   &&€Út/home/luca/screen-checking/.venv/lib/python3.14/site-packages/transformers/models/data2vec/modeling_data2vec_text.pyr0   ÚData2VecTextEmbeddings.__init__:   s%  ø€ Ü‰ÑÔÜ!Ÿ|š|¨F×,=Ñ,=¸v×?QÑ?QÐ_e×_rÑ_rÔsˆÔÜ%'§\¢\°&×2HÑ2HÈ&×J\ÑJ\Ó%]ˆÔ"äŸš f×&8Ñ&8¸f×>SÑ>SÔTˆŒÜ—z’z &×"<Ñ"<Ó=ˆŒäŸIšI¤e§l¢l°6×3QÑ3QÓ&R×&YÑ&YÐZaÓ&bÐotÔuˆÔÜ Ÿiši¬¯ª°D×4EÑ4E×4JÑ4JÓ4LÔTY×T^ÑT^Ô(_ÐlqÔrˆÔà!×.Ñ.ˆÔÜ#%§<¢<Ø×*Ñ*¨F×,>Ñ,>ÈD×L\ÑL\ô$
ˆÖ ó    c                óÚ   <€ V ^8„  d   QhRS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[RS[ P                  /# )é   Ú	input_idsNrG   rC   Úinputs_embedsÚpast_key_values_lengthÚreturn)r?   Ú
LongTensorÚFloatTensorÚintÚTensor)ÚformatÚ__classdict__s   "€rM   Ú__annotate__Ú#Data2VecTextEmbeddings.__annotate__J   sw   ø€ ÷ .ñ .á×#Ñ# dÕ*ð.ñ ×(Ñ(¨4Õ/ð.ñ ×&Ñ&¨Õ-ð	.ñ
 ×(Ñ(¨4Õ/ð.ñ !$ð.ñ 
�‰ñ.rO   c                ó4  € Vf=   Ve   V P                  WP                  V4      pMV P                  W@P                  4      pVe   VP                  4       pMVP                  4       R R pVw  rxVf¿   \	        V R4      '       dr   V P
                  P                  VP                  4      P                  VP                  ^ ,          R4      p	\        P                  ! V	^VR7      p	V	P                  Wx4      pM;\        P                  ! V\        P                  V P                  P                  R7      pVf   V P                  V4      pV P!                  V4      p
WJ,           pV P#                  V4      pW¼,           pV P%                  V4      pV P'                  V4      pV# )NrG   )ÚdimÚindex©r+   Údevicer.   )Ú"create_position_ids_from_input_idsr'   Ú&create_position_ids_from_inputs_embedsrE   ÚhasattrrG   Útorb   rB   Úshaper?   ÚgatherrD   rF   rC   r6   r8   rH   r9   r=   )rJ   rR   rG   rC   rS   rT   Úinput_shapeÚ
batch_sizeÚ
seq_lengthÚbuffered_token_type_idsr8   Ú
embeddingsrH   s   &&&&&&       rM   ÚforwardÚData2VecTextEmbeddings.forwardJ   st  € ð ÒØÒ$à#×FÑFØ×/Ñ/Ð1Gó ‘ð  $×JÑJÈ=×ZjÑZjÓk�àÒ Ø#Ÿ.™.Ó*‰Kà'×,Ñ,Ó.¨s°Ð3ˆKà!,Ñˆ
ð
 Ò!Ü�tÐ-×.Ò.à*.×*=Ñ*=×*@Ñ*@À×ATÑATÓ*U×*\Ñ*\Ð]i×]oÑ]oÐpqÕ]rÐtvÓ*wÐ'Ü*/¯,ª,Ð7NÐTUÐ]iÔ*jÐ'Ø!8×!?Ñ!?À
Ó!W‘ä!&§¢¨[ÄÇ
Á
ÐSW×SdÑSd×SkÑSkÔ!l�àÒ Ø ×0Ñ0°Ó;ˆMØ $× :Ñ :¸>Ó JÐØ"Õ:ˆ
à"×6Ñ6°|ÓDÐØÕ5ˆ
à—^‘^ JÓ/ˆ
Ø—\‘\ *Ó-ˆ
ØÐrO   c                ó  € V P                  4       RR pV^,          p\        P                  ! V^,           W1,           ^,           \        P                  V P                  R7      pVP                  ^ 4      P                  V4      # )z¯
We are provided embeddings directly. We cannot infer which are padded so just generate sequential position ids.

Args:
    inputs_embeds: torch.Tensor

Returns: torch.Tensor
Nra   r.   )rE   r?   r@   rF   rb   Ú	unsqueezerB   )rS   r'   ri   Úsequence_lengthrC   s   &&   rM   rd   Ú=Data2VecTextEmbeddings.create_position_ids_from_inputs_embedsz   sn   € ð $×(Ñ(Ó*¨3¨BÐ/ˆØ% a�.ˆä—|’|Ø˜!�O˜_Õ:¸QÕ>ÄeÇjÁjÐYf×YmÑYmô
ˆð ×%Ñ% aÓ(×/Ñ/°Ó<Ð<rO   c                óØ   € V P                  V4      P                  4       p\        P                  ! V^R7      P	                  V4      V,           V,          pVP                  4       V,           # )zí
Replace non-padding symbols with their position numbers. Position numbers begin at padding_idx+1. Padding symbols
are ignored. This is modified from fairseq's `utils.make_positions`.

Args:
    x: torch.Tensor x:

Returns: torch.Tensor
©r_   )ÚnerX   r?   ÚcumsumÚtype_asrF   )rR   r'   rT   ÚmaskÚincremental_indicess   &&&  rM   rc   Ú9Data2VecTextEmbeddings.create_position_ids_from_input_idsŒ   sW   € ð �|‰|˜KÓ(×,Ñ,Ó.ˆÜ$Ÿ|š|¨D°aÔ8×@Ñ@ÀÓFÐI_Õ_ÐcgÕgÐØ"×'Ñ'Ó)¨KÕ7Ð7rO   )r9   r=   r'   rH   rC   r8   rG   r6   )NNNNr   )r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r0   rn   Ústaticmethodrd   rc   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©rL   r[   s   @@rM   r%   r%   7   sE   ù‡ € ÙQõ
÷ .ò .ð` ñ=ó ð=ð" ó8ó ÷8ð 8rO   r%   c                ó  € V ^8„  d   QhR\         P                  R\        P                  R\        P                  R\        P                  R\        P                  R,          R\        R,          R\        R	\
        \        ,          /# )
rQ   ÚmoduleÚqueryÚkeyÚvalueÚattention_maskNÚscalingr=   Úkwargs)r1   ÚModuler?   rY   Úfloatr   r   )rZ   s   "rM   r\   r\   �   s{   € ÷ %ñ %Ü�I‰Ið%ä�<‰<ð%ô 
�‰ð%ô �<‰<ð	%ô
 —L‘L 4Õ'ð%ô �T�\ð%ô ð%ô Ô'Õ(ñ%rO   c                 ó¶  € Vf   VP                  R4      R,          p\        P                  ! WP                  ^^4      4      V,          pVe	   W„,           p\        P
                  P                  VRR7      p\        P
                  P                  W†V P                  R7      p\        P                  ! Wƒ4      p	V	P                  ^^4      P                  4       p	W˜3# )Nru   )ÚpÚtrainingr.   ç      à¿)
rE   r?   ÚmatmulÚ	transposer1   Ú
functionalÚsoftmaxr=   r’   Ú
contiguous)
r‡   rˆ   r‰   rŠ   r‹   rŒ   r=   r�   Úattn_weightsÚattn_outputs
   &&&&&&&,  rM   Úeager_attention_forwardr›   �   s±   € ð ‚Ø—*‘*˜R“. DÕ(ˆô —<’< §}¡}°Q¸Ó':Ó;¸gÕE€LàÒ!Ø#Õ4ˆä—=‘=×(Ñ(¨¸2Ð(Ó>€LÜ—=‘=×(Ñ(¨È6Ï?É?Ð(Ó[€Lä—,’,˜|Ó3€KØ×'Ñ'¨¨1Ó-×8Ñ8Ó:€KàÐ$Ð$rO   c                   óL   a a€ ] tR t^¹t oRV 3R lltRV3R lR lltRtVtV ;t# )ÚData2VecTextSelfAttentionc                ót  <€ \         SV `  4        VP                  VP                  ,          ^ 8w  d9   \	        VR4      '       g'   \        RVP                   RVP                   R24      hWn        VP                  V n        \        VP                  VP                  ,          4      V n        V P                  V P                  ,          V n	        V P                  R,          V n
        \        P                  ! VP                  V P                  4      V n        \        P                  ! VP                  V P                  4      V n        \        P                  ! VP                  V P                  4      V n        \        P                   ! VP"                  4      V n        VP&                  V n        W n        W0n        R# ©r   Úembedding_sizezThe hidden size (z6) is not a multiple of the number of attention heads (Ú)Nr“   )r/   r0   r4   Únum_attention_headsre   Ú
ValueErrorrK   rX   Úattention_head_sizeÚall_head_sizerŒ   r1   ÚLinearrˆ   r‰   rŠ   r;   Úattention_probs_dropout_probr=   Ú
is_decoderÚ	is_causalÚ	layer_idx©rJ   rK   r©   rª   rL   s   &&&&€rM   r0   Ú"Data2VecTextSelfAttention.__init__º   sM  ø€ Ü‰ÑÔØ×Ñ × :Ñ :Õ:¸aÔ?ÌÐPVÐXh×HiÒHiÜØ# F×$6Ñ$6Ð#7ð 8Ø ×4Ñ4Ð5°Qð8óð ð Œà#)×#=Ñ#=ˆÔ Ü#& v×'9Ñ'9¸F×<VÑ<VÕ'VÓ#WˆÔ Ø!×5Ñ5¸×8PÑ8PÕPˆÔØ×/Ñ/°Õ5ˆŒä—Y’Y˜v×1Ñ1°4×3EÑ3EÓFˆŒ
Ü—9’9˜V×/Ñ/°×1CÑ1CÓDˆŒÜ—Y’Y˜v×1Ñ1°4×3EÑ3EÓFˆŒ
ä—z’z &×"EÑ"EÓFˆŒà ×+Ñ+ˆŒØ"ŒØ"ŽrO   c                ó°   <€ V ^8„  d   QhRS[ P                  RS[ P                  R,          RS[R,          RS[S[,          RS[S[ P                  ,          /# )rQ   Úhidden_statesr‹   NÚpast_key_valuesr�   rU   ©r?   rY   rW   r
   r   r   Útuple)rZ   r[   s   "€rM   r\   Ú&Data2VecTextSelfAttention.__annotate__Ò   s_   ø€ ÷ ')ñ ')á—|‘|ð')ñ ×)Ñ)¨DÕ0ð')ñ  �ð	')ñ
 Ñ+Õ,ð')ñ 
‰u�|‰|Õ	ñ')rO   c                ó   € VP                   R R p. VORNV P                  N5pV P                  V4      P                  ! V!  P	                  ^^4      pV P                  V4      P                  ! V!  P	                  ^^4      pV P                  V4      P                  ! V!  P	                  ^^4      p	VeC   Tp
\        V\        4      '       d   VP                  p
V
P                  W‰V P                  4      w  r‰\        P                  ! V P                  P                  \         4      pT! V VVV	V3RV P"                  '       g   RMV P$                  P&                  RV P(                  /VB w  rÍVP*                  ! . VORN5!  P-                  4       pWÍ3# )Nr=   ç        rŒ   r.   )rg   r¤   rˆ   Úviewr•   r‰   rŠ   Ú
isinstancer   Úself_attention_cacheÚupdaterª   r   Úget_interfacerK   Ú_attn_implementationr›   r’   r=   r‘   rŒ   Úreshaper˜   )rJ   r®   r‹   r¯   r�   ri   Úhidden_shapeÚquery_layerÚ	key_layerÚvalue_layerÚcurrent_past_key_valuesÚattention_interfacerš   r™   s   &&&&,         rM   rn   Ú!Data2VecTextSelfAttention.forwardÒ   s‰  € ð $×)Ñ)¨#¨2Ð.ˆØC˜ÐC bÐC¨$×*BÑ*BÑCˆð —j‘j Ó/×4Ò4°lÑC×MÑMÈaÐQRÓSˆØ—H‘H˜]Ó+×0Ò0°,Ñ?×IÑIÈ!ÈQÓOˆ	Ø—j‘j Ó/×4Ò4°lÑC×MÑMÈaÐQRÓSˆàÒ&à&5Ð#Ü˜/Ô+>×?Ò?Ø*9×*NÑ*NÐ'ð &=×%CÑ%CÀIÐ\`×\jÑ\jÓ%kÑ"ˆIä(?×(MÒ(MØ�K‰K×,Ñ,Ô.Eó)
Ðñ %8ØØØØØñ	%
ð  $Ÿ}Ÿ}˜}‘C°$·,±,·.±.ð	%
ð —L‘Lð	%
ð ñ	%
Ñ!ˆð "×)Ò)Ð;¨;Ð;¸Ó;×FÑFÓHˆØÐ(Ð(rO   )r¥   r¤   rK   r=   r©   r¨   r‰   rª   r¢   rˆ   rŒ   rŠ   ©FN)NN©	r|   r}   r~   r   r0   rn   r‚   rƒ   r„   r…   s   @@rM   r�   r�   ¹   s   ù‡ € ÷#÷0')÷ ')ò ')rO   r�   c                   óL   a a€ ] tR t^üt oRV 3R lltRV3R lR lltRtVtV ;t# )ÚData2VecTextCrossAttentionc                óR  <€ \         SV `  4        VP                  VP                  ,          ^ 8w  d9   \	        VR4      '       g'   \        RVP                   RVP                   R24      hWn        VP                  V n        \        VP                  VP                  ,          4      V n        V P                  V P                  ,          V n	        V P                  R,          V n
        \        P                  ! VP                  V P                  4      V n        \        P                  ! VP                  V P                  4      V n        \        P                  ! VP                  V P                  4      V n        \        P                   ! VP"                  4      V n        W n        W0n        R# rŸ   )r/   r0   r4   r¢   re   r£   rK   rX   r¤   r¥   rŒ   r1   r¦   rˆ   r‰   rŠ   r;   r§   r=   r©   rª   r«   s   &&&&€rM   r0   Ú#Data2VecTextCrossAttention.__init__ý   s@  ø€ Ü‰ÑÔØ×Ñ × :Ñ :Õ:¸aÔ?ÌÐPVÐXh×HiÒHiÜØ# F×$6Ñ$6Ð#7ð 8Ø ×4Ñ4Ð5°Qð8óð ð Œà#)×#=Ñ#=ˆÔ Ü#& v×'9Ñ'9¸F×<VÑ<VÕ'VÓ#WˆÔ Ø!×5Ñ5¸×8PÑ8PÕPˆÔØ×/Ñ/°Õ5ˆŒä—Y’Y˜v×1Ñ1°4×3EÑ3EÓFˆŒ
Ü—9’9˜V×/Ñ/°×1CÑ1CÓDˆŒÜ—Y’Y˜v×1Ñ1°4×3EÑ3EÓFˆŒ
ä—z’z &×"EÑ"EÓFˆŒà"ŒØ"ŽrO   c                óØ   <€ V ^8„  d   QhRS[ P                  RS[ P                  R,          RS[ P                  R,          RS[R,          RS[S[,          RS[S[ P                  ,          /# )rQ   r®   Úencoder_hidden_statesNr‹   r¯   r�   rU   )r?   rY   rW   r   r   r   r±   )rZ   r[   s   "€rM   r\   Ú'Data2VecTextCrossAttention.__annotate__  su   ø€ ÷ 1)ñ 1)á—|‘|ð1)ñ  %×0Ñ0°4Õ7ð1)ñ ×)Ñ)¨DÕ0ð	1)ñ
 -¨tÕ3ð1)ñ Ñ+Õ,ð1)ñ 
‰u�|‰|Õ	ñ1)rO   c                ó˜  € VP                   R R p. VORNV P                  N5pV P                  V4      P                  V4      P	                  ^^4      pVe&   VP
                  P                  V P                  4      MRp	Vel   V	'       dd   VP                  P                  V P                  ,          P                  p
VP                  P                  V P                  ,          P                  pMÅ. VP                   R R ORNV P                  N5pV P                  V4      P                  V4      P	                  ^^4      p
V P                  V4      P                  V4      P	                  ^^4      pVeB   VP                  P                  W«V P                  4      w  r«RVP
                  V P                  &   \        P                   ! V P"                  P$                  \&        4      pT! V VV
VV3RV P(                  '       g   RMV P*                  P,                  RV P.                  /VB w  rïVP0                  ! . VORN5!  P3                  4       pWï3# )NFTr=   r´   rŒ   r.   )rg   r¤   rˆ   rµ   r•   Ú
is_updatedÚgetrª   Úcross_attention_cacheÚlayersÚkeysÚvaluesr‰   rŠ   r¸   r   r¹   rK   rº   r›   r’   r=   r‘   rŒ   r»   r˜   )rJ   r®   rÊ   r‹   r¯   r�   ri   r¼   r½   rÍ   r¾   r¿   Úkv_shaperÁ   rš   r™   s   &&&&&,          rM   rn   Ú"Data2VecTextCrossAttention.forward  s  € ð $×)Ñ)¨#¨2Ð.ˆàC˜ÐC bÐC¨$×*BÑ*BÑCˆð —j‘j Ó/×4Ñ4°\ÓB×LÑLÈQÐPQÓRˆàGVÒGb�_×/Ñ/×3Ñ3°D·N±NÔCÐhmˆ
ØÒ&¯:à'×=Ñ=×DÑDÀTÇ^Á^ÕT×YÑYˆIØ)×?Ñ?×FÑFÀtÇ~Á~ÕV×]Ñ]‰KàXÐ.×4Ñ4°S°bÐ9ÐX¸2ÐX¸t×?WÑ?WÑXˆHØŸ™Ð!6Ó7×<Ñ<¸XÓF×PÑPÐQRÐTUÓVˆIØŸ*™*Ð%:Ó;×@Ñ@ÀÓJ×TÑTÐUVÐXYÓZˆKàÒ*à)8×)NÑ)N×)UÑ)UØ¨D¯N©Nó*Ñ&�	ð >B�×*Ñ*¨4¯>©>Ñ:ä(?×(MÒ(MØ�K‰K×,Ñ,Ô.Eó)
Ðñ %8ØØØØØñ	%
ð  $Ÿ}Ÿ}˜}‘C°$·,±,·.±.ð	%
ð —L‘Lð	%
ð ñ	%
Ñ!ˆð "×)Ò)Ð;¨;Ð;¸Ó;×FÑFÓHˆØÐ(Ð(rO   )r¥   r¤   rK   r=   r©   r‰   rª   r¢   rˆ   rŒ   rŠ   rÃ   )NNNrÄ   r…   s   @@rM   rÆ   rÆ   ü   s   ù‡ € ÷#÷.1)÷ 1)ò 1)rO   rÆ   c                   óD   a a€ ] tR tRt oV 3R ltV3R lR ltRtVtV ;t# )ÚData2VecTextSelfOutputiH  c                ó0  <€ \         SV `  4        \        P                  ! VP                  VP                  4      V n        \        P                  ! VP                  VP                  R 7      V n        \        P                  ! VP                  4      V n
        R# ©r(   N)r/   r0   r1   r¦   r4   Údenser9   r:   r;   r<   r=   rI   s   &&€rM   r0   ÚData2VecTextSelfOutput.__init__I  s`   ø€ Ü‰ÑÔÜ—Y’Y˜v×1Ñ1°6×3EÑ3EÓFˆŒ
ÜŸš f×&8Ñ&8¸f×>SÑ>SÔTˆŒÜ—z’z &×"<Ñ"<Ó=ˆŽrO   c                óh   <€ V ^8„  d   QhRS[ P                  RS[ P                  RS[ P                  /# ©rQ   r®   Úinput_tensorrU   ©r?   rY   )rZ   r[   s   "€rM   r\   Ú#Data2VecTextSelfOutput.__annotate__O  ó1   ø€ ÷ ñ ¡U§\¡\ð ÁÇÁð ÑRW×R^ÑR^ñ rO   c                óx   € V P                  V4      pV P                  V4      pV P                  W,           4      pV# ©N©rÙ   r=   r9   ©rJ   r®   rÝ   s   &&&rM   rn   ÚData2VecTextSelfOutput.forwardO  ó5   € ØŸ
™
 =Ó1ˆØŸ™ ]Ó3ˆØŸ™ }Õ'CÓDˆØÐrO   ©r9   rÙ   r=   rÄ   r…   s   @@rM   rÖ   rÖ   H  ó   ù‡ € õ>÷÷ ð rO   rÖ   c                   óL   a a€ ] tR tRt oRV 3R lltRV3R lR lltRtVtV ;t# )ÚData2VecTextAttentioniV  c                ó–   <€ \         SV `  4        W@n        V'       d   \        M\        pV! WVR 7      V n        \        V4      V n        R# )©r©   rª   N)r/   r0   Úis_cross_attentionrÆ   r�   rJ   rÖ   Úoutput)rJ   rK   r©   rª   rí   Úattention_classrL   s   &&&&& €rM   r0   ÚData2VecTextAttention.__init__W  s9   ø€ Ü‰ÑÔØ"4Ôß8JÕ4ÔPiˆÙ# FÈ9ÔUˆŒ	Ü,¨VÓ4ˆŽrO   c                ó   <€ V ^8„  d   QhRS[ P                  RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[R,          RS[S[,          RS[S[ P                  ,          /# ©	rQ   r®   r‹   NrÊ   Úencoder_attention_maskr¯   r�   rU   r°   )rZ   r[   s   "€rM   r\   Ú"Data2VecTextAttention.__annotate__^  s‰   ø€ ÷ .ñ .á—|‘|ð.ñ ×)Ñ)¨DÕ0ð.ñ  %×0Ñ0°4Õ7ð	.ñ
 !&× 1Ñ 1°DÕ 8ð.ñ  �ð.ñ Ñ+Õ,ð.ñ 
‰u�|‰|Õ	ñ.rO   c           	     óŒ   € V P                   '       g   TMTpV P                  ! V3R VRVRV/VB w  rxV P                  Wq4      pWx3# )rÊ   r‹   r¯   )rí   rJ   rî   )	rJ   r®   r‹   rÊ   ró   r¯   r�   Úattention_outputr™   s	   &&&&&&,  rM   rn   ÚData2VecTextAttention.forward^  sm   € ð 04×/F×/FÐ/F™ÐLbˆØ)-¯ªØñ*
à"7ð*
ð *ð*
ð ,ð	*
ð
 ñ*
Ñ&Ðð  Ÿ;™;Ð'7ÓGÐØÐ-Ð-rO   )rí   rî   rJ   )FNF©NNNNrÄ   r…   s   @@rM   rê   rê   V  s   ù‡ € ÷5÷.÷ .ò .rO   rê   c                   óD   a a€ ] tR tRt oV 3R ltV3R lR ltRtVtV ;t# )ÚData2VecTextIntermediateis  c                ó"  <€ \         SV `  4        \        P                  ! VP                  VP
                  4      V n        \        VP                  \        4      '       d   \        VP                  ,          V n        R # VP                  V n        R # râ   )r/   r0   r1   r¦   r4   Úintermediate_sizerÙ   r¶   Ú
hidden_actÚstrr   Úintermediate_act_fnrI   s   &&€rM   r0   Ú!Data2VecTextIntermediate.__init__t  s`   ø€ Ü‰ÑÔÜ—Y’Y˜v×1Ñ1°6×3KÑ3KÓLˆŒ
Ü�f×'Ñ'¬×-Ò-Ü'-¨f×.?Ñ.?Õ'@ˆDÖ$à'-×'8Ñ'8ˆDÖ$rO   c                óN   <€ V ^8„  d   QhRS[ P                  RS[ P                  /# ©rQ   r®   rU   rÞ   )rZ   r[   s   "€rM   r\   Ú%Data2VecTextIntermediate.__annotate__|  s#   ø€ ÷ ñ ¡U§\¡\ð ±e·l±lñ rO   c                óJ   € V P                  V4      pV P                  V4      pV# râ   ©rÙ   rÿ   )rJ   r®   s   &&rM   rn   Ú Data2VecTextIntermediate.forward|  s&   € ØŸ
™
 =Ó1ˆØ×0Ñ0°Ó?ˆØÐrO   r  rÄ   r…   s   @@rM   rú   rú   s  s   ù‡ € õ9÷÷ ð rO   rú   c                   óD   a a€ ] tR tRt oV 3R ltV3R lR ltRtVtV ;t# )ÚData2VecTextOutputi‚  c                ó0  <€ \         SV `  4        \        P                  ! VP                  VP
                  4      V n        \        P                  ! VP
                  VP                  R 7      V n        \        P                  ! VP                  4      V n        R# rØ   )r/   r0   r1   r¦   rü   r4   rÙ   r9   r:   r;   r<   r=   rI   s   &&€rM   r0   ÚData2VecTextOutput.__init__ƒ  s`   ø€ Ü‰ÑÔÜ—Y’Y˜v×7Ñ7¸×9KÑ9KÓLˆŒ
ÜŸš f×&8Ñ&8¸f×>SÑ>SÔTˆŒÜ—z’z &×"<Ñ"<Ó=ˆŽrO   c                óh   <€ V ^8„  d   QhRS[ P                  RS[ P                  RS[ P                  /# rÜ   rÞ   )rZ   r[   s   "€rM   r\   ÚData2VecTextOutput.__annotate__‰  rà   rO   c                óx   € V P                  V4      pV P                  V4      pV P                  W,           4      pV# râ   rã   rä   s   &&&rM   rn   ÚData2VecTextOutput.forward‰  ræ   rO   rç   rÄ   r…   s   @@rM   r  r  ‚  rè   rO   r  c                   óR   a a€ ] tR tRt oRV 3R lltRV3R lR lltR tRtVtV ;t	# )	ÚData2VecTextLayeri�  c                óœ  <€ \         SV `  4        VP                  V n        ^V n        \	        WP
                  VR7      V n        VP
                  V n        VP                  V n        V P                  '       d5   V P
                  '       g   \        V  R24      h\	        VRVRR7      V n	        \        V4      V n        \        V4      V n        R# )r-   rì   z> should be used as a decoder model if cross attention is addedFT)r©   rª   rí   N)r/   r0   Úchunk_size_feed_forwardÚseq_len_dimrê   r¨   Ú	attentionÚadd_cross_attentionr£   Úcrossattentionrú   Úintermediater  rî   )rJ   rK   rª   rL   s   &&&€rM   r0   ÚData2VecTextLayer.__init__‘  s°   ø€ Ü‰ÑÔØ'-×'EÑ'EˆÔ$ØˆÔÜ.¨v×ARÑARÐ^gÔhˆŒØ ×+Ñ+ˆŒØ#)×#=Ñ#=ˆÔ Ø×#×#Ð#Ø—?—?�?Ü  D 6Ð)gÐ!hÓiÐiÜ"7ØØØ#Ø#'ô	#ˆDÔô 5°VÓ<ˆÔÜ(¨Ó0ˆŽrO   c                óð   <€ V ^8„  d   QhRS[ P                  RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[R,          RS[S[,          RS[ P                  /# rò   )r?   rY   rW   r
   r   r   )rZ   r[   s   "€rM   r\   ÚData2VecTextLayer.__annotate__¤  s„   ø€ ÷ %ñ %á—|‘|ð%ñ ×)Ñ)¨DÕ0ð%ñ  %×0Ñ0°4Õ7ð	%ñ
 !&× 1Ñ 1°DÕ 8ð%ñ  �ð%ñ Ñ+Õ,ð%ñ 
�‰ñ%rO   c                ó8  € V P                   ! VV3R V/VB w  rxTp	V P                  '       dB   Ve>   \        V R4      '       g   \        RV  R24      hV P                  ! VRVV3R V/VB w  r¨T
p	\        V P                  V P                  V P                  V	4      pV# )r¯   Nr  z'If `encoder_hidden_states` are passed, z` has to be instantiated with cross-attention layers by setting `config.add_cross_attention=True`)	r  r¨   re   r£   r  r   Úfeed_forward_chunkr  r  )rJ   r®   r‹   rÊ   ró   r¯   r�   Úself_attention_outputÚ_rö   Úcross_attention_outputÚlayer_outputs   &&&&&&,     rM   rn   ÚData2VecTextLayer.forward¤  sâ   € ð $(§>¢>ØØñ$
ð ,ð$
ð ñ	$
Ñ Ðð 1Ðà�?�?ˆ?Ð4Ò@Ü˜4Ð!1×2Ò2Ü Ø=¸d¸Vð DDð Dóð ð
 )-×(;Ò(;Ø%ØØ%Ø&ñ	)ð
 !0ð)ð ñ)Ñ%Ð"ð  6Ðä0Ø×#Ñ# T×%AÑ%AÀ4×CSÑCSÐUeó
ˆð ÐrO   c                óJ   € V P                  V4      pV P                  W!4      pV# râ   )r  rî   )rJ   rö   Úintermediate_outputr   s   &&  rM   r  Ú$Data2VecTextLayer.feed_forward_chunkË  s)   € Ø"×/Ñ/Ð0@ÓAÐØ—{‘{Ð#6ÓIˆØÐrO   )r  r  r  r  r  r¨   rî   r  râ   rø   )
r|   r}   r~   r   r0   rn   r  r‚   rƒ   r„   r…   s   @@rM   r  r  �  s   ù‡ € ÷1÷&%ò %÷Nò rO   r  c                   óf   a a€ ] tR tRt o]tRtRtRR.tRt	Rt
RtRtR]R]R]/tV 3R	 ltR
tVtV ;t# )ÚData2VecTextPreTrainedModeliÑ  Údata2vec_textTr%   r  r®   Ú
attentionsÚcross_attentionsc                óT  <€ \         SV `  V4       \        V\        4      '       d‚   \        P
                  ! VP                  \        P                  ! VP                  P                  R,          4      P                  R4      4       \        P                  ! VP                  4       R# R# )r-   Nr.   r,   )r/   Ú_init_weightsr¶   r%   ÚinitÚcopy_rC   r?   r@   rg   rB   Úzeros_rG   )rJ   r‡   rL   s   &&€rM   r+  Ú)Data2VecTextPreTrainedModel._init_weightsá  sp   ø€ Ü‰Ñ˜fÔ%Ü�fÔ4×5Ò5Ü�JŠJ�v×*Ñ*¬E¯LªL¸×9LÑ9L×9RÑ9RÐSUÕ9VÓ,W×,^Ñ,^Ð_fÓ,gÔhÜ�KŠK˜×-Ñ-Ö.ñ 6rO   © )r|   r}   r~   r   r#   Úconfig_classÚbase_model_prefixÚsupports_gradient_checkpointingÚ_no_split_modulesÚ_supports_flash_attnÚ_supports_sdpaÚ_supports_flex_attnÚ_supports_attention_backendr  r�   rÆ   Ú_can_record_outputsr+  r‚   rƒ   r„   r…   s   @@rM   r&  r&  Ñ  s]   ù‡ € à%€LØ'ÐØ&*Ð#Ø1Ð3FÐGÐØÐØ€NØÐØ"&ÐàÐ*ØÐ/ØÐ6ðÐ÷/õ /rO   r&  c                   óH   a a€ ] tR tRt oV 3R ltRV3R lR lltRtVtV ;t# )ÚData2VecTextEncoderiè  c           
     óÊ   <€ \         SV `  4        Wn        \        P                  ! \        VP                  4       Uu. uF  p\        WR 7      NK  	  up4      V n        R# u upi ))rª   N)	r/   r0   rK   r1   Ú
ModuleListÚrangeÚnum_hidden_layersr  Úlayer)rJ   rK   ÚirL   s   && €rM   r0   ÚData2VecTextEncoder.__init__é  sJ   ø€ Ü‰ÑÔØŒÜ—]’]ÔTYÐZ`×ZrÑZrÔTsÓ#tÑTsÈqÔ$5°f×$JÑTsÑ#tÓuˆŽ
ùÒ#ts   ½A c                ó$  <€ V ^8„  d   QhRS[ P                  RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[R,          RS[R,          RS[S[,          R	S[S[ P                  ,          S[,          /# )
rQ   r®   r‹   NrÊ   ró   r¯   Ú	use_cacher�   rU   )	r?   rY   rW   r
   Úboolr   r   r±   r   )rZ   r[   s   "€rM   r\   Ú Data2VecTextEncoder.__annotate__î  s�   ø€ ÷ 
ñ 
á—|‘|ð
ñ ×)Ñ)¨DÕ0ð
ñ  %×0Ñ0°4Õ7ð	
ñ
 !&× 1Ñ 1°DÕ 8ð
ñ  �ð
ñ ˜$•;ð
ñ Ñ+Õ,ð
ñ 
‰u�|‰|Õ	ÑHÕ	Hñ
rO   c                ó”   € \        V P                  4       F  w  r‰V	! VVV3R VRV/VB pK  	  \        TV'       d   VR7      # RR7      # )ró   r¯   N)Úlast_hidden_stater¯   )Ú	enumerater@  r   )
rJ   r®   r‹   rÊ   ró   r¯   rD  r�   rA  Úlayer_modules
   &&&&&&&,  rM   rn   ÚData2VecTextEncoder.forwardî  sn   € ô  )¨¯©Ö4‰OˆAÙ(ØØØ%ñð (>ð	ð
 !0ðð ñŠMñ  5ô 9Ø+ß/8˜Oô
ð 	
à>Bô
ð 	
rO   )rK   r@  )NNNNNrÄ   r…   s   @@rM   r;  r;  è  s   ù‡ € õv÷

÷ 
ò 
rO   r;  c                   óD   a a€ ] tR tRt oV 3R ltV3R lR ltRtVtV ;t# )ÚData2VecTextPooleri  c                ó¸   <€ \         SV `  4        \        P                  ! VP                  VP                  4      V n        \        P                  ! 4       V n        R # râ   )r/   r0   r1   r¦   r4   rÙ   ÚTanhÚ
activationrI   s   &&€rM   r0   ÚData2VecTextPooler.__init__	  s9   ø€ Ü‰ÑÔÜ—Y’Y˜v×1Ñ1°6×3EÑ3EÓFˆŒ
ÜŸ'š'›)ˆŽrO   c                óN   <€ V ^8„  d   QhRS[ P                  RS[ P                  /# r  rÞ   )rZ   r[   s   "€rM   r\   ÚData2VecTextPooler.__annotate__  s#   ø€ ÷ ñ ¡U§\¡\ð ±e·l±lñ rO   c                ó\   € VR,          pV P                  V4      pV P                  V4      pV# )ºNNN)rU  r   )rÙ   rP  )rJ   r®   Úfirst_token_tensorÚpooled_outputs   &&  rM   rn   ÚData2VecTextPooler.forward  s2   € ð +¨4Õ0ÐØŸ
™
Ð#5Ó6ˆØŸ™¨Ó6ˆØÐrO   )rP  rÙ   rÄ   r…   s   @@rM   rM  rM    s   ù‡ € õ$÷
÷ ð rO   rM  c                   ó„   a a€ ] tR tRt oRR.tRV 3R lltR tR t]]	]
RV3R lR ll4       4       4       tR	 tR
tVtV ;t# )ÚData2VecTextModeli  r%   r  c                óÔ   <€ \         SV `  V4       Wn        RV n        \	        V4      V n        \        V4      V n        V'       d   \        V4      MRV n	        V P                  4        R# )z^
add_pooling_layer (bool, *optional*, defaults to `True`):
    Whether to add a pooling layer
FN)r/   r0   rK   Úgradient_checkpointingr%   rm   r;  ÚencoderrM  ÚpoolerÚ	post_init)rJ   rK   Úadd_pooling_layerrL   s   &&&€rM   r0   ÚData2VecTextModel.__init__  sT   ø€ ô
 	‰Ñ˜Ô ØŒØ&+ˆÔ#ä0°Ó8ˆŒÜ*¨6Ó2ˆŒç4EÔ(¨Ô0È4ˆŒð 	�‰ÖrO   c                ó.   € V P                   P                  # râ   ©rm   r6   ©rJ   s   &rM   Úget_input_embeddingsÚ&Data2VecTextModel.get_input_embeddings,  s   € Ø�‰×.Ñ.Ð.rO   c                ó&   € WP                   n        R # râ   rc  )rJ   rŠ   s   &&rM   Úset_input_embeddingsÚ&Data2VecTextModel.set_input_embeddings/  s   € Ø*/�‰Ö'rO   c                óª  <€ V ^8„  d   QhRS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          R	S[R,          R
S[R,          RS[S[,          RS[S[ P                  ,          S[,          /# )rQ   rR   Nr‹   rG   rC   rS   rÊ   ró   r¯   rD  r�   rU   )r?   rY   r
   rE  r   r   r±   r   )rZ   r[   s   "€rM   r\   ÚData2VecTextModel.__annotate__5  sÕ   ø€ ÷ ?
ñ ?
á—<‘< $Õ&ð?
ñ Ÿ™ tÕ+ð?
ñ Ÿ™ tÕ+ð	?
ñ
 —l‘l TÕ)ð?
ñ —|‘| dÕ*ð?
ñ  %Ÿ|™|¨dÕ2ð?
ñ !&§¡¨tÕ 3ð?
ñ  �ð?
ñ ˜$•;ð?
ñ Ñ+Õ,ð?
ñ 
‰u�|‰|Õ	ÑKÕ	Kñ?
rO   c
                óð  € VR J VR J,          '       d   \        R4      hV P                  P                  '       d   V	e   T	MV P                  P                  p	MRp	V	'       do   Vfk   Vf   V P                  P                  '       d5   \        \        V P                  R7      \        V P                  R7      4      M\        V P                  R7      pVe   VP                  4       M^ pV P                  VVVVVR7      pV P                  VVVVVR7      w  r'V P                  ! V3RVRVRVR	VR
V	RV/V
B pVP                  pV P                  e   V P                  V4      MR p\        VVVP                  R7      # )Nz:You must specify exactly one of input_ids or inputs_embedsF)rK   )rR   rC   rG   rS   rT   )r‹   ró   Úembedding_outputrÊ   r¯   r‹   rÊ   ró   r¯   rD  rC   )rH  Úpooler_outputr¯   )r£   rK   r¨   rD  Úis_encoder_decoderr   r   Úget_seq_lengthrm   Ú_create_attention_masksr]  rH  r^  r   r¯   )rJ   rR   r‹   rG   rC   rS   rÊ   ró   r¯   rD  r�   rT   rm  Úencoder_outputsÚsequence_outputrW  s   &&&&&&&&&&,     rM   rn   ÚData2VecTextModel.forward2  s£  € ð  ˜Ð -°tÐ";×<Ô<ÜÐYÓZÐZà�;‰;×!×!Ð!Ø%.Ò%:™	ÀÇÁ×@UÑ@U‰IàˆIç˜Ò0ð )Ò4¸¿¹×8V×8VÐ8Vô $¤L¸¿¹Ô$DÄlÐZ^×ZeÑZeÔFfÔgä!¨¯©Ô5ð ð FUÒE` ×!?Ñ!?Ô!AÐfgÐàŸ?™?ØØ%Ø)Ø'Ø#9ð +ó 
Ðð 26×1MÑ1MØ)Ø#9Ø-Ø"7Ø+ð 2Nó 2
Ñ.ˆð Ÿ,š,Øñ	
à)ð	
ð #8ð	
ð $:ð		
ð
 ,ð	
ð  ð	
ð &ð	
ð ñ	
ˆð *×;Ñ;ˆØ8<¿¹Ò8O˜Ÿ™ OÔ4ÐUYˆä;Ø-Ø'Ø+×;Ñ;ô
ð 	
rO   c                óÞ   € V P                   P                  '       d   \        V P                   VVVR 7      pM\        V P                   VVR7      pVe   \        V P                   VVVR7      pW3# ))rK   rS   r‹   r¯   )rK   rS   r‹   )rK   rS   r‹   rÊ   )rK   r¨   r   r   )rJ   r‹   ró   rm  rÊ   r¯   s   &&&&&&rM   rq  Ú)Data2VecTextModel._create_attention_masksv  su   € ð �;‰;×!×!Ð!Ü/Ø—{‘{Ø.Ø-Ø /ô	‰Nô 7Ø—{‘{Ø.Ø-ôˆNð "Ò-Ü%>Ø—{‘{Ø.Ø5Ø&;ô	&Ð"ð Ð5Ð5rO   )rK   rm   r]  r\  r^  )T)	NNNNNNNNN)r|   r}   r~   r   r4  r0   re  rh  r!   r"   r   rn   rq  r‚   rƒ   r„   r…   s   @@rM   rZ  rZ    sT   ù‡ € à1Ð3FÐGÐ÷ò"/ò0ð  ØØ÷?
ñ ?
ó ó ó  ð?
÷B6ò 6rO   rZ  c                   ó<   a a€ ] tR tRt oRtV 3R ltR tRtVtV ;t	# )ÚData2VecTextLMHeadi—  z/Data2VecText Head for masked language modeling.c                ó¸  <€ \         SV `  4        \        P                  ! VP                  VP                  4      V n        \        P                  ! VP                  VP                  R 7      V n        \        P                  ! VP                  VP                  4      V n
        \        P                  ! \        P                  ! VP                  4      4      V n        R# rØ   )r/   r0   r1   r¦   r4   rÙ   r9   r:   Ú
layer_normr3   ÚdecoderÚ	Parameterr?   rD   ÚbiasrI   s   &&€rM   r0   ÚData2VecTextLMHead.__init__š  s‡   ø€ Ü‰ÑÔÜ—Y’Y˜v×1Ñ1°6×3EÑ3EÓFˆŒ
ÜŸ,š, v×'9Ñ'9¸v×?TÑ?TÔUˆŒä—y’y ×!3Ñ!3°V×5FÑ5FÓGˆŒÜ—L’L¤§¢¨V×->Ñ->Ó!?Ó@ˆŽ	rO   c                ó‚   € V P                  V4      p\        V4      pV P                  V4      pV P                  V4      pV# râ   )rÙ   r	   rz  r{  ©rJ   Úfeaturesr�   Úxs   &&, rM   rn   ÚData2VecTextLMHead.forward¢  s;   € Ø�J‰J�xÓ ˆÜ�‹GˆØ�O‰O˜AÓˆð �L‰L˜‹OˆàˆrO   )r}  r{  rÙ   rz  ©
r|   r}   r~   r   r€   r0   rn   r‚   rƒ   r„   r…   s   @@rM   rx  rx  —  s   ù‡ € Ù9õA÷ò rO   rx  c                   ó<   a a€ ] tR tRt oRtV 3R ltR tRtVtV ;t	# )ÚData2VecTextClassificationHeadi­  z-Head for sentence-level classification tasks.c                óf  <€ \         SV `  4        \        P                  ! VP                  VP                  4      V n        VP                  e   VP                  MVP                  p\        P                  ! V4      V n	        \        P                  ! VP                  VP                  4      V n        R # râ   )r/   r0   r1   r¦   r4   rÙ   Úclassifier_dropoutr<   r;   r=   Ú
num_labelsÚout_proj©rJ   rK   rˆ  rL   s   && €rM   r0   Ú'Data2VecTextClassificationHead.__init__°  s   ø€ Ü‰ÑÔÜ—Y’Y˜v×1Ñ1°6×3EÑ3EÓFˆŒ
à)/×)BÑ)BÒ)NˆF×%Ò%ÐTZ×TnÑTnð 	ô —z’zÐ"4Ó5ˆŒÜŸ	š	 &×"4Ñ"4°f×6GÑ6GÓHˆŽrO   c                óÌ   € VR,          pV P                  V4      pV P                  V4      p\        P                  ! V4      pV P                  V4      pV P	                  V4      pV# )rU  )rU  r   rU  )r=   rÙ   r?   ÚtanhrŠ  r€  s   &&, rM   rn   Ú&Data2VecTextClassificationHead.forward¹  sS   € Ø�WÕˆØ�L‰L˜‹OˆØ�J‰J�q‹MˆÜ�JŠJ�q‹MˆØ�L‰L˜‹OˆØ�M‰M˜!ÓˆØˆrO   )rÙ   r=   rŠ  r„  r…   s   @@rM   r†  r†  ­  s   ù‡ € Ù7õI÷ò rO   r†  zX
    Data2VecText Model with a `language modeling` head on top for CLM fine-tuning.
    )Úcustom_introc                   ót   a a€ ] tR tRt oRRRR/tV 3R ltR tR t]]	RV3R	 lR
 ll4       4       t
RtVtV ;t# )ÚData2VecTextForCausalLMiÃ  úlm_head.decoder.weightú/data2vec_text.embeddings.word_embeddings.weightúlm_head.decoder.biasúlm_head.biasc                óØ   <€ \         SV `  V4       VP                  '       g   \        P	                  R 4       \        VRR7      V n        \        V4      V n        V P                  4        R# )zTIf you want to use `Data2VecTextLMHeadModel` as a standalone, add `is_decoder=True.`F©r`  N©
r/   r0   r¨   ÚloggerÚwarningrZ  r'  rx  Úlm_headr_  rI   s   &&€rM   r0   Ú Data2VecTextForCausalLM.__init__Î  sP   ø€ Ü‰Ñ˜Ô à× × Ð Ü�N‰NÐqÔrä.¨vÈÔOˆÔÜ)¨&Ó1ˆŒð 	�‰ÖrO   c                ó.   € V P                   P                  # râ   ©rœ  r{  rd  s   &rM   Úget_output_embeddingsÚ-Data2VecTextForCausalLM.get_output_embeddingsÚ  ó   € Ø�|‰|×#Ñ#Ð#rO   c                ó&   € WP                   n        R # râ   rŸ  ©rJ   Únew_embeddingss   &&rM   Úset_output_embeddingsÚ-Data2VecTextForCausalLM.set_output_embeddingsÝ  ó   € Ø-�‰ÖrO   c                ó  <€ V ^8„  d   QhRS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          R	S[ P                  R,          R
S[S[S[ P                  ,          ,          R,          RS[R,          RS[S[ P                  ,          RS[S[,          RS[S[	,          /# )rQ   rR   Nr‹   rG   rC   rS   rÊ   ró   Úlabelsr¯   rD  Úlogits_to_keepr�   rU   )
r?   rV   rW   r±   rE  rX   rY   r   r   r   )rZ   r[   s   "€rM   r\   Ú$Data2VecTextForCausalLM.__annotate__â  s"  ø€ ÷ F
ñ F
á×#Ñ# dÕ*ðF
ñ ×)Ñ)¨DÕ0ðF
ñ ×(Ñ(¨4Õ/ð	F
ñ
 ×&Ñ&¨Õ-ðF
ñ ×(Ñ(¨4Õ/ðF
ñ  %×0Ñ0°4Õ7ðF
ñ !&× 1Ñ 1°DÕ 8ðF
ñ × Ñ  4Õ'ðF
ñ ™u¡U×%6Ñ%6Õ7Õ8¸4Õ?ðF
ñ ˜$•;ðF
ñ ™eŸl™lÕ*ðF
ñ Ñ+Õ,ðF
ñ 
Ñ2Õ	2ñF
rO   c                óÆ  € Ve   Rp
V P                   ! V3RVRVRVRVRVRVR	V	R
V
RR/	VB pVP                  p\        V\        4      '       d   \	        V) R4      MTpV P                  VRVR3,          4      pRpVe-   V P                  ! RRVRVRV P                  P                  /VB p\        VVVP                  VP                  VP                  VP                  R7      # )aÁ  
labels (`torch.LongTensor` of shape `(batch_size, sequence_length)`, *optional*):
    Labels for computing the left-to-right language modeling loss (next word prediction). Indices should be in
    `[-100, 0, ..., config.vocab_size]` (see `input_ids` docstring) Tokens with indices set to `-100` are
    ignored (masked), the loss is only computed for the tokens with labels in `[0, ..., config.vocab_size]`

Example:

```python
>>> from transformers import AutoTokenizer, Data2VecTextForCausalLM, Data2VecTextConfig
>>> import torch

>>> tokenizer = AutoTokenizer.from_pretrained("facebook/data2vec-text-base")
>>> config = Data2VecTextConfig.from_pretrained("facebook/data2vec-text-base")
>>> config.is_decoder = True
>>> model = Data2VecTextForCausalLM.from_pretrained("facebook/data2vec-text-base", config=config)

>>> inputs = tokenizer("Hello, my dog is cute", return_tensors="pt")
>>> outputs = model(**inputs)

>>> prediction_logits = outputs.logits
```NFr‹   rG   rC   rS   rÊ   ró   r¯   rD  Úreturn_dictTrU  Úlogitsrª  r3   )Úlossr¯  r¯   r®   r(  r)  r0  )r'  rH  r¶   rX   Úslicerœ  Úloss_functionrK   r3   r   r¯   r®   r(  r)  )rJ   rR   r‹   rG   rC   rS   rÊ   ró   rª  r¯   rD  r«  r�   Úoutputsr®   Úslice_indicesr¯  r°  s   &&&&&&&&&&&&,     rM   rn   ÚData2VecTextForCausalLM.forwardà  sD  € ðN ÒØˆIà@D×@RÒ@RØñA
à)ðA
ð *ðA
ð &ð	A
ð
 (ðA
ð #8ðA
ð $:ðA
ð ,ðA
ð  ðA
ð ðA
ð ñA
ˆð  ×1Ñ1ˆä8BÀ>ÔSV×8WÒ8Wœ˜~˜o¨tÔ4Ð]kˆØ—‘˜m¨A¨}¸aÐ,?Õ@ÓAˆàˆØÒØ×%Ò%Ñp¨VÐp¸FÐpÈtÏ{É{×OeÑOeÐpÐioÑpˆDä0ØØØ#×3Ñ3Ø!×/Ñ/Ø×)Ñ)Ø$×5Ñ5ô
ð 	
rO   ©r'  rœ  )NNNNNNNNNNr   ©r|   r}   r~   r   Ú_tied_weights_keysr0   r   r¦  r    r   rn   r‚   rƒ   r„   r…   s   @@rM   r’  r’  Ã  sS   ù‡ € ð 	!Ð"SØ ðÐõ

ò$ò.ð Ø÷F
ñ F
ó ó ÷F
ð F
rO   r’  c                   ót   a a€ ] tR tRt oRRRR/tV 3R ltR tR t]]	RV3R	 lR
 ll4       4       t
RtVtV ;t# )ÚData2VecTextForMaskedLMi+  r“  r”  r•  r–  c                óØ   <€ \         SV `  V4       VP                  '       d   \        P	                  R 4       \        VRR7      V n        \        V4      V n        V P                  4        R# )zsIf you want to use `Data2VecTextForMaskedLM` make sure `config.is_decoder=False` for bi-directional self-attention.Fr˜  Nr™  rI   s   &&€rM   r0   Ú Data2VecTextForMaskedLM.__init__2  sV   ø€ Ü‰Ñ˜Ô à××ÐÜ�N‰Nð1ôô
 /¨vÈÔOˆÔÜ)¨&Ó1ˆŒð 	�‰ÖrO   c                ó.   € V P                   P                  # râ   rŸ  rd  s   &rM   r   Ú-Data2VecTextForMaskedLM.get_output_embeddingsA  r¢  rO   c                ó&   € WP                   n        R # râ   rŸ  r¤  s   &&rM   r¦  Ú-Data2VecTextForMaskedLM.set_output_embeddingsD  r¨  rO   c                ó†  <€ V ^8„  d   QhRS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          R	S[ P                  R,          R
S[S[,          RS[S[,          /
# )rQ   rR   Nr‹   rG   rC   rS   rÊ   ró   rª  r�   rU   )r?   rV   rW   r   r   r±   r   )rZ   r[   s   "€rM   r\   Ú$Data2VecTextForMaskedLM.__annotate__I  sÒ   ø€ ÷ ,
ñ ,
á×#Ñ# dÕ*ð,
ñ ×)Ñ)¨DÕ0ð,
ñ ×(Ñ(¨4Õ/ð	,
ñ
 ×&Ñ&¨Õ-ð,
ñ ×(Ñ(¨4Õ/ð,
ñ  %×0Ñ0°4Õ7ð,
ñ !&× 1Ñ 1°DÕ 8ð,
ñ × Ñ  4Õ'ð,
ñ Ñ+Õ,ð,
ñ 
‘Õ	ñ,
rO   c	                óŒ  € V P                   ! V3RVRVRVRVRVRVRR/V	B p
V
^ ,          pV P                  V4      pR	pVeb   \        4       pVP                  VP                  4      pV! VP                  RV P                  P                  4      VP                  R4      4      p\        VVV
P                  V
P                  R
7      # )az  
labels (`torch.LongTensor` of shape `(batch_size, sequence_length)`, *optional*):
    Labels for computing the masked language modeling loss. Indices should be in `[-100, 0, ...,
    config.vocab_size]` (see `input_ids` docstring) Tokens with indices set to `-100` are ignored (masked), the
    loss is only computed for the tokens with labels in `[0, ..., config.vocab_size]`
r‹   rG   rC   rS   rÊ   ró   r®  TN©r°  r¯  r®   r(  r.   )r'  rœ  r   rf   rb   rµ   rK   r3   r   r®   r(  )rJ   rR   r‹   rG   rC   rS   rÊ   ró   rª  r�   r³  rs  Úprediction_scoresÚmasked_lm_lossÚloss_fcts   &&&&&&&&&,     rM   rn   ÚData2VecTextForMaskedLM.forwardG  sý   € ð( ×$Ò$Øñ

à)ð

ð *ð

ð &ð	

ð
 (ð

ð #8ð

ð $:ð

ð ð

ð ñ

ˆð " !�*ˆØ ŸL™L¨Ó9ÐàˆØÒÜ'Ó)ˆHà—Y‘YÐ0×7Ñ7Ó8ˆFÙ%Ð&7×&<Ñ&<¸RÀÇÁ×AWÑAWÓ&XÐZ`×ZeÑZeÐfhÓZiÓjˆNäØØ$Ø!×/Ñ/Ø×)Ñ)ô	
ð 	
rO   r¶  )NNNNNNNNr·  r…   s   @@rM   rº  rº  +  sO   ù‡ € ð 	!Ð"SØ ðÐõ
ò$ò.ð Ø÷,
ñ ,
ó ó ÷,
ð ,
rO   rº  z¤
    Data2VecText Model transformer with a sequence classification/regression head on top (a linear layer on top of the
    pooled output) e.g. for GLUE tasks.
    c                   ó\   a a€ ] tR tRt oV 3R lt]]RV3R lR ll4       4       tRtVt	V ;t
# )Ú%Data2VecTextForSequenceClassificationix  c                ó¸   <€ \         SV `  V4       VP                  V n        Wn        \	        VR R7      V n        \        V4      V n        V P                  4        R# ©Fr˜  N)	r/   r0   r‰  rK   rZ  r'  r†  Ú
classifierr_  rI   s   &&€rM   r0   Ú.Data2VecTextForSequenceClassification.__init__  sI   ø€ Ü‰Ñ˜Ô Ø ×+Ñ+ˆŒØŒä.¨vÈÔOˆÔÜ8¸Ó@ˆŒð 	�‰ÖrO   c                ó6  <€ V ^8„  d   QhRS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[S[,          R	S[S[,          /# ©
rQ   rR   Nr‹   rG   rC   rS   rª  r�   rU   )r?   rV   rW   r   r   r±   r   )rZ   r[   s   "€rM   r\   Ú2Data2VecTextForSequenceClassification.__annotate__Œ  s©   ø€ ÷ :
ñ :
á×#Ñ# dÕ*ð:
ñ ×)Ñ)¨DÕ0ð:
ñ ×(Ñ(¨4Õ/ð	:
ñ
 ×&Ñ&¨Õ-ð:
ñ ×(Ñ(¨4Õ/ð:
ñ × Ñ  4Õ'ð:
ñ Ñ+Õ,ð:
ñ 
Ñ)Õ	)ñ:
rO   c                ó(  € V P                   ! V3RVRVRVRVRR/VB pV^ ,          p	V P                  V	4      p
RpVEe³   VP                  V
P                  4      pV P                  P
                  f–   V P                  ^8X  d   RV P                  n        MrV P                  ^8”  dQ   VP                  \        P                  8X  g    VP                  \        P                  8X  d   R	V P                  n        MR
V P                  n        V P                  P
                  R8X  dK   \        4       pV P                  ^8X  d'   V! V
P                  4       VP                  4       4      pMŽV! W¦4      pM…V P                  P
                  R	8X  d>   \        4       pV! V
P                  RV P                  4      VP                  R4      4      pM-V P                  P
                  R
8X  d   \        4       pV! W¦4      p\!        VV
VP"                  VP$                  R7      # )ae  
labels (`torch.LongTensor` of shape `(batch_size,)`, *optional*):
    Labels for computing the sequence classification/regression loss. Indices should be in `[0, ...,
    config.num_labels - 1]`. If `config.num_labels == 1` a regression loss is computed (Mean-Square loss), If
    `config.num_labels > 1` a classification loss is computed (Cross-Entropy).
r‹   rG   rC   rS   r®  TNÚ
regressionÚsingle_label_classificationÚmulti_label_classificationrÄ  r.   )r'  rÍ  rf   rb   rK   Úproblem_typer‰  r+   r?   rF   rX   r   Úsqueezer   rµ   r   r   r®   r(  ©rJ   rR   r‹   rG   rC   rS   rª  r�   r³  rs  r¯  r°  rÇ  s   &&&&&&&,     rM   rn   Ú-Data2VecTextForSequenceClassification.forwardŠ  sÅ  € ð$ ×$Ò$Øñ
à)ð
ð *ð
ð &ð	
ð
 (ð
ð ð
ð ñ
ˆð " !�*ˆØ—‘ Ó1ˆàˆØÓØ—Y‘Y˜vŸ}™}Ó-ˆFà�{‰{×'Ñ'Ò/Ø—?‘? aÔ'Ø/;�D—K‘KÕ,Ø—_‘_ qÔ(¨f¯l©l¼e¿j¹jÔ.HÈFÏLÉLÔ\a×\eÑ\eÔLeØ/L�D—K‘KÕ,à/K�D—K‘KÔ,à�{‰{×'Ñ'¨<Ô7Ü"›9�Ø—?‘? aÔ'Ù# F§N¡NÓ$4°f·n±nÓ6FÓG‘Dá# FÓ3‘DØ—‘×)Ñ)Ð-JÔJÜ+Ó-�Ù §¡¨B°·±Ó @À&Ç+Á+ÈbÃ/ÓR‘Ø—‘×)Ñ)Ð-IÔIÜ,Ó.�Ù Ó/�ä'ØØØ!×/Ñ/Ø×)Ñ)ô	
ð 	
rO   )rÍ  rK   r'  r‰  ©NNNNNN©r|   r}   r~   r   r0   r    r   rn   r‚   rƒ   r„   r…   s   @@rM   rÊ  rÊ  x  s0   ù‡ € õ	ð Ø÷:
ñ :
ó ó ÷:
ð :
rO   rÊ  c                   ó\   a a€ ] tR tRt oV 3R lt]]RV3R lR ll4       4       tRtVt	V ;t
# )ÚData2VecTextForMultipleChoiceiÉ  c                óü   <€ \         SV `  V4       \        V4      V n        \        P
                  ! VP                  4      V n        \        P                  ! VP                  ^4      V n
        V P                  4        R# )r-   N)r/   r0   rZ  r'  r1   r;   r<   r=   r¦   r4   rÍ  r_  rI   s   &&€rM   r0   Ú&Data2VecTextForMultipleChoice.__init__Ë  sW   ø€ Ü‰Ñ˜Ô ä.¨vÓ6ˆÔÜ—z’z &×"<Ñ"<Ó=ˆŒÜŸ)š) F×$6Ñ$6¸Ó:ˆŒð 	�‰ÖrO   c                ó6  <€ V ^8„  d   QhRS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[S[,          R	S[S[,          /# )
rQ   rR   NrG   r‹   rª  rC   rS   r�   rU   )r?   rV   rW   r   r   r±   r   )rZ   r[   s   "€rM   r\   Ú*Data2VecTextForMultipleChoice.__annotate__×  s³   ø€ ÷ O
ñ O
á×#Ñ# dÕ*ðO
ñ ×(Ñ(¨4Õ/ðO
ñ ×)Ñ)¨DÕ0ð	O
ñ
 × Ñ  4Õ'ðO
ñ ×&Ñ&¨Õ-ðO
ñ ×(Ñ(¨4Õ/ðO
ñ Ñ+Õ,ðO
ñ 
Ñ*Õ	*ñO
rO   c                ó^  € Ve   VP                   ^,          MVP                   ^,          pVe"   VP                  R	VP                  R	4      4      MRp	Ve"   VP                  R	VP                  R	4      4      MRp
Ve"   VP                  R	VP                  R	4      4      MRpVe"   VP                  R	VP                  R	4      4      MRpVe2   VP                  R	VP                  R
4      VP                  R	4      4      MRpV P                  ! V	3RV
RVRVRVRR/VB pV^,          pV P	                  V4      pV P                  V4      pVP                  R	V4      pRpVe/   \        4       pVP                  VP                  4      pV! VV4      p\        VVVP                  VP                  R7      # )a›  
input_ids (`torch.LongTensor` of shape `(batch_size, num_choices, sequence_length)`):
    Indices of input sequence tokens in the vocabulary.

    Indices can be obtained using [`AutoTokenizer`]. See [`PreTrainedTokenizer.encode`] and
    [`PreTrainedTokenizer.__call__`] for details.

    [What are input IDs?](../glossary#input-ids)
token_type_ids (`torch.LongTensor` of shape `(batch_size, num_choices, sequence_length)`, *optional*):
    Segment token indices to indicate first and second portions of the inputs. Indices are selected in `[0,
    1]`:

    - 0 corresponds to a *sentence A* token,
    - 1 corresponds to a *sentence B* token.

    [What are token type IDs?](../glossary#token-type-ids)
labels (`torch.LongTensor` of shape `(batch_size,)`, *optional*):
    Labels for computing the multiple choice classification loss. Indices should be in `[0, ...,
    num_choices-1]` where `num_choices` is the size of the second dimension of the input tensors. (See
    `input_ids` above)
position_ids (`torch.LongTensor` of shape `(batch_size, num_choices, sequence_length)`, *optional*):
    Indices of positions of each input sequence tokens in the position embeddings. Selected in the range `[0,
    config.max_position_embeddings - 1]`.

    [What are position IDs?](../glossary#position-ids)
inputs_embeds (`torch.FloatTensor` of shape `(batch_size, num_choices, sequence_length, hidden_size)`, *optional*):
    Optionally, instead of passing `input_ids` you can choose to directly pass an embedded representation. This
    is useful if you want more control over how to convert `input_ids` indices into associated vectors than the
    model's internal embedding lookup matrix.
NrC   rG   r‹   rS   r®  TrÄ  r.   éþÿÿÿ)rg   rµ   rE   r'  r=   rÍ  r   rf   rb   r   r®   r(  )rJ   rR   rG   r‹   rª  rC   rS   r�   Únum_choicesÚflat_input_idsÚflat_position_idsÚflat_token_type_idsÚflat_attention_maskÚflat_inputs_embedsr³  rW  r¯  Úreshaped_logitsr°  rÇ  s   &&&&&&&,            rM   rn   Ú%Data2VecTextForMultipleChoice.forwardÕ  sÑ  € ðT -6Ò,A�i—o‘o aÖ(À}×GZÑGZÐ[\ÕG]ˆàCLÒCX˜Ÿ™¨¨I¯N©N¸2Ó,>Ô?Ð^bˆØLXÒLd˜L×-Ñ-¨b°,×2CÑ2CÀBÓ2GÔHÐjnÐØR`ÒRl˜n×1Ñ1°"°n×6IÑ6IÈ"Ó6MÔNÐrvÐØR`ÒRl˜n×1Ñ1°"°n×6IÑ6IÈ"Ó6MÔNÐrvÐð Ò(ð ×Ñ˜r =×#5Ñ#5°bÓ#9¸=×;MÑ;MÈbÓ;QÔRàð 	ð ×$Ò$Øñ
à*ð
ð /ð
ð /ð	
ð
 -ð
ð ð
ð ñ
ˆð   �
ˆàŸ™ ]Ó3ˆØ—‘ Ó/ˆØ Ÿ+™+ b¨+Ó6ˆàˆØÒÜ'Ó)ˆHà—Y‘Y˜×5Ñ5Ó6ˆFÙ˜O¨VÓ4ˆDä(ØØ"Ø!×/Ñ/Ø×)Ñ)ô	
ð 	
rO   )rÍ  r'  r=   rÚ  rÛ  r…   s   @@rM   rÝ  rÝ  É  s4   ù‡ € õð Ø÷O
ñ O
ó ó ÷O
ð O
rO   rÝ  c                   ó\   a a€ ] tR tRt oV 3R lt]]RV3R lR ll4       4       tRtVt	V ;t
# )Ú"Data2VecTextForTokenClassificationi)  c                ón  <€ \         SV `  V4       VP                  V n        \        VR R7      V n        VP
                  e   VP
                  MVP                  p\        P                  ! V4      V n	        \        P                  ! VP                  VP                  4      V n        V P                  4        R# rÌ  )r/   r0   r‰  rZ  r'  rˆ  r<   r1   r;   r=   r¦   r4   rÍ  r_  r‹  s   && €rM   r0   Ú+Data2VecTextForTokenClassification.__init__+  s‹   ø€ Ü‰Ñ˜Ô Ø ×+Ñ+ˆŒä.¨vÈÔOˆÔà)/×)BÑ)BÒ)NˆF×%Ò%ÐTZ×TnÑTnð 	ô —z’zÐ"4Ó5ˆŒÜŸ)š) F×$6Ñ$6¸×8IÑ8IÓJˆŒð 	�‰ÖrO   c                ó6  <€ V ^8„  d   QhRS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[S[,          R	S[S[,          /# rÐ  )r?   rV   rW   r   r   r±   r   )rZ   r[   s   "€rM   r\   Ú/Data2VecTextForTokenClassification.__annotate__;  s©   ø€ ÷ )
ñ )
á×#Ñ# dÕ*ð)
ñ ×)Ñ)¨DÕ0ð)
ñ ×(Ñ(¨4Õ/ð	)
ñ
 ×&Ñ&¨Õ-ð)
ñ ×(Ñ(¨4Õ/ð)
ñ × Ñ  4Õ'ð)
ñ Ñ+Õ,ð)
ñ 
Ñ&Õ	&ñ)
rO   c                ó’  € V P                   ! V3RVRVRVRVRR/VB pV^ ,          p	V P                  V	4      p	V P                  V	4      p
RpVeX   \        4       pVP	                  V
P
                  4      pV! V
P                  R	V P                  4      VP                  R	4      4      p\        VV
VP                  VP                  R7      # )
zÃ
labels (`torch.LongTensor` of shape `(batch_size, sequence_length)`, *optional*):
    Labels for computing the token classification loss. Indices should be in `[0, ..., config.num_labels - 1]`.
r‹   rG   rC   rS   r®  TNrÄ  r.   )r'  r=   rÍ  r   rf   rb   rµ   r‰  r   r®   r(  rØ  s   &&&&&&&,     rM   rn   Ú*Data2VecTextForTokenClassification.forward9  så   € ð  ×$Ò$Øñ
à)ð
ð *ð
ð &ð	
ð
 (ð
ð ð
ð ñ
ˆð " !�*ˆàŸ,™, Ó7ˆØ—‘ Ó1ˆàˆØÒÜ'Ó)ˆHà—Y‘Y˜vŸ}™}Ó-ˆFÙ˜FŸK™K¨¨D¯O©OÓ<¸f¿k¹kÈ"»oÓNˆDä$ØØØ!×/Ñ/Ø×)Ñ)ô	
ð 	
rO   )rÍ  r'  r=   r‰  rÚ  rÛ  r…   s   @@rM   rí  rí  )  s0   ù‡ € õð Ø÷)
ñ )
ó ó ÷)
ð )
rO   rí  c                   ó\   a a€ ] tR tRt oV 3R lt]]RV3R lR ll4       4       tRtVt	V ;t
# )Ú Data2VecTextForQuestionAnsweringig  c                óì   <€ \         SV `  V4       VP                  V n        \        VR R7      V n        \
        P                  ! VP                  VP                  4      V n        V P                  4        R# rÌ  )
r/   r0   r‰  rZ  r'  r1   r¦   r4   Ú
qa_outputsr_  rI   s   &&€rM   r0   Ú)Data2VecTextForQuestionAnswering.__init__i  sV   ø€ Ü‰Ñ˜Ô Ø ×+Ñ+ˆŒä.¨vÈÔOˆÔÜŸ)š) F×$6Ñ$6¸×8IÑ8IÓJˆŒð 	�‰ÖrO   c                ó^  <€ V ^8„  d   QhRS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          R	S[S[,          R
S[S[,          /	# )rQ   rR   Nr‹   rG   rC   rS   Ústart_positionsÚend_positionsr�   rU   )r?   rV   rW   r   r   r±   r   )rZ   r[   s   "€rM   r\   Ú-Data2VecTextForQuestionAnswering.__annotate__u  s¾   ø€ ÷ 3
ñ 3
á×#Ñ# dÕ*ð3
ñ ×)Ñ)¨DÕ0ð3
ñ ×(Ñ(¨4Õ/ð	3
ñ
 ×&Ñ&¨Õ-ð3
ñ ×(Ñ(¨4Õ/ð3
ñ ×)Ñ)¨DÕ0ð3
ñ ×'Ñ'¨$Õ.ð3
ñ Ñ+Õ,ð3
ñ 
Ñ-Õ	-ñ3
rO   c                óð  € V P                   ! V3R VRVRVRVRR/VB p	V	^ ,          p
V P                  V
4      pVP                  ^R
R7      w  rÍVP                  R
4      P	                  4       pVP                  R
4      P	                  4       pRpVeÄ   VeÀ   \        VP                  4       4      ^8”  d   VP                  R
4      p\        VP                  4       4      ^8”  d   VP                  R
4      pVP                  ^4      pVP                  ^ V4      pVP                  ^ V4      p\        VR7      pV! WÆ4      pV! W×4      pVV,           ^,          p\        VVVV	P                  V	P                  R	7      # )r‹   rG   rC   rS   r®  Tru   N)Úignore_index)r°  Ústart_logitsÚ
end_logitsr®   r(  r.   )r'  r÷  Úsplitr×  r˜   ÚlenrE   Úclampr   r   r®   r(  )rJ   rR   r‹   rG   rC   rS   rú  rû  r�   r³  rs  r¯  rÿ  r   Ú
total_lossÚignored_indexrÇ  Ú
start_lossÚend_losss   &&&&&&&&,          rM   rn   Ú(Data2VecTextForQuestionAnswering.forwards  s–  € ð ×$Ò$Øñ
à)ð
ð *ð
ð &ð	
ð
 (ð
ð ð
ð ñ
ˆð " !�*ˆà—‘ Ó1ˆØ#)§<¡<°°r <Ó#:Ñ ˆØ#×+Ñ+¨BÓ/×:Ñ:Ó<ˆØ×'Ñ'¨Ó+×6Ñ6Ó8ˆ
àˆ
ØÒ&¨=Ò+Dä�?×'Ñ'Ó)Ó*¨QÔ.Ø"1×"9Ñ"9¸"Ó"=�Ü�=×%Ñ%Ó'Ó(¨1Ô,Ø -× 5Ñ 5°bÓ 9�à(×-Ñ-¨aÓ0ˆMØ-×3Ñ3°A°}ÓEˆOØ)×/Ñ/°°=ÓAˆMä'°]ÔCˆHÙ! ,Ó@ˆJÙ 
Ó:ˆHØ$ xÕ/°1Õ4ˆJä+ØØ%Ø!Ø!×/Ñ/Ø×)Ñ)ô
ð 	
rO   )r'  r‰  r÷  )NNNNNNNrÛ  r…   s   @@rM   rõ  rõ  g  s0   ù‡ € õð Ø÷3
ñ 3
ó ó ÷3
ð 3
rO   rõ  )Nr´   )r’  rº  rÝ  rõ  rÊ  rí  rZ  r&  )NÚcollections.abcr   r?   Útorch.nnr1   r   r   r   Ú r   r,  Úactivationsr   r	   Úcache_utilsr
   r   r   Ú
generationr   Úmasking_utilsr   r   Úmodeling_layersr   Úmodeling_outputsr   r   r   r   r   r   r   r   Úmodeling_utilsr   r   Úprocessing_utilsr   Úpytorch_utilsr   Úutilsr   r   r   Úutils.genericr    r!   Úutils.output_capturingr"   Úconfiguration_data2vec_textr#   Ú
get_loggerr|   rš  rŽ   r%   r›   r�   rÆ   rÖ   rê   rú   r  r  r&  r;  rM  rZ  rx  r†  r’  rº  rÊ  rÝ  rí  rõ  Ú__all__r0  rO   rM   Ú<module>r     sI  ðõ* %ã Ý ß AÑ Aå &ß 'ß CÑ CÝ )ß JÝ 9÷	÷ 	ó 	÷ GÝ &Ý 6ß @Ñ @ß IÝ 5Ý ;ð 
×	Ò	˜HÓ	%€ôc8˜RŸY™Yô c8÷L%ô8@) §	¡	ô @)ôFI) §¡ô I)ôX˜RŸY™Yô ô.˜BŸI™Iô .ô:˜rŸy™yô ô˜Ÿ™ô ô>Ð2ô >ðB ô/ /ó /ó ð/ô,
˜"Ÿ)™)ô 
ô@˜Ÿ™ô ð ô|6Ð3ó |6ó ð|6ô~˜Ÿ™ô ô, R§Y¡Yô ñ, ðôô
`
Ð9¸?ó `
óð
`
ðF ôI
Ð9ó I
ó ðI
ñX ðôôH
Ð,Gó H
óðH
ðV ô\
Ð$?ó \
ó ð\
ð~ ô:
Ð)Dó :
ó ð:
ðz ô@
Ð'Bó @
ó ð@
òF	‚rO   