
    h                        S SK JrJr  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  S SKJrJrJr  S SKJrJr  S S	KJr  S S
KJrJr  S SKJr  S SKJrJr  S SKJr  S SK J!r!J"r"J#r#  S SK$J%r%J&r&  S SK'J(r(  S SK)J*r*J+r+  S SK,J-r-  S SK.J/r/  S SK0J1r1J2r2  S SK3J4r4  S SK5J6r6J7r7  S SK8J9r9J:r:  S SK;J<r<  \\\S.r=\\!\\S.r>\>R                  \=5        0 S\_S\_S\_S\#_S\
_S \
_S!\_S"\_S#\_S$\_S%\&_S&\_S'\7_S(\+_S)\_S*\_S+\_\2\-\\4\:S,.Er@\@R                  \=5        0 S\_S-\_S\_S"\_S!\_S)\_S.\_S*\_S+\_S/\1_S%\%_S0\_S1\_S(\*_S\"_S'\6_S2\_\\9\(\(\(\S3.ErAS4 rBS5 rCS6 rDg7)8   )QDQRemovableActivationQLinearActivation)QArgMax)AttentionQuantQuantOperatorBase)QLinearBinaryOp)QLinearConcat)ConvIntegerQDQConvQLinearConv)Direct8BitOpQDQDirect8BitOp)EmbedLayerNormalizationQuant)GatherQuant	QDQGather)QGlobalAveragePool)QDQGemmQLinearGemm)	LSTMQuant)MatMulInteger	QDQMatMulQLinearMatMul)
QDQMaxPoolQMaxPool)QDQNormalization)QDQPadQPad)QLinearPool)QDQOperatorBase)	QDQResizeQResize)QLinearSoftmax)QDQSplitQSplit)QDQWhereQLinearWhere)QuantizationMode)Gather	TransposeEmbedLayerNormalization)ConvMatMul	AttentionLSTMArgMaxr,   Gemmr-   AddMulReluClip	LeakyReluSigmoidMaxPoolGlobalAveragePoolSplitPadReshapeSqueeze	Unsqueeze)ResizeAveragePoolConcatSoftmaxWhereConvTransposer*   r?   r@   Slicer)   )GatherElementsrC   InstanceNormalizationLayerNormalizationBatchNormalizationTopKc                     [        X5      $ Nr   onnx_quantizernodes     [/var/www/fran/franai/venv/lib/python3.13/site-packages/onnxruntime/quantization/registry.pyCreateDefaultOpQuantizerrQ   ]   s    ^22    c                     U R                   [        R                  :X  a  [        O[        nUR
                  U;   a+  X!R
                     " X5      nUR                  5       (       a  U$ [        X5      $ rL   )moder(   
IntegerOpsIntegerOpsRegistryQLinearOpsRegistryop_typeshould_quantizer   )rN   rO   registryop_quantizers       rP   CreateOpQuantizerr\   a   s\    %3%8%8<L<W<W%W!]oH||x-nC''))^22rR   c                 r    UR                   [        ;   a  [        UR                      " X5      $ [        X5      $ rL   )rX   QDQRegistryr    rM   s     rP   CreateQDQQuantizerr_   j   s-    ||{"4<<(>>>00rR   N)Eoperators.activationr   r   operators.argmaxr   operators.attentionr   operators.base_operatorr   operators.binary_opr	   operators.concatr
   operators.convr   r   r   operators.direct_q8r   r   operators.embed_layernormr   operators.gatherr   r   operators.gavgpoolr   operators.gemmr   r   operators.lstmr   operators.matmulr   r   r   operators.maxpoolr   r   operators.normr   operators.padr   r   operators.poolingr   operators.qdq_base_operatorr    operators.resizer!   r"   operators.softmaxr#   operators.splitr$   r%   operators.wherer&   r'   quant_utilsr(   CommonOpsRegistryrV   updaterW   r^   rQ   r\   r_    rR   rP   <module>r{      s   K % / 6 0 + = = > C 4 2 0 % E E 3 , ' * 8 0 - - 3 ) ;  	    + ,g
K K m	
 
? 
?   "   x + V 
4 |  |!" #$ - 0   + ,
GW G "	
 "     i z ? _ 
6 i  X!" i#$  -**/6331rR   