o
    soi                     @  sP   d dl mZ d dlZd dlZd dlZd dlmZ d dlm	Z	 G dd deZ
dS )    )annotationsN)Base)expectc                   @  s(   e Zd ZedddZedddZdS )	GelureturnNonec                  C  s   t jjddgdgdd} tg dtj}d| dttd	tj	 |d
t
|d     tj}t| |g|gdd tjdddtj}d| dttd	tj	 |d
t
|d     tj}t| |g|gdd d S )Nr   xytanh)inputsoutputsapproximater            ?r      gHm?   test_gelu_tanh_1r   r   name      test_gelu_tanh_2)onnxhelper	make_nodenparrayastypefloat32r
   sqrtpipowerr   randomrandnnoder   r	    r(   T/home/ubuntu/.local/lib/python3.10/site-packages/onnx/backend/test/case/node/gelu.pyexport_gelu_tanh   s*   ,,zGelu.export_gelu_tanhc                  C  s   t jjddgdgd} tg dtj}d| dttj	|t
d   tj}t| |g|gd	d
 tjdddtj}d| dttj	|t
d   tj}t| |g|gdd
 d S )Nr   r   r	   )r   r   r   r   r   r   test_gelu_default_1r   r   r   r   test_gelu_default_2)r   r   r   r   r   r   r    	vectorizematherfr!   r   r$   r%   r&   r(   r(   r)   export_gelu_default(   s   ..zGelu.export_gelu_defaultN)r   r   )__name__
__module____qualname__staticmethodr*   r0   r(   r(   r(   r)   r      s
    r   )
__future__r   r.   numpyr   r   onnx.backend.test.case.baser   onnx.backend.test.case.noder   r   r(   r(   r(   r)   <module>   s   