
    
Ng                         d dl Zd dlmZmZmZmZmZmZm	Z	 d dl
mZmZ d Z G d de          Z G d de          Z G d	 d
e          Z G d de          Z G d de          ZdS )    N)bfloat16float8e4m3fnfloat8e4m3fnuz
float8e5m2float8e5m2fnuzint4uint4)OpRunRefAttrNamec                 $   | j         }t          |t          j                   s|t          t          t
          t          t          t          t          t          j
        t          j        t          j        t          j        t          j        t          j        t          j        t          j        t          j        t          j        t          j        t          j        t          j        t.          t0          hvr%t3          d| dt5          |           d          d S d S )NzType (z, z+) is not a numpy type (operator 'Constant'))dtype
isinstancenpr   r   r   r   r   r	   r   int8uint8float16float32float64int32int64int16uint16uint32bool_str_uint64boolstr	TypeErrortype)valas     Z/var/www/html/ai-engine/env/lib/python3.11/site-packages/onnx/reference/ops/op_constant.py_check_dtyper$      s    	Aa"" 
q











	
	


	-1 ( (0 NQNN$q''NNN
 
 	
1
 
 ( (    c                       e Zd Zd ZdS )ConstantCommonc                 p    t          |t                    r t          dt          |           d          |S )NzUnexpected type z for a constant.)r   tupler   r    )selfcsts     r#   _checkzConstantCommon._check4   s:    c5!! 	LJtCyyJJJKKK
r%   N)__name__
__module____qualname__r,    r%   r#   r'   r'   3   s#            r%   r'   c                       e Zd Zd Zd ZdS )
Constant_1c                 ~    t                               | ||           | j        | _        t	          | j                   d S N)r'   __init__valuer+   r$   r*   	onnx_node
run_paramss      r#   r5   zConstant_1.__init__;   s9    i<<<:TXr%   c                     |rQt          |          dk    s/d|vs+t          |d                   t          | j                  k    rt          d          |                     | j                  fS N   r6   zHFunction attributes are not implemented for opset <= 11. Use opset > 12.lenidr6   RuntimeErrorr,   r+   r*   overridden_attributess     r#   _runzConstant_1._run@   y      	%&&**333'011R
^^CCZ   DH%%''r%   Nr-   r.   r/   r5   rC   r0   r%   r#   r2   r2   :   s2          
	( 	( 	( 	( 	(r%   r2   c                       e Zd Zd ZdS )
Constant_9c                 >    t                               | ||           d S r4   )r2   r5   r7   s      r#   r5   zConstant_9.__init__M   s     D)Z88888r%   N)r-   r.   r/   r5   r0   r%   r#   rG   rG   L   s#        9 9 9 9 9r%   rG   c                       e Zd Zd Zd ZdS )Constant_11c                     t                               | ||           t          | dd           | j        | _        n| j        | _        t          | j                   d S )Nsparse_value)r'   r5   getattrr6   r+   rL   r$   r7   s      r#   r5   zConstant_11.__init__R   sW    i<<<4..6zDHH(DHTXr%   c                     |rQt          |          dk    s/d|vs+t          |d                   t          | j                  k    rt          d          |                     | j                  fS r;   r=   rA   s     r#   rC   zConstant_11._runZ   rD   r%   NrE   r0   r%   r#   rJ   rJ   Q   s2          	( 	( 	( 	( 	(r%   rJ   c                       e Zd Zd Zd ZdS )Constant_12c                 B   t                               | ||           t          | d          r$| j        d| _        | j        | _        d | _        n&t          | d          rD| j        =d| _        t          | j        t                    r| j        n| j        | _        d | _        nt          j        t          j        t          j        t          j        t          j        t          j        d                                D ]z\  }}t          | |          ret          | |          U|| _        t          | |          }t          |t                    r|nt          j        ||          | _        |fd| _         n{t          | d          st#          d	|j         d
          d S )NrL   c                     | S r4   r0   vs    r#   <lambda>z&Constant_12.__init__.<locals>.<lambda>l        r%   r6   c                     | S r4   r0   rS   s    r#   rU   z&Constant_12.__init__.<locals>.<lambda>p   rV   r%   )value_floatvalue_floats	value_int
value_intsvalue_stringvalue_stringsr   c                 .    t          j        | |          S )Nr^   )r   array)rT   np_dtypes     r#   rU   z&Constant_12.__init__.<locals>.<lambda>   s    BHE E E r%   cst_namez<No constant is defined for operator 'Constant', outputs are .)r'   r5   hasattrrL   rb   r+   cst_convertr6   r   r   r   r   r   r   itemsrM   r`   AttributeErroroutput)r*   r8   r9   attrra   rT   s         r#   r5   zConstant_12.__init__g   s   i<<<4(( 	T->-J*DM(DH*{DT7## 	
(>#DM%/
K%H%HXtzzdjDH*{D  "z "
X h "!## # egg h 4&& 74+>+>+J$(DMd++A &a559Xax888 H
 ;C ( ( (D$ EtZ(( 	 byO_bbb  	 	r%   c                 \   | j         r|t          d| j        d          | j        |vr(t          d| j        dt	          |          d          || j                 }t          |t          j                  r|fS |                     |          fS | 	                    | j                  fS )Nz0Attributes are empty, cannot retrieve value for rc   zCannot find attribute z in )
has_linked_attributer@   r+   rb   listr   r   ndarrayre   r,   )r*   rB   r6   s      r#   rC   zConstant_12._run   s    $ 	.$,"TtxTTT   }$999"bT]bb$G\B]B]bbb   *$-8E%,,  x$$U++--DH%%''r%   NrE   r0   r%   r#   rP   rP   f   s3        " " "H( ( ( ( (r%   rP   )numpyr   #onnx.reference.custom_element_typesr   r   r   r   r   r   r	   onnx.reference.op_runr
   r   r$   r'   r2   rG   rJ   rP   r0   r%   r#   <module>rq      sr                        5 4 4 4 4 4 4 4
 
 
>    U   ( ( ( ( ( ( ( ($9 9 9 9 9 9 9 9
( ( ( ( (. ( ( (*3( 3( 3( 3( 3(. 3( 3( 3( 3( 3(r%   