
    	gf                        d dl mZmZ d dlmZ d dlmZ d dlmZ d dl	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 d d
lmZmZ d dl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( d dl)m*Z*m+Z+ d dl,m-Z- d dl.m/Z/ d dl0m1Z1m2Z2 d dl3m4Z4 d dl5m6Z6m7Z7 d dl8m9Z9m:Z: d dl;m<Z< eeedZ=ee!eedZ>e>j                  e=       i dededede#de
d e
d!ed"ed#ed$ed%e&d&ed'e7d(e+d)ed*ed+ee2e-ee4e:d,Z@e@j                  e=       i ded-eded"ed!ed)ed.ed*ed+ed/e1d%e%d0ed1ed(e*de"d'e6d2eee9e(e(e(d3ZAd4 ZBd5 ZCd6 ZDy7)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BatchNormalizationc                     t        | |      S Nr   onnx_quantizernodes     V/var/www/openai/venv/lib/python3.12/site-packages/onnxruntime/quantization/registry.pyCreateDefaultOpQuantizerrP   \   s    ^T22    c                     | j                   t        j                  k(  rt        nt        }|j
                  |v r( ||j
                     | |      }|j                         r|S t        | |      S rK   )moder(   
IntegerOpsIntegerOpsRegistryQLinearOpsRegistryop_typeshould_quantizer   )rM   rN   registryop_quantizers       rO   CreateOpQuantizerr[   `   sa    %3%8%8<L<W<W%W!]oH||x-x-ndC'')^T22rQ   c                 p    |j                   t        v rt        |j                      | |      S t        | |      S rK   )rW   QDQRegistryr    rL   s     rO   CreateQDQQuantizerr^   i   s1    ||{"4<<(>>>400rQ   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(   CommonOpsRegistryrU   updaterV   r]   rP   r[   r^    rQ   rO   <module>rz      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#$  -**-4331rQ   