+
    "Ý³jÓ  ã                   ó˜   € ^ RI t ^RIHt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 ^RIHt ]! 4       t ! R	 R
]4      tR
.tR# )é    N)ÚAdapterÚLora)ÚDEVICEÚPLATFORM)ÚFORMATÚMETHOD)Údequantize_gemm)ÚBACKEND)Úsetup_logger)ÚAWQuantLinearc                   óÈ  a a€ ] tR t^t o]P
                  .t]P                  .t	]
P                  ^
/t^.t. ROtRR.tRR.tRtRtRt^.t^.t]P.                  .t]P.                  .t]P8                  .t].t]P@                  ]PB                  .t"Rt#Rt$R]P8                  RR3V3R lV 3R lllt%V 3R lt&V3R lR	 lt'RV3R
 lR llt(V3R lR lt)V3R lR lt*Rt+Vt,V ;t-# )ÚAwqTorchLinearTFÚ	awq_torchNc                ój   <€ V ^8„  d   QhRS[ RS[ RS[RS[RS[ RS[ RS[RS[P                  R	S[R
S[/
# )é   ÚbitsÚ
group_sizeÚsymÚdesc_actÚin_featuresÚout_featuresÚbiasÚ
pack_dtypeÚadapterÚregister_buffers)ÚintÚboolÚtorchÚdtyper   )ÚformatÚ__classdict__s   "€Úg/home/luca/screen-checking/.venv/lib/python3.14/site-packages/gptqmodel/nn_modules/qlinear/torch_awq.pyÚ__annotate__ÚAwqTorchLinear.__annotate__-   s   ø€ ÷ !Cñ !Cáð!Cñ ð!Cñ ð	!Cñ
 ð!Cñ ð!Cñ ð!Cñ ð!Cñ —K‘Kð!Cñ ð!Cñ ñ!Có    c                ó€  <€ VP                  R 4      ;'       g    \        P                  V n        \        SV `  ! RRVRVRVRVRVRVRVRVR	VP                  R	\        P                  4      R
V	RV
/VB  V
'       dÃ   V P                  eQ   V P                  P                  V P                  8w  d,   V P                  P                  V P                  R7      V n	        V P                  eU   V P                  P                  V P                  8w  d.   V P                  P                  V P                  R7      V n        R# R# R# R# )r   r   r   r   r   r   r   r   r   Úbackendr   r   N©r   © )Úgetr   Úfloat16Úcompute_dtypeÚsuperÚ__init__Úpopr
   Ú	AWQ_TORCHÚscalesr   Útor   )Úselfr   r   r   r   r   r   r   r   r   r   ÚkwargsÚ	__class__s   &&&&&&&&&&&,€r"   r.   ÚAwqTorchLinear.__init__-   s?  ø€ ð $ŸZ™Z¨Ó0×AÐA´E·M±MˆÔÜ‰Òñ 	
Øð	
à!ð	
ð ð	
ð ð		
ð
 $ð	
ð &ð	
ð ð	
ð "ð	
ð —J‘J˜y¬'×*;Ñ*;Ó<ð	
ð ð	
ð .ð	
ð ò	
÷ Ø�{‰{Ò&¨4¯;©;×+<Ñ+<À×@RÑ@RÔ+RØ"Ÿk™kŸn™n°4×3EÑ3E˜nÓF�”Ø�y‰yÒ$¨¯©¯©¸D×<NÑ<NÔ)NØ ŸI™IŸL™L¨t×/AÑ/A˜LÓB�–	ñ *OÑ$ñ r%   c                óü  <€ V P                   ei   V P                   P                  \        P                  \        P                  39  d0   V P                   P                  \        P                  R7      V n         V P                  ei   V P                  P                  \        P                  \        P                  39  d0   V P                  P                  \        P                  R7      V n        \        SV `!  4        R # )Nr(   )	r1   r   r   r+   Úbfloat16r2   r   r-   Ú	post_init)r3   r5   s   &€r"   r9   ÚAwqTorchLinear.post_initP   s“   ø€ Ø�;‰;Ò" t§{¡{×'8Ñ'8ÄÇÁÔPU×P^ÑP^Ð@_Ô'_ØŸ+™+Ÿ.™.¬u¯}©}˜.Ó=ˆDŒKØ�9‰9Ò  T§Y¡Y§_¡_¼U¿]¹]ÌEÏNÉNÐ<[Ô%[ØŸ	™	Ÿ™¬5¯=©=˜Ó9ˆDŒIÜ‰ÑÖr%   c                ó    <€ V ^8„  d   QhRS[ /# )r   Úreturn)Ústr)r    r!   s   "€r"   r#   r$   W   s   ø€ ÷ 
ñ 
™Cñ 
r%   c           
     óŒ   € R V P                    RV P                   RV P                  RJ RV P                   RV P                   2
# )zin_features=z, out_features=z, bias=Nz, bits=z, group_size=)r   r   r   r   r   )r3   s   &r"   Ú
extra_reprÚAwqTorchLinear.extra_reprW   sR   € à˜4×+Ñ+Ð,¨O¸D×<MÑ<MÐ;Nð OØ—I‘I TÐ)Ð*¨'°$·)±)°¸MÈ$Ï/É/ÐIZð\ð	
r%   c                ó–   <€ V ^8„  d   QhRS[ P                  P                  RS[ P                  RS[ P                  RS[ P                  /# )r   Úlinearr1   ÚzerosÚg_idx)r   ÚnnÚModuleÚTensor)r    r!   s   "€r"   r#   r$   ]   s@   ø€ ÷ 6/ñ 6/™5Ÿ8™8Ÿ?™?ð 6/±E·L±Lð 6/ÉÏÉð 6/Ñ^c×^jÑ^jñ 6/r%   c           	     ó�	  € ?Ve   Vf   Q hVP                  4       P                  4       pVP                  4       P                  4       pW2,          pVP                  \        P                  \        P
                  39   d   VP                  M\        P                  pV P                  RVP                  4       P                  V4      4       VP                  eŒ   VP                  P                  \        P                  \        P
                  39   d   VP                  P                  MTpV P                  RVP                  P                  4       P                  V4      4       MR V n	        ^ V P                  ,          p. p	\        V P                  4       F¯  p
V	P                  \        P                  ! VP                  P                   RV
3,          WZV P"                  ,          ,          ,           V P$                  W P"                  ,          ,          ,          4      P                  \        P&                  4      R	,          4       K±  	  \        P(                  ! V	^R7      P                  4       P                  4       p	\        P*                  ! V	P,                  ^ ,          V	P,                  ^,          ^ ,          V P                  ,          3\        P&                  V	P.                  R7      p\        P*                  ! VP,                  ^ ,          VP,                  ^,          ^ ,          V P                  ,          3\        P&                  VP.                  R7      pV P                  ^8w  d   \1        R4      h. R
Op\        V	P,                  ^,          V,          4       Fa  p\        V4       FO  pV	RWè,          Wß,          ,           3,          pVRV3;;,          VWðP                  ,          ,          ,          uu&   KQ  	  Kc  	  \        VP,                  ^,          V,          4       F~  p\        V4       Fl  pVRWè,          Wß,          ,           3,          P                  \        P&                  4      pVRV3;;,          VWðP                  ,          ,          ,          uu&   Kn  	  K€  	  V P                  RV4       V P                  RV4       R # )Nr1   r   ºNNN)Údim)r   Údevicez!Only 4-bit are supported for now.ÚqweightÚqzeros)rI   N)r   r   é   é   é   é   é   é   )ÚtÚ
contiguousr   r   r+   r8   Úregister_bufferÚcloner2   r   r   Úranger   ÚappendÚroundÚweightÚdatar   r1   Úint32ÚcatrC   ÚshaperK   ÚNotImplementedError)r3   rB   r1   rC   rD   Úscale_zerosÚscale_dtypeÚ
bias_dtypeÚpack_numÚ	intweightÚidxrL   rM   Ú	order_mapÚcolÚiÚqweight_colÚ	qzero_cols   &&&&&             r"   ÚpackÚAwqTorchLinear.pack]   sP  € ØØÒ! eÒ&7Ð7Ð7à—‘“×&Ñ&Ó(ˆØ—‘“	×$Ñ$Ó&ˆØ•nˆà&,§l¡l´u·}±}ÄeÇnÁnÐ6UÔ&U�f—l’lÔ[`×[hÑ[hˆØ×Ñ˜X v§|¡|£~×'8Ñ'8¸Ó'EÔFØ�;‰;Ò"Ø.4¯k©k×.?Ñ.?ÄEÇMÁMÔSX×SaÑSaÐCbÔ.b˜Ÿ™×*Ò*ÐhsˆJØ× Ñ  ¨¯©×):Ñ):Ó)<×)?Ñ)?À
Ó)KÕLàˆDŒIà˜Ÿ™•?ˆàˆ	Ü˜×)Ñ)Ö*ˆCØ×ÑÜ—’Ø—]‘]×'Ñ'¨¨3¨Õ/°+ÀTÇ_Á_Õ>TÕ2UÕUØ—k‘k #¯©Õ"8Õ9õ:ó÷ ‘"”U—[‘[“/ 'õ+öñ +ô —I’I˜i¨QÔ/×1Ñ1Ó3×>Ñ>Ó@ˆ	ä—+’+Ø�_‰_˜QÕ §¡°Õ!3°rÕ!9¸D¿I¹IÕ!EÐFÜ—+‘+Ø×#Ñ#ô
ˆô
 —’Ø�[‰[˜�^˜UŸ[™[¨�^¨rÕ1°D·I±IÕ=Ð>Ü—+‘+Ø—<‘<ô
ˆð �9‰9˜Œ>Ü%Ð&IÓJÐJÚ,ˆ	ä˜Ÿ™¨Õ+¨xÕ7Ö8ˆCÜ˜8–_�Ø'¨¨3­>¸I½LÕ+HÐ(HÕI�Ø˜˜3˜— ;°1·y±yµ=Õ#AÕA•ó %ñ 9ô
 ˜Ÿ™ Q�¨8Õ3Ö4ˆCÜ˜8–_�Ø! ! S¥^°iµlÕ%BÐ"BÕC×FÑFÄuÇ{Á{ÓS�	Ø�q˜#�v— )°·I±IµÕ">Õ>•ó %ñ 5ð
 	×Ñ˜Y¨Ô0Ø×Ñ˜X vÖ.r%   c                óR   <€ V ^8„  d   QhRS[ P                  RS[ P                  RR/# )r   rK   r   r<   N)r   rK   r   )r    r!   s   "€r"   r#   r$   •   s0   ø€ ÷ Nñ N©u¯|©|ð NÁEÇKÁKð NÐTXñ Nr%   c               ó>  € V P                   P                  V8w  g<   V P                   P                  V8w  g!   V P                   P                  4       '       g0   V P                   P	                  WR 7      P                  4       V n         V P                  eŠ   V P                  P                  V8w  g<   V P                  P                  V8w  g!   V P                  P                  4       '       g2   V P                  P	                  WR 7      P                  4       V n        R# R# R# )©rK   r   N)r1   rK   r   Úis_contiguousr2   rU   r   )r3   rK   r   s   &$$r"   Ú_ensure_runtime_dtypeÚ$AwqTorchLinear._ensure_runtime_dtype•   s¾   € Ø�;‰;×Ñ Ô'¨4¯;©;×+<Ñ+<ÀÔ+EÈTÏ[É[×MfÑMf×MhÒMhØŸ+™+Ÿ.™.°˜.ÓD×OÑOÓQˆDŒKØ�9‰9Ò Ø�I‰I×Ñ Ô&¨$¯)©)¯/©/¸UÔ*BÈ$Ï)É)×JaÑJa×JcÒJcàŸ	™	Ÿ™¨F˜Ó@×KÑKÓMˆDŽIñ Kdñ !r%   c                ó4   <€ V ^8„  d   QhRS[ P                  /# )r   Úx)r   rG   )r    r!   s   "€r"   r#   r$   �   s   ø€ ÷ &ñ &™Ÿ™ñ &r%   c                óú  € VP                   pV\        P                  \        P                  39   d   TM\        P                  pVP                  R R V P
                  3,           pVP                  pVP                  RVP                  R,          4      pVP                   V8w  g   VP                  V8w  d   VP                  WSR7      pM&VP                  4       '       g   VP                  4       pV P                  WSR7       \        V P                  V P                  V P                  V P                   V P"                  R7      pVP                   \        P                  \        P                  39  d   \%        RVP                    R24      hVP                   V8w  g(   VP                  V8w  g   VP                  4       '       g!   VP                  WSR7      P                  4       p\        P&                  ! Wg4      pV P(                  e   W€P(                  ,           pV P*                  '       d   V P*                  P-                  WhR7      pVP                   V8w  d   VP                  VR7      pVP                  V4      pV# )Nrp   )rL   rM   r1   r   r   zweight z is not float16 or bfloat16)ru   Úoutr(   éÿÿÿÿ)r   r   r+   r8   r_   r   rK   Úreshaper2   rq   rU   rr   r	   rL   rM   r1   r   r   ÚAssertionErrorÚmatmulr   r   Úapply)	r3   ru   Úinput_dtyper,   Úoriginal_shaperK   Úx_flatr[   Úoutputs	   &&       r"   ÚforwardÚAwqTorchLinear.forward�   sÒ  € Ø—g‘gˆØ'2´u·}±}ÄeÇnÁnÐ6UÔ'U™Ô[`×[hÑ[hˆØŸ™  "˜¨×):Ñ):Ð(<Õ<ˆØ—‘ˆØ—‘˜2˜qŸw™w r�{Ó+ˆØ�<‰<˜=Ô(¨F¯M©M¸VÔ,CØ—Y‘Y f�YÓB‰FØ×%Ñ%×'Ò'Ø×&Ñ&Ó(ˆFà×"Ñ"¨&Ð"ÔFä Ø—L‘LØ—;‘;Ø—;‘;Ø—‘Ø—‘ô
ˆð �<‰<¤§¡¬u¯~©~Ð>Ô>Ü  7¨6¯<©<¨.Ð8SÐ!TÓUÐUØ�<‰<˜=Ô(¨F¯M©M¸VÔ,CÈ6×K_ÑK_×KaÒKaØ—Y‘Y f�YÓB×MÑMÓOˆFä—’˜fÓ-ˆà�9‰9Ò ØŸi™iÕ'ˆFà�<�<ˆ<Ø—\‘\×'Ñ'¨&Ð'Ó=ˆFà�<‰<˜;Ô&Ø—Y‘Y [�YÓ1ˆFà—‘ Ó/ˆàˆr%   )r   r,   r1   )rx   é   é    é@   é€   )N).Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r
   r0   ÚSUPPORTS_BACKENDSr   ÚAWQÚSUPPORTS_METHODSr   ÚGEMMÚSUPPORTS_FORMATSÚSUPPORTS_BITSÚSUPPORTS_GROUP_SIZEÚSUPPORTS_DESC_ACTÚSUPPORTS_SYMÚSUPPORTS_SHARDSÚSUPPORTS_TRAININGÚSUPPORTS_AUTO_PADDINGÚ!SUPPORTS_IN_FEATURES_DIVISIBLE_BYÚ"SUPPORTS_OUT_FEATURES_DIVISIBLE_BYr   ÚALLÚSUPPORTS_DEVICESr   ÚSUPPORTS_PLATFORMr   r]   ÚSUPPORTS_PACK_DTYPESr   ÚSUPPORTS_ADAPTERSr+   r8   ÚSUPPORTS_DTYPESÚREQUIRES_FORMAT_V2Ú
QUANT_TYPEr.   r9   r?   rl   rr   r�   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r5   r!   s   @@r"   r   r      s  ù‡ € Ø ×*Ñ*Ð+ÐØŸ
™
�|ÐØŸ™ RÐ(ÐØ�C€MÚ/ÐØ˜u˜ÐØ˜%�=€LØ€OØÐØ!ÐØ)*¨Ð%Ø*+¨Ð&àŸ
™
�|ÐØ!Ÿ™˜ÐØ!ŸK™K˜=ÐØ˜Ðà—}‘} e§n¡nÐ5€OàÐà€Jð Ø"'§+¡+ØØ!&÷!Cõ !CõF÷
ð 
÷6/ò 6/÷pNð N÷&÷ &ð &r%   r   )r   Úadapter.adapterr   r   Úmodels._constr   r   Úquantizationr   r   Ú$quantization.awq.utils.packing_utilsr	   Úutils.backendr
   Úutils.loggerr   Ú r   Úlogr   Ú__all__r)   r%   r"   Ú<module>r­      sA   ðó ç ,ß -ß *Ý CÝ $Ý (Ý ñ ƒn€ôo�]ô oðb Ð
‚r%   