
    
Ng                     j    d dl Zd dlmZ d Zd Zd Zd Z G d de          Z G d	 d
e          Z	dS )    N)OpRunc                 V    t          j        | |          |z  }||dk    r|||z  z  }|S Nr   )npdotabcalphabetaos         V/var/www/html/ai-engine/env/lib/python3.11/site-packages/onnx/reference/ops/op_gemm.py_gemm00r      s5    
q!uA}	QXH    c                 `    t          j        | |j                  |z  }||dk    r|||z  z  }|S r   r   r   Tr   s         r   _gemm01r      s7    
q!#A}	QXHr   c                 `    t          j        | j        |          |z  }||dk    r|||z  z  }|S r   r   r   s         r   _gemm10r      s7    
qsAA}	QXHr   c                 j    t          j        | j        |j                  |z  }||dk    r|||z  z  }|S r   r   r   s         r   _gemm11r       s;    
qsAC5 A}	QXHr   c                       e Zd ZddZdS )Gemm_6Nc	                    |dk    r|r|rt           nt          }	n|rt          nt          }	 |	||d ||          }
||
                    |j                  fS |j        |
j        k    r t          d|j         d|
j         d          |
|z   fS |r|rt           nt          }	n|rt          nt          }	 |	|||||                              |j                  fS )Nr   zUnable to add shape z
 to shape z without broadcast.)r   r   r   r   astypedtypeshape
ValueError)selfr	   r
   r   r   r   transAtransB	broadcast_methress              r   _runzGemm_6._run(   s    >> 7#)6w#)6w%1dE400Cy

17++--w#)## \17\\ci\\\   !G: 	3%2GG7EE%2GG7EaAud++2217;;==r   )NNNNNN__name__
__module____qualname__r'    r   r   r   r   '   s(        > > > > > >r   r   c                       e Zd ZddZdS )Gemm_7Nc                     |r|rt           nt          }n|rt          nt          } ||||||                              |j                  fS )N)r   r   r   r   r   r   )	r!   r	   r
   r   r   r   r"   r#   r%   s	            r   r'   zGemm_7._run>   sS     	3%2GG7EE%2GG7EaAud++2217;;==r   )NNNNNr(   r,   r   r   r.   r.   =   s(        > > > > > >r   r.   )
numpyr   onnx.reference.op_runr   r   r   r   r   r   r.   r,   r   r   <module>r2      s        ' ' ' ' ' '        > > > > >U > > >,> > > > >U > > > > >r   