
    i                     Z    S SK Jr  S SKJr  SSKJr  SSKJr  SSKJ	r	J
r
   " S S	\5      rg
)    )GraphModule)	Quantizer   )"DecomposeScaledDotProductAttention   )annotate)get_quant_config	Precisionc                      ^  \ rS rSrU 4S jrS\SS4S jrS\S\4S jrS\S\4S	 jr	S\SS4S
 jr
S\SS4S jrSrU =r$ )NeuropilotQuantizer   c                 h   > [         TU ]  5         [        R                  U l        SU l        SU l        g )NTF)super__init__r
   A8W8
_precision_is_per_channel_is_qat)self	__class__s    o/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/executorch/backends/mediatek/quantizer/quantizer.pyr   NeuropilotQuantizer.__init__   s*     $..#    	precisionreturnNc                     Xl         g N)r   )r   r   s     r   setup_precision#NeuropilotQuantizer.setup_precision   s    #r   modelc                 :    [        5       " U5      R                  nU$ r   )r   graph_moduler   r    s     r   transform_for_annotation,NeuropilotQuantizer.transform_for_annotation   s    24U;HHr   c                 (    U R                  U5        U$ r   )	_annotater#   s     r   r   NeuropilotQuantizer.annotate"   s    ur   c                     g r    r#   s     r   validateNeuropilotQuantizer.validate&   s    r   gmc                     [        U R                  U R                  U R                  5      n[	        UR
                  U5        g r   )r	   r   r   r   r   graph)r   r-   quant_configs      r   r'   NeuropilotQuantizer._annotate)   s1    'OOT114<<
 	<(r   )r   r   r   )__name__
__module____qualname____firstlineno__r   r
   r   r   r$   r   r+   r'   __static_attributes____classcell__)r   s   @r   r   r      sl    $ $t $k k k k k d )K )D ) )r   r   N)torch.fxr   #torchao.quantization.pt2e.quantizerr   ._passes.decompose_scaled_dot_product_attentionr   	annotatorr   qconfigr	   r
   r   r*   r   r   <module>r=      s&    ! 9   0)) )r   