§
    †Pƒiý  ã                   óö  — d dl mZmZ ddlmZmZmZmZmZm	Z	m
Z
mZ ddlmZmZmZ ddlmZmZmZmZmZmZmZ ddlmZmZ ddlmZ ddlmZmZmZ dd	l m!Z!m"Z" dd
l#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZH ddlImJZJmKZKmLZLmMZMmNZNmOZOmPZP ddlQmRZRmSZSmTZTmUZUmVZVmWZWmXZXmYZYmZZZ ddl[m\Z\m]Z]m^Z^m_Z_m`Z`maZa ddlbmcZc ddldmeZemfZf ddlgmhZh e5Zig d¢ZjdS )é    )Úint_scaled_matmulÚsafe_int_mmé   )ÚALL_AUTOQUANT_CLASS_LISTÚDEFAULT_AUTOQUANT_CLASS_LISTÚ"DEFAULT_FLOAT_AUTOQUANT_CLASS_LISTÚ!DEFAULT_INT4_AUTOQUANT_CLASS_LISTÚ#DEFAULT_SPARSE_AUTOQUANT_CLASS_LISTÚ!GEMLITE_INT4_AUTOQUANT_CLASS_LISTÚOTHER_AUTOQUANT_CLASS_LISTÚ	autoquant)ÚInt4WeightOnlyGPTQQuantizerÚMultiTensorÚMultiTensorInputRecorder)ÚGranularityÚPerAxisÚPerBlockÚPerGroupÚPerRowÚ	PerTensorÚPerToken)ÚLinearActivationQuantizedTensorÚto_linear_activation_quantized)Ú6to_weight_tensor_with_linear_activation_scale_metadata)ÚInt4WeightOnlyQuantizerÚInt8DynActInt4WeightLinearÚInt8DynActInt4WeightQuantizer)ÚAffineQuantizedMinMaxObserverÚAffineQuantizedObserverBase)%ÚCutlassInt4PackedLayoutÚ3Float8DynamicActivationFloat8SemiSparseWeightConfigÚ)Float8DynamicActivationFloat8WeightConfigÚ'Float8DynamicActivationInt4WeightConfigÚFloat8MMConfigÚ(Float8StaticActivationFloat8WeightConfigÚFloat8WeightOnlyConfigÚFPXWeightOnlyConfigÚFqnToConfigÚGemliteUIntXWeightOnlyConfigÚ%Int4DynamicActivationInt4WeightConfigÚInt4WeightOnlyConfigÚ%Int8DynamicActivationInt4WeightConfigÚ%Int8DynamicActivationInt8WeightConfigÚ%Int8DynamicActivationIntxWeightConfigÚInt8WeightOnlyConfigÚIntxWeightOnlyConfigÚModuleFqnToConfigÚPlainLayoutÚTensorCoreTiledLayoutÚUIntXWeightOnlyConfigÚ'float8_dynamic_activation_float8_weightÚ&float8_static_activation_float8_weightÚfloat8_weight_onlyÚfpx_weight_onlyÚfqn_matches_fqn_configÚgemlite_uintx_weight_onlyÚ#int4_dynamic_activation_int4_weightÚint4_weight_onlyÚ#int8_dynamic_activation_int4_weightÚ/int8_dynamic_activation_int8_semi_sparse_weightÚ#int8_dynamic_activation_int8_weightÚint8_weight_onlyÚ intx_quantization_aware_trainingÚ	quantize_Úswap_conv2d_1x1_to_linearÚuintx_weight_only)ÚMappingTypeÚTorchAODTypeÚZeroPointDomainÚchoose_qparams_affineÚ"choose_qparams_affine_with_min_maxÚdequantize_affineÚquantize_affine)	ÚFloat8TensorÚInt4MarlinSparseTensorÚInt4PlainInt32TensorÚInt4PreshuffledTensorÚ
Int4TensorÚInt4TilePackedTo4dTensorÚ
Int8TensorÚIntxOpaqueTensorÚIntxUnpackedToInt8Tensor)Ú$SmoothFakeDynamicallyQuantizedLinearÚSmoothFakeDynQuantMixinÚ	get_scaleÚset_smooth_fq_attributeÚsmooth_fq_linear_to_inferenceÚ!swap_linear_with_smooth_fq_linear)Ú register_quantize_module_handler)Ú	QuantizerÚTwoStepQuantizer)Úcompute_error)\r   r   r	   r   r   r
   r   r   rB   r;   r=   r?   r>   r<   r@   rA   r7   r5   r6   rD   r8   r9   r:   rC   r*   r,   r-   r.   r+   r#   r/   r&   r"   r%   r!   r4   r0   r'   r)   ÚAOPerModuleConfigr(   r1   rR   rP   rN   rO   rM   rS   rT   rQ   rL   rW   rV   rU   rZ   rY   rX   r^   r   r   r   r   rH   rI   rK   rJ   r   r   r[   rE   rG   rF   r   r   r   r   r   r   r   r   r   r   r   r]   r\   r2   r3   r    r$   r   r   r   N)kÚtorchao.kernelr   r   r   r   r   r   r	   r
   r   r   ÚGPTQr   r   r   Úgranularityr   r   r   r   r   r   r   Ú"linear_activation_quantized_tensorr   r   Úlinear_activation_scaler   Úlinear_quant_modulesr   r   r   Úobserverr   r   Ú	quant_apir    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   Úquant_primitivesrE   rF   rG   rH   rI   rJ   rK   Úquantize_.workflowsrL   rM   rN   rO   rP   rQ   rR   rS   rT   ÚsmoothquantrU   rV   rW   rX   rY   rZ   Útransform_moduler[   Úunifiedr\   r]   Úutilsr^   r_   Ú__all__© ó    úq/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/torchao/quantization/__init__.pyú<module>rr      sÆ  ððð ð ð ð ð ð ð ð
	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ðð ð ð ð ð ð ð ð ð ð
ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ðð ð ð ð ð ð ð ðð ð ð ð ð ðð ð ð ð ð ð ð ð ð ð
ð ð ð ð ð ð ð ð&ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ð &ðNð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ?Ð >Ð >Ð >Ð >Ð >Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0ðð ð ð ð ð ð
 &Ð ðhð hð h€€€rp   