+
    "Ý³j!3  ã                   ó"  € ^ RI HtHt ^ RIt^ RIHt ^ RIHt ^RIH	t	H
t
 ^RIHtHt ^RIHtHt ^RIHtHt ^RIHt R	tR
tR R ltR R ltR R ltR R lt ! R R]P
                  P8                  4      t ! R R]4      tR R lt. ROt R# )é    )ÚOptionalÚTupleN©ÚPreTrainedModel)ÚAdapterÚLora)ÚDEVICEÚPLATFORM)ÚBaseQuantLinearÚGPTQQuantLinear)ÚFORMATÚMETHOD)ÚBACKENDÚint8_weight_nkÚint8_channel_scalec                ó$   € V ^8„  d   QhR\         /# ©é   Úreturn©Úbool)Úformats   "Úh/home/luca/screen-checking/.venv/lib/python3.14/site-packages/gptqmodel/nn_modules/qlinear/torch_int8.pyÚ__annotate__r      s   € ÷ :ñ :œñ :ó    c                  óJ   € \        \        P                  P                  R 4      # )Ú_weight_int8pack_mm)ÚhasattrÚtorchÚopsÚaten© r   r   Ú_has_int8_mm_opr#      s   € Ü”5—9‘9—>‘>Ð#8Ó9Ð9r   c                óŽ   € V ^8„  d   QhR\         P                  R\        \         P                  \         P                  3,          /# )r   Úfloat_weightr   )r   ÚTensorÚtuple)r   s   "r   r   r      s0   € ÷ &ñ &¤e§l¡lð &´u¼U¿\¹\Ì5Ï<É<Ð=WÕ7Xñ &r   c                ó€  € V P                   ^8w  d"   \        R\        V P                  4       24      hV P	                  4       P                  ^ R7      pVR,          P                  R4      pWP                  ^ 4      ,          P                  4       P                  R^4      P                  \        P                  4      pW23# )z>Per-channel symmetric int8 re-quantization for [K, N] weights.zExpected 2D weight, got shape=)Údimg     À_@g»½×Ùß|Û=i€ÿÿÿ)ÚndimÚ
ValueErrorr'   ÚshapeÚabsÚamaxÚ	clamp_minÚ	unsqueezeÚroundÚclamp_Útor   Úint8)r%   Úchannel_maxÚchannel_scaleÚweight_int8s   &   r   Ú_requantize_to_int8r8      s¡   € à×Ñ˜AÔÜÐ9¼%À×@RÑ@RÓ:SÐ9TÐUÓVÐVà×"Ñ"Ó$×)Ñ)¨aÐ)Ó0€KØ  5Õ(×3Ñ3°EÓ:€Mà	×/Ñ/°Ó2Õ	2ß	‰‹ß	‰��cÓ	ß	‰ŒE�J‰J‹ð	 ð Ð%Ð%r   c                ón   € V ^8„  d   QhR\         P                  R\        \        P                  ,          /# )r   Úmoduler   )ÚnnÚModuler   r   r&   )r   s   "r   r   r   -   s'   € ÷ +ñ +¤B§I¡Ið +´(¼5¿<¹<Õ2Hñ +r   c                 ó   € \        V \        R 4      p\        V \        R 4      pVe   Vf   R # VP                  4       P	                  \
        P                  4      pVP	                  \
        P                  4      pW4P                  ^ 4      ,          # ©N)ÚgetattrÚINT8_WEIGHT_BUFFER_NAMEÚINT8_SCALE_BUFFER_NAMEÚtr3   r   Úfloat32r0   )r:   Úint8_weightÚ
int8_scaleÚ	weight_knÚscaless   &    r   Ú_cached_int8_dequantizerH   -   sn   € Ü˜&Ô"9¸4Ó@€KÜ˜Ô!7¸Ó>€JØÒ˜jÒ0Ùà—‘“×"Ñ"¤5§=¡=Ó1€IØ�]‰]œ5Ÿ=™=Ó)€FØ×'Ñ'¨Ó*Õ*Ð*r   c                ó|   € V ^8„  d   QhR\         P                  R\        P                  R\        P                  RR/# )r   r:   r%   Údtyper   N)r;   r<   r   r&   rJ   )r   s   "r   r   r   8   s5   € ÷ 2ñ 2¤§	¡	ð 2¼¿¹ð 2ÌeÏkÉkð 2Ð^bñ 2r   c                 ó¨  € \        VP                  \        P                  4      4      w  r4VP	                  4       P                  4       pVP                  VR 7      P                  4       p\        V P                  9  d   V P                  \        VRR7       MWPn	        \        V P                  9  d   V P                  \        VRR7       R# W@n        R# )©rJ   F©Ú
persistentN)r8   r3   r   rC   rB   Ú
contiguousr@   Ú_buffersÚregister_bufferr   rA   r   )r:   r%   rJ   Úint8_weight_knr6   r   s   &&&   r   Ú_write_int8_buffersrS   8   s¡   € Ü$7¸¿¹ÌÏÉÓ8VÓ$WÑ!€Nà#×%Ñ%Ó'×2Ñ2Ó4€NØ!×$Ñ$¨5Ð$Ó1×<Ñ<Ó>€Mä f§o¡oÔ5Ø×ÑÔ6¸ÐSXÐÕYà .Ôä V§_¡_Ô4Ø×ÑÔ5°}ÐQVÐÖWà$1Ö!r   c                   óT   a a€ ] tR t^It oRtV3R lV 3R lltV3R lR ltRtVtV ;t	# )ÚInt8PackedModulez?CPU fused int8 matmul wrapper around aten::_weight_int8pack_mm.c                óN   <€ V ^8„  d   QhRS[ P                  RS[ P                  /# )r   r   Úchannel_scales©r   r&   )r   Ú__classdict__s   "€r   r   ÚInt8PackedModule.__annotate__L   s'   ø€ ÷ Wñ W¡u§|¡|ð WÁUÇ\Á\ñ Wr   c                ó„   <€ \         SV `  4        V P                  \        VR R7       V P                  \        VR R7       R# )FrM   N)ÚsuperÚ__init__rQ   r@   rA   )Úselfr   rW   Ú	__class__s   &&&€r   r]   ÚInt8PackedModule.__init__L   s<   ø€ Ü‰ÑÔØ×ÑÔ4°nÐQVÐÔWØ×ÑÔ3°^ÐPUÐÖVr   c                óN   <€ V ^8„  d   QhRS[ P                  RS[ P                  /# ©r   Úxr   rX   )r   rY   s   "€r   r   rZ   Q   s'   ø€ ÷ cñ c™Ÿ™ð c©%¯,©,ñ cr   c                ó  € V P                   P                  VP                  8w  d,   V P                   P                  VP                  R 7      V n         \        P                  P
                  P                  WP                  V P                   4      # )rL   )r   rJ   r3   r   r    r!   r   r   ©r^   rc   s   &&r   ÚforwardÚInt8PackedModule.forwardQ   sa   € Ø×"Ñ"×(Ñ(¨A¯G©GÔ3Ø&*×&=Ñ&=×&@Ñ&@ÀqÇwÁwÐ&@Ó&OˆDÔ#Ü�y‰y�~‰~×1Ñ1°!×5HÑ5HÈ$×JaÑJaÓbÐbr   )r   )
Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r]   rf   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r_   rY   s   @@r   rU   rU   I   s&   ù‡ € ÙI÷Wó W÷
c÷ cð cr   rU   c                   óø  a a€ ] tR t^Wt o]P
                  .t]P                  .t	]
P                  ^ ]
P                  ^ /t. R!Ot. R"OtRR.tRR.tRtRtRt^.t^.t]P.                  .t]P4                  ]P6                  .t]P<                  .t] .t!]PD                  ]PF                  ]PH                  .t%Rt&Rt'R#t(R$t)R]P<                  RR3V3R lV 3R lllt*]+V3R lR l4       t,V 3R	 lt-V 3R
 lt.V3R lR lt/V3R lR lt0R t1R t2R%V3R lR llt3]Ph                  ! 4       R&V3R lR ll4       t5R&V3R lR llt6V3R lR lt7V3R lR lt8V3R lR lt9]Pt                  V3R lR l4       t;R t<R t=Vt>V ;t?# )'ÚTorchInt8LinearTFÚ
torch_int8Nc                ó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[/
# )r   ÚbitsÚ
group_sizeÚsymÚdesc_actÚin_featuresÚout_featuresÚbiasÚ
pack_dtypeÚadapterÚregister_buffers)Úintr   r   rJ   r   )r   rY   s   "€r   r   ÚTorchInt8Linear.__annotate__r   ss   ø€ ÷ <ñ <áð<ñ ð<ñ ð	<ñ
 ð<ñ ð<ñ ð<ñ ð<ñ —K‘Kð<ñ ð<ñ ñ<r   c                ó
  <€ \         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 P
                  ^8X  d   \        P                  M\        P                  V n	        RV n
        R# )ru   rv   rw   rx   ry   rz   r{   r|   Úbackendr}   r~   Nr"   )r\   r]   Úpopr   ÚGPTQ_TORCH_INT8ru   r   Úint16r4   Údequant_dtypeÚint8_module)r^   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   Úkwargsr_   s   &&&&&&&&&&&,€r   r]   ÚTorchInt8Linear.__init__r   s½   ø€ ô 	‰Òñ 	
Øð	
à!ð	
ð ð	
ð ð		
ð
 $ð	
ð &ð	
ð ð	
ð "ð	
ð —J‘J˜y¬'×*AÑ*AÓBð	
ð ð	
ð .ð	
ð ò	
ð -1¯I©I¸¬NœUŸ[š[ÄÇ
Á
ˆÔØ7;ˆÖr   c                óF   <€ V ^8„  d   QhRS[ S[S[S[,          3,          /# r   )r   r   r   Ú	Exception)r   rY   s   "€r   r   r€   ’   s#   ø€ ÷ ñ ™e¡D©(±9Õ*=Ð$=Õ>ñ r   c                ó@   € \        4       '       g   R \        R4      3# R# )Fz?aten::_weight_int8pack_mm is unavailable in this PyTorch build.)TN)r#   ÚImportError)Úclss   &r   Úvalidate_onceÚTorchInt8Linear.validate_once‘   s"   € ä× Ò Øœ+Ð&gÓhÐhÐhØÐr   c                ó*  <€ \         SV `  4        V P                  \        P                  R 7       V P                  4        V P                  4        \        V P                  V P                  4      P                  4       V n        V P                  4        R# )rL   N)r\   Ú	post_initÚtransform_cpur   rC   Ú_empty_gptq_only_weightsÚ_drop_unpack_buffersrU   r   r   Úevalr‡   Úoptimize©r^   r_   s   &€r   r’   ÚTorchInt8Linear.post_init—   sj   ø€ Ü‰ÑÔð 	×Ñ¤§¡ÐÔ/Ø×%Ñ%Ô'Ø×!Ñ!Ô#Ü+¨D×,?Ñ,?À×AXÑAXÓY×^Ñ^Ó`ˆÔØ�‰Žr   c                óL   <€ V P                   '       d   R # \        SV `	  4        R # r>   )Ú	optimizedr\   r—   r˜   s   &€r   r—   ÚTorchInt8Linear.optimize¡   s   ø€ Ø�>�>ˆ>ÙÜ‰ÑÖr   c                ó    <€ V ^8„  d   QhRS[ /# r   r   )r   rY   s   "€r   r   r€   ¦   s   ø€ ÷ ]ñ ]¡tñ ]r   c                ó    a € \         ;QJ d)    V 3R  lS P                   4       F  '       d   K   R# 	  R# ! V 3R  lS P                   4       4      # )c              3   óB   <"  € T F  p\        SVR 4      R Jx € K  	  R # 5ir>   )r?   )Ú.0Únamer^   s   & €r   Ú	<genexpr>Ú8TorchInt8Linear._has_all_gptq_buffers.<locals>.<genexpr>§   s!   øé € Ð\ÑE[¸T”7˜4  tÓ,°DÕ8ÓE[ùs   ƒFT)ÚallÚGPTQ_BUFFER_NAMES)r^   s   fr   Ú_has_all_gptq_buffersÚ%TorchInt8Linear._has_all_gptq_buffers¦   s8   ø€ ß‹sÔ\ÀT×E[ÒE[Ó\�sŒsÐ\ŠsÐ\ˆsÔ\ÀT×E[ÒE[Ó\Ó\Ð\r   c                ó    <€ V ^8„  d   QhRS[ /# )r   Ú	attr_name)Ústr)r   rY   s   "€r   r   r€   ©   s   ø€ ÷ %ñ %±ñ %r   c                óB   € \        W4      '       d   \        W4       R # R # r>   )r   Údelattr)r^   r©   s   &&r   Ú_delete_attr_if_existsÚ&TorchInt8Linear._delete_attr_if_exists©   s   € Ü�4×#Ò#Ü�DÖ$ñ $r   c           	     óÞ  € \        V R 4      '       d1   \        V R4      '       d   V P                  e   V P                  e   R# V P                  R9  d   \	        R4      h\
        P                  ! \        \        ^ V P                  V P                  4      4      \
        P                  R7      P                  ^ 4      pV P                  P                  pVP                  ^ 4      P                  VR7      pVP                  R	4      P                  VR7      pR V P                  9  d   V P!                  R VRR7       MW0n        RV P                  9  d   V P!                  RVRR7       R# W@n        R# )
Úwf_unsqueeze_zeroÚwf_unsqueeze_neg_oneNz7TorchInt8Linear unpack only supports bits in [2, 4, 8].rL   )ÚdeviceFrM   ©r   é   é   éÿÿÿÿ)r   r°   r±   ru   ÚNotImplementedErrorr   ÚtensorÚlistÚrangeÚpack_dtype_bitsÚint32r0   Úqweightr²   r3   rP   rQ   )r^   Úwfr²   Úwf_zeroÚ
wf_neg_ones   &    r   Ú_ensure_unpack_buffersÚ&TorchInt8Linear._ensure_unpack_buffers­   s#  € ä�DÐ-×.Ò.Ü˜Ð4×5Ò5Ø×&Ñ&Ò2Ø×)Ñ)Ò5áà�9‰9˜IÔ%Ü%Ð&_Ó`Ð`ä�\Š\œ$œu Q¨×(<Ñ(<¸d¿i¹iÓHÓIÔQV×Q\ÑQ\Ô]×gÑgÐhiÓjˆØ—‘×$Ñ$ˆØ—,‘,˜q“/×$Ñ$¨FÐ$Ó3ˆØ—\‘\ "Ó%×(Ñ(°Ð(Ó7ˆ
à d§m¡mÔ3Ø× Ñ Ð!4°gÈ%Ð ÕPà%,Ô"à!¨¯©Ô6Ø× Ñ Ð!7¸ÐPUÐ ÖVà(2Ö%r   c                óN   € V P                    F  pV P                  V4       K  	  R # r>   )ÚUNPACK_BUFFER_NAMESr­   ©r^   r¡   s   & r   r•   Ú$TorchInt8Linear._drop_unpack_buffersÈ   s    € Ø×,Ô,ˆDØ×'Ñ'¨Ö-ó -r   c                ó    <€ V ^8„  d   QhRS[ /# )r   Únum_itr)r   )r   rY   s   "€r   r   r€   Ì   s   ø€ ÷ Tñ T©ñ Tr   c           	     ó°  € \        V 4      pVe   V P                  4       '       g   V# V^8w  d   \        R4      hV P                  4       '       g   \        R4      hV P	                  4        \
        P                  ! \
        P                  ! V P                  ^4      P                  RRV P                  4      V P                  4      P                  V P                  4      p\
        P                  ! W0P                  4      P!                  V P"                  P$                  4      p\
        P                  ! \
        P                  ! \
        P                  ! V P&                  ^4      P                  RV P                  R4      V P(                  4      P                  V P                  4      V P                  4      pVP!                  VP$                  ^ ,          VP$                  ^,          ,          VP$                  ^,          4      pV P"                  V P*                  P-                  4       ,          WCV P*                  P-                  4       ,          ,
          ,          # )Nz=TorchInt8Linear dequantize_weight only supports num_itr == 1.z8TorchInt8Linear missing GPTQ buffers for dequantization.r¶   )rH   r¦   r·   ÚRuntimeErrorrÁ   r   Úbitwise_right_shiftr0   ÚqzerosÚexpandÚpack_factorr°   r3   r†   Úbitwise_andÚmaxqÚreshaperG   r,   r½   r±   Úg_idxÚlong)r^   rÈ   ÚdequantizedÚzerosÚweights   &&   r   Údequantize_weightÚ!TorchInt8Linear.dequantize_weightÌ   s©  € ä-¨dÓ3ˆØÒ"¨4×+EÑ+E×+GÒ+GØÐà�aŒ<Ü%Ð&eÓfÐfà×)Ñ)×+Ò+ÜÐYÓZÐZà×#Ñ#Ô%ä×)Ò)Ü�OŠO˜DŸK™K¨Ó+×2Ñ2°2°r¸4×;KÑ;KÓLØ×"Ñ"ó
÷ ‰"ˆT×ÑÓ
 ð 	ô ×!Ò! %¯©Ó3×;Ñ;¸D¿K¹K×<MÑ<MÓNˆä×"Ò"Ü×%Ò%Ü—’ §¡¨aÓ0×7Ñ7¸¸D×<LÑ<LÈbÓQØ×)Ñ)ó÷ ‰b�×#Ñ#Ó$Ø�I‰Ió
ˆð —‘ §¡¨Q¥°&·,±,¸qµ/Õ AÀ6Ç<Á<ÐPQÅ?ÓSˆà�{‰{˜4Ÿ:™:Ÿ?™?Ó,Õ-°ÀÇ
Á
ÇÁÓ@QÕ:RÕ1RÕSÐSr   c                óŽ   <€ V ^8„  d   QhRS[ P                  RS[P                  RS[P                  RS[P                  RS[RS[/# ©r   ÚlinearrG   rÕ   rÒ   Úblock_inÚworkers©r;   r<   r   r&   r   )r   rY   s   "€r   r   r€   ì   óW   ø€ ÷ 
ñ 
á—	‘	ð
ñ —‘ð
ñ �|‰|ð	
ñ
 �|‰|ð
ñ ð
ñ ñ
r   c                ó   € \        R 4      h©z\TorchInt8Linear is not packable. Load GPTQ int4 tensors and let post_init() convert to int8.©r·   ©r^   rÛ   rG   rÕ   rÒ   rÜ   rÝ   s   &&&&&&&r   Ú
pack_blockÚTorchInt8Linear.pack_blockë   s   € ô "Øjó
ð 	
r   c                óŽ   <€ V ^8„  d   QhRS[ P                  RS[P                  RS[P                  RS[P                  RS[RS[/# rÚ   rÞ   )r   rY   s   "€r   r   r€   ù   rß   r   c                ó   € \        R 4      hrá   râ   rã   s   &&&&&&&r   ÚpackÚTorchInt8Linear.packù   s   € ô "Øjó
ð 	
r   c                ó4   <€ V ^8„  d   QhRS[ P                  /# )r   rJ   )r   rJ   )r   rY   s   "€r   r   r€     s   ø€ ÷ Jñ J¡5§;¡;ñ Jr   c                ó~   € V P                  ^R7      P                  \        P                  4      p\	        WVR7       R# )é   )rÈ   )r%   rJ   N)r×   r3   r   rC   rS   )r^   rJ   r%   s   && r   r“   ÚTorchInt8Linear.transform_cpu  s.   € à×-Ñ-°aÐ-Ó8×;Ñ;¼E¿M¹MÓJˆÜ˜DÀ5×Ir   c                ó:   <€ V ^8„  d   QhRS[ P                  RS[/# )r   rJ   r²   )r   rJ   rª   )r   rY   s   "€r   r   r€     s   ø€ ÷ "ñ "™uŸ{™{ð "±Cñ "r   c                óL   € VR 8w  d   \        R4      hV P                  V4       R# )Úcpuz"TorchInt8Linear only supports CPU.N)r·   r“   )r^   rJ   r²   s   &&&r   Ú	transformÚTorchInt8Linear.transform  s#   € Ø�UŒ?Ü%Ð&JÓKÐKØ×Ñ˜5Ö!r   c                ó4   <€ V ^8„  d   QhRS[ P                  /# )r   rc   rX   )r   rY   s   "€r   r   r€     s   ø€ ÷ ñ ™Ÿ™ñ r   c                óæ  € V P                   '       d   \        R 4      hV P                  f   \        R4      hVP	                  4       ^8X  dk   V P                  V4      pV P                  e   VP                  V P                  4       V P                  '       d   V P                  P                  WR7      pV# VP                  RR V P                  3,           pVP                  RVP                  R,          4      pV P                  V4      P                  V4      pV P                  e   VP                  V P                  4       V P                  '       d   V P                  P                  WR7      pV# )z/TorchInt8Linear does not support training mode.NzSTorchInt8Linear int8 module is not initialized. Ensure post_init() has been called.)rc   Úoutr¶   )Útrainingr·   r‡   rÊ   r)   Ú_fused_op_forwardr{   Úadd_r}   Úapplyr,   rz   rÑ   )r^   rc   rõ   Ú	out_shapes   &&  r   rf   ÚTorchInt8Linear.forward  s  € Ø�=�=ˆ=Ü%Ð&WÓXÐXØ×ÑÒ#ÜÐtÓuÐuð �5‰5‹7�aŒ<Ø×(Ñ(¨Ó+ˆCØ�y‰yÒ$Ø—‘˜Ÿ™Ô#Ø�|�|ˆ|Ø—l‘l×(Ñ(¨1Ð(Ó6�ØˆJà—G‘G˜C˜R�L D×$5Ñ$5Ð#7Õ7ˆ	Ø�I‰I�b˜!Ÿ'™' "�+Ó&ˆà×$Ñ$ QÓ'×/Ñ/°	Ó:ˆà�9‰9Ò Ø�H‰H�T—Y‘YÔØ�<�<ˆ<Ø—,‘,×$Ñ$ qÐ$Ó2ˆCàˆ
r   c                óN   <€ V ^8„  d   QhRS[ P                  RS[ P                  /# rb   rX   )r   rY   s   "€r   r   r€   ,  s#   ø€ ÷ 0ñ 0¡5§<¡<ð 0±E·L±Lñ 0r   c                ó¾   € VP                   P                  R 8w  d   \        R4      hV P                  f   \	        R4      hV P                  VP                  4       4      # )rð   z'TorchInt8Linear fused path is CPU-only.z/TorchInt8Linear int8 module is not initialized.)r²   Útyper·   r‡   rÊ   rO   re   s   &&r   r÷   Ú!TorchInt8Linear._fused_op_forward+  sM   € à�8‰8�=‰=˜EÔ!Ü%Ð&OÓPÐPØ×ÑÒ#ÜÐPÓQÐQØ×Ñ §¡£Ó/Ð/r   c                óN   € V P                    F  pV P                  V4       K  	  R # r>   )r¥   r­   rÅ   s   & r   r”   Ú(TorchInt8Linear._empty_gptq_only_weights3  s    € Ø×*Ô*ˆDØ×'Ñ'¨Ö-ó +r   )r†   r‡   r±   r°   r³   )r¶   é   é    é@   é€   )rÌ   r½   rÒ   rG   )r°   r±   )rì   )i    rì   )@rh   ri   rj   rk   r   r„   ÚSUPPORTS_BACKENDSr   ÚGPTQÚSUPPORTS_METHODSr   ÚGPTQ_V2Ú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	   ÚCPUÚSUPPORTS_DEVICESr
   ÚLINUXÚWIN32ÚSUPPORTS_PLATFORMr   r¼   ÚSUPPORTS_PACK_DTYPESr   ÚSUPPORTS_ADAPTERSÚfloat16Úbfloat16rC   ÚSUPPORTS_DTYPESÚREQUIRES_FORMAT_V2Ú
QUANT_TYPEr¥   rÄ   r]   Úclassmethodr�   r’   r—   r¦   r­   rÁ   r•   r×   Úinference_moderä   rè   r“   rñ   rf   Úno_gradr÷   r”   rm   rn   ro   rp   s   @@r   rr   rr   W   s¬  ù‡ € Ø ×0Ñ0Ð1ÐØŸ™�}ÐàŸ™ Q¨¯©¸Ð:ÐÚ€MÚ/ÐØ˜u˜ÐØ˜%�=€LØ€OØÐØ ÐØ)*¨Ð%Ø*+¨Ð&ØŸ
™
�|ÐØ!Ÿ™¨¯©Ð8ÐØ!ŸK™K˜=ÐØ˜Ðà—}‘} e§n¡n°e·m±mÐD€OàÐà€JØ@ÐØGÐð Ø"'§+¡+ØØ!%÷<õ <ð> ÷ó ðõ
õ÷
]ð ]÷%ð %ò3ò6.÷Tò Tð> ×ÒÓ÷
ñ 
ó ð
÷
ò 
÷Jð J÷
"ð "÷
ð ð6 ‡]�]÷0ó ð0÷.ò .r   rr   c                ó$   € V ^8„  d   QhR\         /# )r   Úmodelr   )r   s   "r   r   r   8  s   € ÷ ñ œOñ r   c                 ó’  € ^RI Hp \        V3pV P                  4        EF—  w  r4\	        V\
        4      '       d   \	        WB4      '       g   \        R4      h\	        WB4      '       g   KK  \        P                  ! VP                  VP                  VP                  RJR7      p\        P                  ! VP                  4       P                  P                  4       P!                  R\"        P$                  4      4      Vn        VP                  e[   \"        P                  P                  VP                  P                  4       P!                  R\"        P$                  4      4      Vn        T pRV9   d6   VP)                  R^4      w  rx\+        V P                  4       4      V,          pMTp\-        WhV4       EKš  	  V P.                  =V # )rì   )ÚTorchInt8AwqLinearzºOnly models loaded using TorchInt8Linear or TorchInt8AwqLinear are supported for dequantization. Please load model using backend=BACKEND.GPTQ_TORCH_INT8 or backend=BACKEND.AWQ_TORCH_INT8N)r{   rð   Ú.)Útorch_int8_awqr&  rr   Únamed_modulesÚ
isinstancer   r+   r;   ÚLinearry   rz   r{   Ú	Parameterr×   ÚTÚdetachr3   r   r  rÖ   ÚrsplitÚdictÚsetattrÚconfigÚquantization_config)	r$  r&  Úsupported_int8_qlinearsr¡   r:   Ú
new_moduleÚparentÚparent_nameÚmodule_names	   &        r   Údequantize_modelr9  8  s]  € Ý2ä.Ð0BÐCÐà×+Ñ+×-‰ˆÜ�fœo×.Ò.´zÀ&×7bÒ7bÜð1óð ô �f×6Ô6ÜŸš 6×#5Ñ#5°v×7JÑ7JÐQW×Q\ÑQ\ÐdhÐQhÔiˆJÜ "§¢¨V×-EÑ-EÓ-G×-IÑ-I×-PÑ-PÓ-R×-UÑ-UÐV[Ô]b×]jÑ]jÓ-kÓ lˆJÔØ�{‰{Ò&Ü"'§(¡(×"4Ñ"4°V·[±[×5GÑ5GÓ5I×5LÑ5LÈUÔTY×TaÑTaÓ5bÓ"c�
”àˆFØ�dŒ{Ø+/¯;©;°s¸AÓ+>Ñ(�Ü˜e×1Ñ1Ó3Ó4°[ÕA‘à"�ä�F¨×4ñ+ .ð. 	�‰Ð(Ø€Lr   )	rA   r@   rU   rr   rH   r#   r8   rS   r9  )!Útypingr   r   r   Útorch.nnr;   Útransformersr   Úadapter.adapterr   r   Úmodels._constr	   r
   Únn_modules.qlinearr   r   Úquantizationr   r   Úutils.backendr   r@   rA   r#   r8   rH   rS   r<   rU   rr   r9  Ú__all__r"   r   r   Ú<module>rC     sv   ð÷ #ã Ý Ý (ç ,ß -ß Bß *Ý $ð +Ð Ø-Ð õ:õ&õ +õ2ô"c�u—x‘x—‘ô cô^.�oô ^.õBò@
‚r   