
    bIg                    N    d dl mZ d dlZd dlZd dlmZ d dlmZ  G d de      Z	y)    )annotationsN)Base)expectc                      e Zd Zedd       Zy)QLinearMatMulc                    dD ]J  } t        t        |       }dD ]1  }t        t        |      }t        j                  j	                  dg ddg      }t        j
                  g dg dg      }|t        j                  k(  r|d	z  }|j                  |      }t        j
                  d
g|      }t        j
                  |t        j                  k(  rdgndg|      }t        j
                  g dg dg dg dg      }|t        j                  k(  r|d	z  }|j                  |      }t        j
                  dg|      }	t        j
                  |t        j                  k(  rdgndg|      }
t        j
                  dg|      }t        j
                  |t        j                  k(  rdgndg|      }|t        j                  k(  rt        j
                  g dg dg      }nt        j
                  g dg dg      }|j                  |      }t        ||||||	|
||g|gd|  d|        t        j
                  g dg dgg dg dgg      }|t        j                  k(  r|d	z  }|j                  |      }t        j
                  d
g|      }t        j
                  |t        j                  k(  rdgndg|      }t        j
                  g dg dg dg dgg dg dg dg dgg      }|t        j                  k(  r|d	z  }|j                  |      }t        j
                  dg|      }	t        j
                  dg|      }
t        j
                  dg|      }t        j
                  |t        j                  k(  rdgndg|      }|t        j                  k(  r[|t        j                  k(  r$t        j
                  g dg d gg dg d gg      }nGt        j
                  g d!g d gg d!g d gg      }n#t        j
                  g dg dgg dg dgg      }|j                  |      }t        ||||||	|
||g|gd"|  d|        4 M y )#N)uint8int8)float32float16r   )aa_scalea_zero_pointbb_scaleb_zero_pointy_scaley_zero_pointy)inputsoutputs)      r      )               gF%u{?)dtypeiq   )   3      )<      r   )r   r      )r         g!u|?ir   g'?v   ))   ir+   )   i   )   s   r   )r.   B      test_qlinearmatmul_2D__)r   r   name)u   x   )r1   '   i)r7   t   w   test_qlinearmatmul_3D_)
getattrnponnxhelper	make_nodearrayr
   astyper   r   )quant_type_name
quant_type
dtype_namer    noder   r   r   r   r   r   r   r   outputs                 f/var/www/html/answerous/venv/lib/python3.12/site-packages/onnx/backend/test/case/node/qlinearmatmul.py
export_intzQLinearMatMul.export_int   s   0 M	O _5J4 K
J/{{,,#	 !E -   HH02CDE(HAHHZ(((F859!xx#-#8YKse:  HH#]M?S (HAHHZ(((G9E:!xx#-#8YKse:  ((F859!xx#-#8YKse:  (XX}l&CDFXX&EFFz2$$$	 $H1/1B!J<P" HH+->?+->? (HAHHZ(((F859!xx#-#8YKse:  HH'W'W (HAHHZ(((G9E:!xxZ@((F859!xx#-#8YKse:  (

*!#!0/ B!0/ B" "$!0/ B!0/ B"  XX,l;,l;F  z2$$$	 $H1/1B!J<P{KM	    N)returnNone)__name__
__module____qualname__staticmethodrK    rL   rJ   r   r      s    N NrL   r   )

__future__r   numpyr?   r@   onnx.backend.test.case.baser   onnx.backend.test.case.noder   r   rS   rL   rJ   <module>rX      s$    #   , .PD PrL   