
    wi                    x   d dl mZ d dlZd dlZd dlZd dlZd dlmZ d dlZd dl	Z	d dl
Zd dlZd dlmZ d dl
mZmZ d dlmZ  eej                            dd                    Z G d	 d
ej        j        j                  Z G d dej        j        j                  Zej        dk    rdndZej        j                            eedeideideideideideid          Z  ej!        d          re "                    d            ej#                    d          dk    re "                    d            ej$                    dk    re "                    d           e "                    d           e "                    d           e "                    d           e "                    d           e "                    d           ej        dk    rTe "                    d           e "                    d            e "                    d!           e "                    d"           ej        d#k    r*e "                    d$           e "                    d%            e	j%        d&          r*e "                    d'           e "                    d(            e	j&        d)          r?e "                    d*           e "                    d+           e "                    d,           e "                    d-            e'            (                    e j)                   ed.k    r ej*        d/d01          Z+e+j,        j-        Z. e/e+j,        j0                  Z0 e/e+j,        j1                  Z1 e/e+j,        j2                  Z3 e/e+j,        j4                  Z5 e6d2            e6d3e. d4e0 d5e1 d6e3 d7e5 
           dS dS )8    )annotationsN)Any)
ModelProto)Device
DeviceType)ReferenceEvaluatorVERBOSE0c                      e Zd Zd Zd ZdS )ReferenceEvaluatorBackendRepc                    || _         d S N)_session)selfsessions     p/root/.openclaw/workspace/chatterbox_venv_py311/lib/python3.11/site-packages/onnx/test/test_backend_reference.py__init__z%ReferenceEvaluatorBackendRep.__init__   s        c                   t          |t          j                  r|g}t          |t                    rt	          |          t	          | j        j                  k    r*t          t          | j        j        |d                    }ni }d}t          | j        j        | j        j	        d          D ]c\  }}t          d |j        j        j        D                       }|||         j        k    r%||         ||<   |dz  }|t	          |          k    r ndn8t          |t                    r|}n t          dt          |          d          | j                            d |          S )NT)strictr   c              3  $   K   | ]}|j         V  d S r   )	dim_value).0ds     r   	<genexpr>z3ReferenceEvaluatorBackendRep.run.<locals>.<genexpr>)   s$      !T!T!!+!T!T!T!T!T!Tr      zUnexpected input type .)
isinstancenumpyndarraylistlenr   input_namesdictzipinput_typestupletensor_typeshapedim	TypeErrortyperun)r   inputskwargsfeeds
pos_inputsinptshaper)   s           r   r-   z ReferenceEvaluatorBackendRep.run   sj   fem,, 	XFfd## 	H6{{c$-";<<<<S!:F4PPPQQ
#&M-t}/HQU$ $ $ " "KC "!T!Tv7I7O7S!T!T!TTTEz 2 888%+J%7c
"a
%V44!E%% 	HEEFT&\\FFFGGG}  u---r   N)__name__
__module____qualname__r   r-    r   r   r   r      s2             . . . . .r   r   c                      e Zd Zed             Zedd            Zed             Ze	 ddd            Zedd            Zedd            Z	dS )ReferenceEvaluatorBackendc                    dS )N)T r7   clsmodels     r   is_opset_supportedz,ReferenceEvaluatorBackend.is_opset_supported7   s    xr   devicestrreturnboolc                J    t          |          }|j        t          j        k    S r   )r   r,   r   CPU)r=   r@   r   s      r   supports_devicez)ReferenceEvaluatorBackend.supports_device;   s    6NNv''r   c                .    t          |t                    S )N)verbose)r   r	   r<   s     r   create_inference_sessionz2ReferenceEvaluatorBackend.create_inference_session@   s    !%9999r   rE   r>   r   r/   r   c                   t          |t                    rt          |          S t          |t          t          t
          f          r$|                     |          } | j        ||fi |S t          dt          |           d          )NzUnexpected type z for model.)
r   r   r   rA   bytesr   rI   preparer+   r,   )r=   r>   r@   r/   infs        r   rL   z!ReferenceEvaluatorBackend.prepareD   s     e/00 	7/666ec5*566 	6..u55C3;sF55f555C4;;CCCDDDr   Nc                <     | j         ||fi |} |j        |fi |S r   )rL   r-   )r=   r>   r.   r@   r/   reps         r   	run_modelz#ReferenceEvaluatorBackend.run_modelQ   s7    ck%22622swv(((((r   c                     t          d          )Nz%Unable to run the model node by node.)NotImplementedError)r=   noder.   r@   outputs_infor/   s         r   run_nodez"ReferenceEvaluatorBackend.run_nodeV   s    !"IJJJr   )r@   rA   rB   rC   )rE   )r>   r   r@   rA   r/   r   rB   r   r   )NN)
r4   r5   r6   classmethodr?   rF   rI   rL   rP   rU   r7   r   r   r9   r9   6   s          [ ( ( ( [( : : [: ',
E 
E 
E 
E [
E ) ) ) [) K K K [K K Kr   r9   linuxgMbP?gư>atol)test_dfttest_dft_axistest_dft_axis_opset19test_dft_inversetest_dft_inverse_opset19test_dft_opset19)test_kwargsAPPVEYORz(test_vgg19|test_zfnet)32bitz)(test_vgg19|test_zfnet|test_bvlc_alexnet)Windowstest_sequence_modelz(test_gradient|test_if_opt|test_loop16_seq_none|test_range_float_type_positive_delta_expanded|test_range_int32_type_negative_delta_expanded|test_scan_sum)z-(test_scatter_with_axis|test_scatter_without)z(test_bvlc_alexnet|test_densenet121|test_inception_v1|test_inception_v2|test_resnet50|test_shufflenet|test_squeezenet|test_vgg19|test_zfnet512)z(test_bernoulli)test_adam_multiplewin32test_regex_full_match_basic_cpu&test_regex_full_match_email_domain_cputest_regex_full_match_empty_cputest_image_decoder_decode_darwin&test_qlinearmatmul_3D_int8_float16_cpu&test_qlinearmatmul_3D_int8_float32_cpuz10.0"test_image_decoder_decode_webp_rgb$test_image_decoder_decode_jpeg2k_rgbz2.0z(test_cast.*(FLOAT8|BFLOAT16|FLOAT4|INT4)test_quantizelinear_e4m3fntest_quantizelinear_float4e2m1z(test_attention_4d_with_past_and_present_qk_matmul_bias_4d_mask_causal_expanded|test_attention_4d_with_past_and_present_qk_matmul_bias_3d_mask_causal_expanded|test_attention_4d_attn_mask_4d_causal_expanded|test_attention_4d_attn_mask_3d_causal_expanded)__main__   F)	verbosityexitz!---------------------------------z
tests_run=z errors=z	 skipped=z unexpected_successes=z expected_failures=)7
__future__r   osplatformsysunittesttypingr   r   version_utilsonnx.backend.baseonnxonnx.backend.testr   r   r   onnx.referencer   intenvirongetr	   backendbase
BackendRepr   Backendr9   dft_atoltestBackendTestr4   backend_testgetenvexcludearchitecturesystempillow_older_thannumpy_older_thanglobalsupdate
test_casesmainresresulttestsRun	tests_runr"   errorsskippedunexpectedSuccessesunexpected_successesexpectedFailuresexpected_failuresprintr7   r   r   <module>r      s)   # " " " " " 				  



                           0 0 0 0 0 0 0 0 - - - - - - #bjnnY,,
-
-. . . . .4<#4#? . . .:"K "K "K "K "K 1 9 "K "K "KJ <7**44| ,,X& (+"((!3#X.%+X$6#X.  -   29Z 4233381((DEEE8?	!!.///        D E E E   
 
 
   ' ( ( (   ) * * * <7:;;;ABBB:;;;5666 <8ABBBABBB"="6** A=>>>?@@@!=!%(( <DEEE6777:;;;   7   		  ( ) ) )z
(-!%
0
0
0C
#IS"##Fc#*$%%G3sz=>>CJ788	E
-...	E	1Y 	1 	1 	1 	1 	1 	1 4	1 	1.	1 	1     r   