+
    QV-j¯  ã                   ó¬   € R t ^ RIt^RIHt ]! 4       '       d   ^ RIHt ^ RIHt ^ RIHt ^RI	H
t
 ^RIHt  ! R R]
4      t ! R	 R
]
4      tR R ltR# )zFP-Quant integration fileN)Úis_fp_quant_available©ÚFPQuantConfig)ÚFPQuantDtype)ÚConversionOps)Úget_module_from_namec                   ó<   a € ] tR t^!t o R tRV 3R lR lltRtV tR# )ÚFpQuantQuantizec                ó   € Wn         R # ©N©Úhf_quantizer©Úselfr   s   &&Ús/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/transformers/integrations/fp_quant.pyÚ__init__ÚFpQuantQuantize.__init__"   ó   € Ø(Öó    Nc          
      óÄ   <€ V ^8„  d   QhRS[ P                  RS[ P                  P                  R,          RS[S[,          R,          RS[S[S[ P                  3,          /# )é   Ú
input_dictÚmodelNÚmissing_keysÚreturn)ÚtorchÚTensorÚnnÚModuleÚlistÚstrÚdict)ÚformatÚ__classdict__s   "€r   Ú__annotate__ÚFpQuantQuantize.__annotate__%   s[   ø€ ÷ ñ á—L‘Lðñ �x‰x�‰ Õ%ðñ ™3•i $Õ&ð	ñ 
‰c‘5—<‘<ÐÕ	 ñr   c                ó0  € \        VP                  4       4      ^ ,          w  rVV^ ,          p\        P                  P	                  V4      p\        W%4      w  r‰Wxn        \        \        VP                  P                  \        P                  4      p
V
P                  VP                  4      ;_uu_ 4        VP                  4        RRR4       VP                  R^4      ^ ,          pVP                  V4       VP                  V R24       VP                  V R24       VP                  V R24       VP                  V R24       VP                  V R24       VP                  V R24       VP                  V R	24       / #   + '       g   i     LÈ; i)
é    NÚ.z.backward_hadamard_matrixz.forward_hadamard_matrixz.act_global_scalez.weight_global_scaleú.qweightú.scalesú	.dqweight)ÚtupleÚitemsr   r   Ú	Parameterr   ÚweightÚgetattrÚdeviceÚtypeÚcudaÚpre_forwardÚrsplitÚdiscard)r   r   r   r   ÚkwargsÚ
target_keyÚvaluer/   ÚmoduleÚ_Útorch_accelerator_moduleÚprefix_target_keys   &&&&,       r   ÚconvertÚFpQuantQuantize.convert%   so  € ô " *×"2Ñ"2Ó"4Ó5°aÕ8Ñˆ
Ø�a•ˆä—‘×#Ñ# EÓ*ˆÜ(¨Ó;‰	ˆØŒô $+¬5°%·,±,×2CÑ2CÄUÇZÁZÓ#PÐ Ø%×,Ñ,¨U¯\©\×:Õ:Ø×ÑÔ ÷ ;ð '×-Ñ-¨c°1Ó5°aÕ8Ðð 	×Ñ˜ZÔ(Ø×ÑÐ 1Ð2Ð2KÐLÔMØ×ÑÐ 1Ð2Ð2JÐKÔLØ×ÑÐ 1Ð2Ð2CÐDÔEØ×ÑÐ 1Ð2Ð2FÐGÔHØ×ÑÐ 1Ð2°(Ð;Ô<Ø×ÑÐ 1Ð2°'Ð:Ô;Ø×ÑÐ 1Ð2°)Ð<Ô=Øˆ	÷ ;×:ús   Â4FÆF	r   )NN©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r>   Ú__static_attributes__Ú__classdictcell__©r#   s   @r   r	   r	   !   s   ø‡ € ò)÷÷ ð r   r	   c                   ó<   a € ] tR t^Gt o R tRV 3R lR lltRtV tR# )ÚFpQuantDeserializec                ó   € Wn         R # r   r   r   s   &&r   r   ÚFpQuantDeserialize.__init__H   r   r   Nc                óØ   <€ V ^8„  d   QhRS[ P                  RS[ P                  P                  R,          RS[R,          RS[S[,          R,          RS[S[S[ P                  3,          /# )r   r   r   NÚfull_layer_namer   r   )r   r   r   r   r    r   r!   )r"   r#   s   "€r   r$   ÚFpQuantDeserialize.__annotate__K   si   ø€ ÷ )ñ )á—L‘Lð)ñ �x‰x�‰ Õ%ð)ñ ˜t�ð	)ñ
 ™3•i $Õ&ð)ñ 
‰c‘5—<‘<ÐÕ	 ñ)r   c                óP  € \        VP                  4       4      ^ ,          w  rg\        V\        4      '       d
   V^ ,          MTp\	        W&4      w  r‰VR8X  dŒ   \
        P                  P                  VRR7      p
RV
R\
        P                  P                  \
        P                  ! ^ 4      4      R\
        P                  P                  \
        P                  ! ^ 4      4      /# VR8X  d½   \
        P                  P                  V4      pRVR\
        P                  P                  \
        P                  ! ^ 4      4      R\
        P                  P                  \
        P                  ! ^ 4      4      R\
        P                  P                  \
        P                  ! ^ 4      4      /# R# )r'   r)   F)Úrequires_gradz.weightr+   r*   N)	r,   r-   Ú
isinstancer   r   r   r   r.   Úzeros)r   r   r   rM   r   r7   r8   r9   r:   r;   ÚqweightÚdqweights   &&&&&,      r   r>   ÚFpQuantDeserialize.convertK   s@  € ô " *×"2Ñ"2Ó"4Ó5°aÕ8Ñˆ
Ü& u¬d×3Ò3��a–¸ˆÜ(¨Ó;‰	ˆð
 ˜Ô#ä—h‘h×(Ñ(ØØ#ð )ó ˆGð ˜Gð œ5Ÿ8™8×-Ñ-¬e¯kªk¸!«nÓ=ØœUŸX™X×/Ñ/´·²¸A³Ó?ðð ð ˜Ô$ä—x‘x×)Ñ)¨%Ó0ˆHð ˜Xð œ5Ÿ8™8×-Ñ-¬e¯kªk¸!«nÓ=ØœEŸH™H×.Ñ.¬u¯{ª{¸1«~Ó>Øœ5Ÿ8™8×-Ñ-¬e¯kªk¸!«nÓ=ðð ñ	 %r   r   )NNNr@   rG   s   @r   rI   rI   G   s   ø‡ € ò)÷)÷ )ð )r   rI   c                ó$   € V ^8„  d   QhR\         /# )r   Úconfigr   )r"   s   "r   r$   r$   w   s   € ÷ ñ ¤-ñ r   c                 óT  € V P                   R 8X  d   \        P                  pM:V P                   R8X  d   \        P                  pM\	        RV P                    24      hV P
                  R8X  d   \        P                  pM\V P
                  R8X  d   \        P                  pM:V P
                  R 8X  d   \        P                  pM\	        RV P
                   24      h\        VV P                  VV P                  V P                  V P                  V P                  V P                  R7      # )Úmxfp4Únvfp4zUnsupported forward dtype: Úbf16Úmxfp8zUnsupported backward dtype: )Úforward_dtypeÚforward_methodÚbackward_dtypeÚstore_master_weightsÚhadamard_group_sizeÚpseudoquantizationÚtransform_initÚmodules_to_not_convert)r]   r   ÚMXFP4ÚNVFP4Ú
ValueErrorr_   ÚBF16ÚMXFP8ÚFPQuantLinearConfigr^   r`   ra   rb   rc   rd   )rW   r]   r_   s   &  r   Úadapt_fp_quant_configrk   w   sü   € Ø×Ñ˜wÔ&Ü$×*Ñ*‰Ø	×	Ñ	 Ô	(Ü$×*Ñ*‰äÐ6°v×7KÑ7KÐ6LÐMÓNÐNà×Ñ Ô&Ü%×*Ñ*‰Ø	×	Ñ	 'Ô	)Ü%×+Ñ+‰Ø	×	Ñ	 'Ô	)Ü%×+Ñ+‰äÐ7¸×8MÑ8MÐ7NÐOÓPÐPäØ#Ø×,Ñ,Ø%Ø#×8Ñ8Ø"×6Ñ6Ø!×4Ñ4Ø×,Ñ,Ø%×<Ñ<ô	ð 	r   )Ú__doc__r   Úutilsr   Úfp_quantr   rj   r   Ú&transformers.utils.quantization_configÚcore_model_loadingr   Úquantizers.quantizers_utilsr   r	   rI   rk   © r   r   Ú<module>rs      sK   ðñ ã õñ
 ×ÒÝ=Ý%å @å .Ý >ô#�mô #ôL-˜ô -÷`r   