
    Si9                    p   S SK J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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  \" \R&                  R)                  SS5      5      r " S	 S
\R,                  R.                  R0                  5      r " S S\R,                  R.                  R4                  5      r\R                  S:w  a  SOSr\R,                  R:                  R=                  \\S\0S\0S\0S\0S\0S\0S.S9r \RB                  " 5       S    S:X  a  \ RE                  S5        \RF                  " 5       S:X  a  \ RE                  S5        \ RE                  S5        \ RE                  S5        \ RE                  S5        \ RE                  S5        \ RE                  S5        \R                  S:X  a  \ RE                  S5        \	RH                  " S5      (       a"  \ RE                  S5        \ RE                  S 5        \	RJ                  " S!5      (       a3  \ RE                  S"5        \ RE                  S#5        \ RE                  S$5        \ RE                  S%5        \&" 5       RO                  \ RP                  5        \S&:X  a  \RR                  " S'S(S)9r*\*RV                  RX                  r-\." \*RV                  R^                  5      r/\." \*RV                  R`                  5      r0\." \*RV                  Rb                  5      r2\." \*RV                  Rf                  5      r4\5" S*5        \5" S+\- S,\/ S-\0 S.\2 S/\4 3
5        gg)0    )annotationsN)Any)
ModelProto)Device
DeviceType)ReferenceEvaluatorVERBOSE0c                       \ rS rSrS rS rSrg)ReferenceEvaluatorBackendRep   c                    Xl         g N_session)selfsessions     _/var/www/html/ai-image-ml/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SS95      nO0 nSn[        U R
                  R                  U R
                  R                  SS9 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      $ )NT)strictr   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-   s           r   r1    ReferenceEvaluatorBackendRep.run   s2   femm,,XFfd##6{c$--";";<<S!:!:F4PQ
#&MM--t}}/H/HQU$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   r1   __static_attributes__ r   r   r   r      s     .r   r   c                      \ rS rSr\S 5       r\S
S j5       r\S 5       r\ S       SS jj5       r\SS j5       r	\SS j5       r
S	rg)ReferenceEvaluatorBackend6   c                    g)N)T r>   clsmodels     r   is_opset_supported,ReferenceEvaluatorBackend.is_opset_supported7   s    r   c                R    [        U5      nUR                  [        R                  :H  $ r   )r   r0   r   CPU)rE   devicer   s      r   supports_device)ReferenceEvaluatorBackend.supports_device;   s    6Nvv''r   c                    [        U[        S9$ )N)verbose)r   r	   rD   s     r   create_inference_session2ReferenceEvaluatorBackend.create_inference_session@   s    !%99r   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   rP   preparer/   r0   )rE   rF   rK   r3   infs        r   rU   !ReferenceEvaluatorBackend.prepareD   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   )rU   r1   )rE   rF   r2   rK   r3   reps         r   	run_model#ReferenceEvaluatorBackend.run_modelO   s)    kk%262wwv(((r   c                    [        S5      e)Nz%Unable to run the model node by node.)NotImplementedError)rE   noder2   rK   outputs_infor3   s         r   run_node"ReferenceEvaluatorBackend.run_nodeT   s    !"IJJr   r>   )rK   rS   returnbool)rJ   )rF   r   rK   rS   r3   r   rb   r   r   )NN)r9   r:   r;   r<   classmethodrG   rL   rP   rU   rZ   r`   r=   r>   r   r   r@   r@   6   s      ( ( : : ',EE!$E8;E	%E E ) ) K Kr   r@   linuxgMbP?gư>atol)test_dfttest_dft_axistest_dft_axis_opset19test_dft_inversetest_dft_inverse_opset19test_dft_opset19)test_kwargs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win32z(test_regex_full_match_basic_cpu|test_regex_full_match_email_domain_cpu|test_regex_full_match_empty_cpu|test_image_decoder_decode_)z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=)6
__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   Backendr@   dft_atoltestBackendTestr9   backend_testarchitectureexclude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printr>   r   r   <module>r      s   # 	  
        0 - bjjnnY,
-.4<<#4#4#?#? .: K 1 1 9 9  KF <<7*4||  ,,X& (+"((!3#X.%+X$6#X. -  1(DE??	!./      D E   
   ' (   ) * <<7	' ""6**=>?@!!%((DE67:;   7 	  (( )z
--!%
0C

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