
    h                     |   S SK r S SKrS SKrS SKrS SKJr  S SKrS SKrS SKr	S SK
r	S SKr	S SKr	S SK	Jr  S SKJrJr  S SKJr   " S S\	R$                  R&                  R(                  5      r " S S	\	R$                  R&                  R,                  5      r\	R$                  R0                  R3                  \\5      r\ R8                  " S
5      (       a  \R;                  S5        \R<                  " 5       S    S:X  a  \R;                  S5        \R>                  " 5       S:X  a  \R;                  S5        \R;                  S5        \R;                  S5        \R;                  S5        \R;                  S5        \R;                  S5        \R;                  S5        \R;                  S5        \R;                  S5        \R;                  S5        \R;                  S5        \R                  S:X  aD  \R;                  S5        \R;                  S5        \R;                  S5        \R;                  S5        \R@                  " S5      (       a  \R;                  S 5        \R;                  S!5        \R;                  S"5        \R;                  S#5        \R;                  S$5        \R;                  S%5        \R;                  S&5        \R;                  S'5        \R;                  S(5        \!" 5       RE                  \RF                  5        \S):X  a  \RH                  " S*S+S,9r%\%RL                  RN                  r(\)" \%RL                  RT                  5      r*\)" \%RL                  RV                  5      r+\)" \%RL                  RX                  5      r-\)" \%RL                  R\                  5      r/\0" S-5        \0" S.\( S/\* S0\+ S1\- S2\/ 3
5        gg)3    N)Any)
ModelProto)Device
DeviceTypeReferenceEvaluatorc                        \ rS rSrS rS rSrg)ReferenceEvaluatorBackendRep   c                     Xl         g N_session)selfsessions     Z/var/www/fran/franai/venv/lib/python3.13/site-packages/onnx/test/test_backend_reference.py__init__%ReferenceEvaluatorBackendRep.__init__   s        c                    [        U[        R                  5      (       a  U/n[        U[        5      (       a  [	        U5      [	        U R
                  R                  5      :X  a*  [        [        U R
                  R                  U5      5      nO0 nSn[        U R
                  R                  U R
                  R                  5       He  u  pV[        S UR                  R                  R                   5       5      nXqU   R                  :X  d  MI  X   X5'   US-  nU[	        U5      :  d  Me    O4   O1[        U[        5      (       a  UnO[        S[        U5      < S35      eU R
                  R!                  S U5      nU$ )Nr   c              3   8   #    U  H  oR                   v   M     g 7fr   )	dim_value).0ds     r   	<genexpr>3ReferenceEvaluatorBackendRep.run.<locals>.<genexpr>)   s     !T7S!++7Ss      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*   outss	            r   r.    ReferenceEvaluatorBackendRep.run   s1   femm,,XFfd##6{c$--";";<<S!:!:FCD
#&MM--t}}/H/H$KC "!Tv7I7I7O7O7S7S!TTEz 2 8 88%+%7
"a
%V4!$ %%E4T&\4DAFGG}}  u-r   r   N)__name__
__module____qualname____firstlineno__r   r.   __static_attributes__ r   r   r
   r
      s     r   r
   c            
           \ rS rSr\S 5       r\S\S\4S j5       r\S 5       r	\ SS\
S\S\
S\4S	 jj5       r\SS j5       r\SS j5       rSrg
)ReferenceEvaluatorBackend7   c                     g)N)T r<   clsmodels     r   is_opset_supported,ReferenceEvaluatorBackend.is_opset_supported8   s    r   devicereturnc                 R    [        U5      nUR                  [        R                  :H  $ r   )r   r-   r   CPU)rC   rG   r   s      r   supports_device)ReferenceEvaluatorBackend.supports_device<   s    6Nvv''r   c                     [        U5      $ r   r   rB   s     r   create_inference_session2ReferenceEvaluatorBackend.create_inference_sessionA   s    !%((r   rD   r0   c                     [        U[        5      (       a  [        U5      $ [        U[        [        [
        45      (       a$  U R                  U5      nU R                  " XB40 UD6$ [        S[        U5       S35      e)NzUnexpected type z for model.)
r   r   r
   strbytesr   rN   preparer,   r-   )rC   rD   rG   r0   infs        r   rS   !ReferenceEvaluatorBackend.prepareE   sn     e/00/66ec5*566..u5C;;s5f55*4;-{CDDr   Nc                 N    U R                   " X40 UD6nUR                  " U40 UD6$ r   )rS   r.   )rC   rD   r/   rG   r0   reps         r   	run_model#ReferenceEvaluatorBackend.run_modelR   s)    kk%262wwv(((r   c                     [        S5      e)Nz%Unable to run the model node by node.)NotImplementedError)rC   noder/   rG   outputs_infor0   s         r   run_node"ReferenceEvaluatorBackend.run_nodeW   s    !"IJJr   r<   )rJ   r   )NN)r7   r8   r9   r:   classmethodrE   rQ   boolrK   rN   r   r
   rS   rX   r^   r;   r<   r   r   r>   r>   7   s      (S (T ( ( ) ) ',
E
E!$
E8;
E	%
E 
E ) ) K Kr   r>   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)a1  (test_cast_FLOAT_to_FLOAT8|test_cast_FLOAT16_to_FLOAT8|test_castlike_FLOAT_to_FLOAT8|test_castlike_FLOAT16_to_FLOAT8|test_cast_no_saturate_FLOAT_to_FLOAT8|test_cast_no_saturate_FLOAT16_to_FLOAT8|test_cast_BFLOAT16_to_FLOAT|test_castlike_BFLOAT16_to_FLOAT|test_quantizelinear_e4m3|test_quantizelinear_e5m2)zf(test_cast_FLOAT_to_BFLOAT16|test_castlike_FLOAT_to_BFLOAT16|test_castlike_FLOAT_to_BFLOAT16_expanded)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)zF(test_cast_FLOAT_to_STRING|test_castlike_FLOAT_to_STRING|test_strnorm)zd(test_center_crop_pad_crop_axes_hwc_expanded|test_lppool_2d_dilations|test_averagepool_2d_dilations)z(test_eyelike_without_dtype)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_z1.21.5	test_stfttest_stft_with_windowtest_stft_cputest_dfttest_dft_axistest_dft_inversetest_dft_opset19test_dft_axis_opset19test_dft_inverse_opset19__main__   F)	verbosityexitz!---------------------------------z
tests_run=z errors=z	 skipped=z unexpected_successes=z expected_failures=)1osplatformsysunittesttypingr   r    version_utilsonnx.backend.baseonnxonnx.backend.testonnx.shape_inferenceonnx.version_converterr   r   r   onnx.referencer   backendbase
BackendRepr
   Backendr>   testBackendTestr7   backend_testgetenvexcludearchitecturesystemnumpy_older_thanglobalsupdate
test_casesmainresresulttestsRun	tests_runr#   errorsskippedunexpectedSuccessesunexpected_successesexpectedFailuresexpected_failuresprintr<   r   r   <module>r      sb  
 
  
          0 -
4<<#4#4#?#? <"K 1 1 9 9 "KJ ||  ,,-FQ99Z231(DE??	!./      D E   
$      
   ' (   L
   &   3 4   ) * <<7:;AB:;56 !!(++%01)$)+,+,0134 	  (( )z
--!%
0C

##I""#F#**$$%Gszz==>CJJ778	
-.	
YKxxy	 B  45 6./	1 r   