
    Sir                        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r
S rS r " S S\R"                  5      r\S:X  a  \R(                  " SS	9  gg)
    )annotationsNc                    [         R                  R                  S[         R                  R                  S S /5      n [         R                  R                  S[         R                  R                  S /5      n[         R                  R                  [         R                  R                  SSS/S/5      [         R                  R                  SSS/S/5      [         R                  R                  SSS/S/5      /S	U /U/[         R                  R                  [        R                  " S
5      R                  [        R                  5      R                  S5      SS9[         R                  R                  [        R                  " S
5      S-  R                  [        R                  5      R                  S5      SS9[         R                  R                  [        R                  " S
5      S-   R                  [        R                  5      R                  S5      SS9/5      n[         R                  R                  U5      n[         R                  R!                  U5        U$ )NXYMatMulAXABXBCmm	      named   
   )onnxhelpermake_tensor_value_infoTensorProtoFLOAT
make_graph	make_nodenumpy_helper
from_arraynparangeastypefloat32reshape
make_modelcheckercheck_model)r   r   graph
onnx_models       e/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/onnx/test/model_container_refeval_test.py_linear_regressionr*      s   **30@0@0F0FtUA**30@0@0F0FOAKK""KK!!(S#J?KK!!(T3K$@KK!!(T3K#?	

 		
	
((		!##BJJ/77@s )  ((1#++BJJ7??H )  ((1"**2::6>>wG ) 	
E. ''.JLLZ(    c                 n   [         R                  R                  S[         R                  R                  S S /5      n [         R                  R                  S[         R                  R                  S /5      n[         R                  R                  [         R                  R                  SSS/S/5      [         R                  R                  SSS/S/5      [         R                  R                  SSS/S/5      /S	U /U/[         R                  R                  S
S[         R                  R                  S5      [         R                  R                  [        R                  " S5      R                  [        R                  5      R                  S5      SS9[         R                  R                  SS[         R                  R                  S5      /5      n[         R                  R!                  U5      n[         R                  R#                  UR$                  [        R                  " S5      S-  R                  [        R                  5      R                  S5      [        R                  " S5      S-   R                  [        R                  5      R                  S5      S.5      nUR'                  5         U$ )Nr   r   r   r   r	   r
   r   r   r   #loc0)r   r   r   r   r   #loc1r   r   )r-   r.   )r   r   r   r   r   r   r   model_containermake_large_tensor_protor   r   r   r    r!   r"   r#   r$   make_large_modelr'   r&   )r   r   r'   r(   large_models        r)   _large_linear_regressionr3   3   s	   **30@0@0F0FtUA**30@0@0F0FOAKK""KK!!(S#J?KK!!(T3K$@KK!!(T3K#?	

 		
	
  88d..44f ((		!##BJJ/77@s )    88d..44f
	
E* ''.J&&77iilS(00<DDWMiilR'//

;CCGL	
K r+   c                  ,    \ rS rSrS rS rS rS rSrg)TestLargeOnnxReferenceEvaluatorW   c                z   [         R                  " S5      R                  [         R                  5      R	                  S5      n[
        R                  R                  U5      nUR                  S SU05      n[         R                  " / SQ/ SQ/ SQ/[         R                  S9n[        R                  " US   U5        g )	Nr   r   r   )ihk i} i؏ )ipT, i0/ i2 )ix=J iO iHU )dtyper   )r   r    r!   r"   r#   r   	referenceReferenceEvaluatorrunarraynptassert_allclose)self	containerr   refgotexpecteds         r)    common_check_reference_evaluator@TestLargeOnnxReferenceEvaluator.common_check_reference_evaluatorX   s    IIaL

+33G<nn//	:ggdS!H%88*++
 **
 	CFH-r+   c                4   [        5       n[        R                  R                  UR                  5      nU R                  U5        U R                  [        5         US     S S S 5        [        R                  " 5        n[        R                  R                  US5      nUR                  U5        [        R                  R                  5       nUR                  U5        U R                  U5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)Nz#anymissingkey
model.onnx)r*   r   r/   r1   r'   rD   assertRaises
ValueErrortempfileTemporaryDirectoryospathjoinsaveModelContainerload)r?   model_protor2   tempfilenamecopys         r)   $test_large_onnx_no_large_initializerDTestLargeOnnxReferenceEvaluator.test_large_onnx_no_large_initializerf   s    (***;;K<M<MN--k:z*() + ((*dww||D,7HX&''668DIIh11$7 +* +* +*s   C8=A2D	8
D	
Dc                   [        5       nU R                  U5        [        R                  " 5        n[        R
                  R                  US5      nUR                  US5        [        R                  R                  5       nUR                  U5        [        R                  " USS9nU R                  U5        S S S 5        g ! , (       d  f       g = f)NrG   Tload_external_data)r3   rD   rJ   rK   rL   rM   rN   rO   r   r/   rP   rQ   
load_modelr?   r2   rS   rT   rU   loaded_models         r)   test_large_one_weight_file:TestLargeOnnxReferenceEvaluator.test_large_one_weight_filet   s    .0--k:((*dww||D,7HXt,''668DIIh??8ML11,? +**s   BC
Cc                   [        5       nU R                  U5        [        R                  " 5        n[        R
                  R                  US5      nUR                  US5        [        R                  " U5      nU R                  U5        [        R                  " USS9nU R                  U5        S S S 5        g ! , (       d  f       g = f)NrG   FTrY   )
r3   rD   rJ   rK   rL   rM   rN   rO   r   r[   r\   s         r)   test_large_multi_files6TestLargeOnnxReferenceEvaluator.test_large_multi_files   s    .0--k:((*dww||D,7HXu-??8,D11$7??8ML11,? +**s   B B::
C N)	__name__
__module____qualname____firstlineno__rD   rV   r^   ra   __static_attributes__rc   r+   r)   r5   r5   W   s    .8	@	@r+   r5   __main__   )	verbosity)
__future__r   rL   rJ   unittestnumpyr   numpy.testingtestingr=   r   onnx.helperonnx.model_containeronnx.numpy_helperonnx.referencer*   r3   TestCaser5   rd   mainrc   r+   r)   <module>rw      sc    # 	         >!H1@h&7&7 1@h zMMA r+   