
     Ti^V                     
   S SK r S SKrS SKJr  S SKJr  S SKJrJ	r	J
r
  0 S\	S   _S\	S   _S	\	S
   _S\	S   _S\	S
   _S\	S   _S\	S
   _S\	S   _S\	S
   _S\	S   _S\	S   _S\	S   _S\	S
   _S\	S
   _S\	S
   _S\	S
   _S\	S
   _0 S\	S   _S\	S   _S\	S    _S!\
S"   _S#\
_S$\
S"   _S%\
S"   _S&\
_S'\	S(   _S)\
_S*\	_S+\
_S,\
S-   _S.\
S"   _S/\
S0   _S1\	_S2\
S"   _E0 S3\
S"   _S4\
S5   _S6\	S7   _S8\
_S9\	S7   _S:\
_S;\
_S<\
S=   _S>\
S5   _S?\
S@   _SA\S7   _SB\	S7   _SC\	S7   _SD\
S"   _SE\
S5   _SF\	SG   _SH\
_E0 SI\
_SJ\
S"   _SK\
SL   _SM\
SL   _SN\	SO   _SP\
_SQ\
S"   _SR\
S"   _SS\
S"   _ST\
S"   _SU\
S"   _SV\	SO   _SW\
S5   _SX\
SY   _SZ\	SY   _S[\	SO   _S\\	_E0 S]\SO   _S^\
S"   _S_\
S"   _S`\
S"   _Sa\
S"   _Sb\
S"   _Sc\	SO   _Sd\	_Se\	SO   _Sf\
SL   _Sg\
_Sh\
S   _Si\
Sj   _Sk\	Sl   _Sm\	Sl   _Sn\	Sl   _So\
SL   _E0 Sp\
_Sq\
S   _Sr\
Sj   _Ss\	St   _Su\	St   _Sv\	St   _Sw\	SO   _Sx\
SL   _Sy\
_Sz\
S   _S{\
Sj   _S|\	SO   _S}\
S~   _S\	S~   _S\	S   _S\	S   _S\	S   _E0 S\	S   _S\	S   _S\	S(   _S\	S   _S\	S(   _S\	S(   _S\
S"   _S\
SL   _S\	S   _S\	S   _S\	S   _S\	S(   _S\	S(   _S\
SL   _S\	S   _S\	S   _S\	S   _E0 S\	S(   _S\	S(   _S\
SL   _S\	S   _S\	S   _S\
S"   _S\
S"   _S\
S"   _S\
S"   _S\	S   _S\
S"   _S\
S"   _S\
S"   _S\
S"   _S\	S   _S\
S"   _S\
S"   _E0 S\
S"   _S\
S"   _S\	S   _S\
S"   _S\
S"   _S\
S"   _S\
S"   _S\	S   _S\	S   _S\	S   _S\	S   _S\
S"   _S\
S"   _S\
S"   _S\
S"   _S\	S   _S\
S"   _E0 S\
S"   _S\
S"   _S\
S"   _S\	S   _S\	S   _S\	S   _S\	S   _S\	S   _S\	S   _S\
S"   _S\
S"   _S\
S"   _S\
S"   _S\	S   _S\
S"   _S\
S"   _S\
S"   _E0 S\
S"   _S\	S   _S\	S   _S\	S   _S\	S   _S\	S   _S\	S   _S\	S   _S\	S   _S\	S   _S\	_S\	S   _S\
S"   _S\
S"   _S\
S"   _S\
S"   _S\
S"   _E0 S\	SO   _S\	S   _S\	S   _S\	S   _S\	S   _S\
S   _S\	S(   _S\	S   _S\	S(   _S\	S(   _S\	S   _S\	S   _S\	S   _S\	_S\	S   _S\	_S\	S   _E0 S\	_S\	S   _S\	S   _S\	_S\	S   _S\	S   _S\	S   _S\	S   _S\	S   _S\	S(   _GS \	S(   _GS\	S(   _GS\	S(   _GS\	S(   _GS\	GS   _GS\	GS   _ErGS rGS	 r " GS
 GS5      rGS rg(      N)script)opset18)BOOLFLOATINT64model_embed_tokens_weight)    
  &model_layers_0_self_attn_q_proj_weight)r
   r
   $model_layers_0_self_attn_q_proj_biasr
   &model_layers_0_self_attn_k_proj_weight$model_layers_0_self_attn_k_proj_bias&model_layers_0_self_attn_v_proj_weight$model_layers_0_self_attn_v_proj_bias%model_layers_0_self_attn_dense_weight#model_layers_0_self_attn_dense_biasmodel_layers_0_mlp_fc1_weight) (  r
   model_layers_0_mlp_fc1_biasr   model_layers_0_mlp_fc2_weight)r
   r   model_layers_0_mlp_fc2_bias%model_layers_0_input_layernorm_weight#model_layers_0_input_layernorm_biasmodel_final_layernorm_weightmodel_final_layernorm_biaslm_head_weightlm_head_biasr	   expand_2)      r   val_1r   sym_size_int_44val_4val_5sym_size_int_50	embedding)s34s16r
   add_4val_6val_7aranger(   val_8	unsqueeze)r   r(   val_10val_13val_14val_15   full)r(   	s16 + s62diagonaltriuval_18val_19arange_1r5   val_21view)r(   r   gtconvert_element_type_defaultmul_16val_22val_421unsqueeze_4)r   r   r(   r5   val_23val_31val_49val_50   val_52expand_1)r'   r   r(   r5   val_61val_72val_74val_75val_78val_79slice_8val_422unsqueeze_6)r'   r   r   r5   convert_element_type_default_1add_89scalar_tensor_defaulteq_64val_119val_121val_122val_125val_126slice_14val_127masked_fillval_179val_180val_181val_186)Nr   val_187)r(   r   r'   r5   val_188val_189val_191val_192val_193val_198val_199)r   r'   r(   r5   val_200val_201slice_scatter_1val_203val_204val_205val_210slice_scatter_2unsqueeze_9)r   r   r(   _to_copymatmul)r   r    r(   	transpose)r   r(   r    cat)r   r(       cossin
layer_normval_246val_247linearval_252val_253view_1)r'   r(   rx   P   transpose_1)r'   rx   r(   r   val_255val_256linear_1val_261view_2transpose_2val_263val_264linear_2val_269view_3transpose_3val_273val_277val_280val_281slice_26)r'   rx   r(   rx   val_284val_287val_290val_291slice_27)r'   rx   r(   0   val_294val_297val_300val_301slice_28val_304val_307val_310val_311slice_29unsqueeze_10)r   r   r(   rx   unsqueeze_11mul_213val_314val_318val_321val_322slice_30)r'   rx   r(   r    val_325val_328val_331val_332slice_31negcat_1mul_230add_290mul_238val_335val_338val_341val_342slice_32val_345val_348val_351val_352slice_33neg_1cat_2mul_255add_326cat_3cat_4transpose_4)r'   rx   r   r5   matmul_1)r'   rx   r(   r5   val_353mul_287val_372val_374val_375val_378val_379slice_41add_387val_380matmul_2transpose_5val_385   view_4val_387val_388linear_3val_389val_390)r'   r(   r   linear_4val_391mul_351val_392pow_1val_393mul_358add_446val_394mul_365tanhadd_459mul_375val_395val_396linear_5add_476add_481layer_norm_1val_419)r
   r	   val_420r'   r(   r	   c                    ^ ^^^^^^^^^	^
^^^^^^^^^ [        5       S[        S   S[        S   S[        S   S[        S   S[        S	   [        S
   [        S
   44
UUUU UUUUU
U	UUUUUUUUUU4S jj5       nUR                  [        S9nU$ )N	input_ids)r'   r(   attention_mask)r'   r5   past_key_values_key_cache_0)r'   rx   s62r   past_key_values_value_cache_0returnr   )r'   rx   r5   r   c           	        > [         R                  " U SSS9n[         R                  " U5      n[         R                  " USSS9n[         R                  " USSS9n[         R                  " U5      n[         R                  " TU SS9n	[         R                  " X5      n
[         R
                  " XS5      n[         R                  " US/5      n[         R                  " U
S/SS9n[         R                  " XMSS9n[         R                  " S	U5      n[         R                  " SS
9n[         R                  " UUSS9n[         R
                  " SU
S5      n[         R                  " USS/SS9n[         R                  " UU5      n[         R                  " USS9n[         R                  " UU5      n[         R                  " USS/5      n[         R                  " US/S/S/SS9n[         R                  " U5      n[         R                  " UU5      n[         R                  " S/S9n[         R                  " S/S9n[         R                  " U
USS9n[         R                  " S/S9n[         R                   " UUUS/U5      n[         R                  " USS/5      n [         R                  " U SS9n![         R                  " UU!5      n"[         R"                  " U"S5      n#[         R                  " S/S9n$[         R                  " S/S9n%[         R                  " U
U%SS9n&[         R                  " S/S9n'[         R                   " UU$U&S/U'5      n([         R$                  " U#S	U(5      n)[         R                  " USS9n*[         R                  " U*SSS9n+[         R
                  " SU+S5      n,[         R                  " U,S/5      n-[         R&                  " U)/ SQS9n.[         R&                  " U/ SQS9n/[         R(                  " U/U-U.SS9n0[         R                  " USS9n1[         R                  " U1SSS9n2[         R
                  " SU2S5      n3[         R                  " U3S/5      n4[         R&                  " U0/ SQS9n5[         R&                  " U/ SQS9n6[         R(                  " U6U4U5SS9n7[         R&                  " U7/ SQS9n8[         R                  " USS9n9[         R                  " U9SSS9n:[         R
                  " SU:S5      n;[         R                  " U;S/5      n<[         R(                  " UU<U8SS9n=[         R                  " US/5      n>[         R                  " U>SS9n?[         R*                  " TU?5      n@[         R&                  " U@/ SQS9nA[         R                  " UAUASS9nB[         R,                  " UB5      nC[         R.                  " UB5      nD[         R0                  " U	TTSSSS9nE[         R&                  " TSS/S9nF[         R*                  " UEUF5      nG[         R                  " UGT5      nH[         R                  " XdS/S/SS9nI[         R                  " UHUISS9nJ[         R&                  " UJ/ SQS9nK[         R&                  " TSS/S9nL[         R*                  " UEUL5      nM[         R                  " UMT5      nN[         R                  " XdS/S/SS9nO[         R                  " UNUOSS9nP[         R&                  " UP/ SQS9nQ[         R&                  " TSS/S9nR[         R*                  " UEUR5      nS[         R                  " UST5      nT[         R                  " XdS/S/SS9nU[         R                  " UTUUSS9nV[         R&                  " UV/ SQS9nW[         R                  " S/S9nX[         R                   " UKS/S/S/UX5      nY[         R                  " S/S9nZ[         R                   " UKS/S/S/UZ5      n[[         R                  " S/S9n\[         R                   " UQS/S/S/U\5      n][         R                  " S/S9n^[         R                   " UQS/S/S/U^5      n_[         R                  " UCS/5      n`[         R                  " UDS/5      na[         R                  " UYU`5      nb[         R                  " S/S9nc[         R                   " UYS/S/S/Uc5      nd[         R                  " S/S9ne[         R                   " UYS/S/S/Ue5      nf[         R2                  " Uf5      ng[         R                  " UgUdSS9nh[         R                  " UhUa5      ni[         R                  " UbUi5      nj[         R                  " U]U`5      nk[         R                  " S/S9nl[         R                   " U]S/S/S/Ul5      nm[         R                  " S/S9nn[         R                   " U]S/S/S/Un5      no[         R2                  " Uo5      np[         R                  " UpUmSS9nq[         R                  " UqUa5      nr[         R                  " UkUr5      ns[         R                  " UjU[SS9nt[         R                  " UsU_SS9nu[         R                  " UUuSS9nv[         R                  " UUWSS9nw[         R&                  " Uv/ SQS9nx[         R*                  " UtUx5      ny[         R                  " UyS 5      nz[         R                  " S/S9n{[         R                  " S/S9n|[         R                  " U
U|SS9n}[         R                  " S/S9n~[         R                   " U=U{U}S/U~5      n[         R                  " UzU5      n[         R4                  " USS9n[         R*                  " UUw5      n[         R&                  " U/ SQS9n[         R                  " XdS/SS9n[         R                  " UUSS9n[         R&                  " TSS/S9n[         R*                  " UU5      n[         R                  " UT5      n[         R&                  " TSS/S9n[         R*                  " UEU5      n[         R                  " UT5      n[         R                  " US!5      n[         R6                  " US"5      n[         R                  " US#5      n[         R                  " UU5      n[         R                  " US$5      n[         R8                  " U5      n[         R                  " US%5      n[         R                  " UU5      n[         R&                  " TSS/S9n[         R*                  " UU5      n[         R                  " UT5      n[         R                  " UU5      n[         R                  " UU	5      n[         R0                  " UTTSSSS9n[         R&                  " TSS/S9n[         R*                  " UU5      n[         R                  " UT5      nUUvUw4$ )&Nr3   r   )endstartr   r   )axis)	allowzerogM)	value_int)upper)to)
value_intsg        )r   )r3   r   r   r   )permnone)	reduction)r   r3   r   r   )r   r   r3   r   )r   r3   r   g   >)
stash_typeepsilonr   r   )r   r3   r   r   rx   l    r    )r   r   r   r3   g(%?g      ?g      @gHm?glHE?g      ?)r   ShapeSqueezeGatherAddRange	UnsqueezeReshapeConcatExpandConstantTriluGreaterCastMulAbsSliceEqualWhere	Transpose	ScatterNDMatMulCosSinLayerNormalizationNegSoftmaxPowTanh)r   r   r   r   r!   r"   r#   r$   r%   r&   r)   r,   r.   r1   r2   r4   r6   r7   r:   r<   r=   r>   r?   rB   rF   rH   rI   rK   rL   rM   rO   rP   rR   rS   rT   rV   rW   rX   rY   r[   r\   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   rm   rn   ro   rp   rq   rr   rs   rt   ru   rv   rw   ry   rz   r{   r|   r}   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   cat_5cat_6r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   linear_6r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   s                                                                                                                                                                a/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/onnxscript/rewriter/models/_phi2lm.py
main_graphmake_model.<locals>.main_graph  se    iQa8!//%0;!L;!L!//%0NN#<iaP	O=q9%%fqc2	:A6~~mV4##a0}}T815==E1-vAw!<__Xt,'.||B1'=$T#?@''A7sRD2$Q?V$>>+v6!!aS1!!bT2!<!!aS1--&&1#vF''A?)0ka)H&W&DEfc*""qc2""rd3//%A>""qc2==7GaS'JmmE=(C--2..!!4--7A.##GbT2##KlC##H<@##GWgP--2..!!4--7A.##GbT2##G,?##H<@##GWgP!++G,G--2..!!4--7A.##GbT2!++g&
 ''	A37<<2(3%%f9=	nnY	;kk#kk#//1/)

 ##$JRSUVQWX..W5W&JK..tbTBA>''\B##$JRSUVQWX..W5;;w(LM..tbTB7a@''\B##$JRSUVQWX..W5;;w(LM..tbTB7a@''\B""qc2==qcB4!gF""qc2==rd5H4IA3PWX""qc2==qcB4!gF""qc2==rd5H4IA3PWX((qc2((qc2++h5""qc2==A3qc7C""qc2==B42E1FWUkk(#sH26++e\2++gw/++h5""qc2==A3qc7C""qc2==B42E1FWUH%uhR8++e\2++gw/wr:wr::EK<kPRS''LA>>%5++h	2""qc2""rd3//%A>""qc2=='7QCQ++gx0//'3>>'51''|D..t!<gC##$IQRTUPVW..1;;w(KL##$AAO..W5;;w(CD++h,Hc*++eX.++h0++gy1||G$++dC(++gw/##$AAO..'2;;w(CD++h1++gy111(&)
 ##N!Q@..w7;;w5%%    )value_infos)r   r   r   to_model_protor-  )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r*  models   ````````````````````  r)  
make_modelr0     s    , Xs&&s&01s& &++?%@s& (--A'B	s& 	!"()()
s& s& s& s& s&j %%+%>ELr,  c                  	   [         R                  R                  SS5      R                  [         R                  5      n [         R                  R                  SS5      R                  [         R                  5      n[         R                  R                  S5      R                  [         R                  5      n[         R                  R                  SS5      R                  [         R                  5      n[         R                  R                  S5      R                  [         R                  5      n[         R                  R                  SS5      R                  [         R                  5      n[         R                  R                  S5      R                  [         R                  5      n[         R                  R                  SS5      R                  [         R                  5      n[         R                  R                  S5      R                  [         R                  5      n[         R                  R                  SS5      R                  [         R                  5      n	[         R                  R                  S5      R                  [         R                  5      n
[         R                  R                  SS5      R                  [         R                  5      n[         R                  R                  S5      R                  [         R                  5      n[         R                  R                  S5      R                  [         R                  5      n[         R                  R                  S5      R                  [         R                  5      n[         R                  R                  S5      R                  [         R                  5      n[         R                  R                  S5      R                  [         R                  5      n[         R                  R                  SS5      R                  [         R                  5      n[         R                  R                  S5      R                  [         R                  5      n[         R                  R                  SSS5      R                  [         R                  5      n[        U UUUUUUUUU	U
UUUUUUUUU5      nU$ )Nr	   r
   r   r   r    )numpyrandomrandastypefloat32r0  )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r/  s                        r)  make_model_with_random_weightsr7    sB    % 1 1% > E Eemm T-2\\->->tT-J-Q-Q.* ,1<<+<+<T+B+I+I%--+X(-2\\->->tT-J-Q-Q.* ,1<<+<+<T+B+I+I%--+X(-2\\->->tT-J-Q-Q.* ,1<<+<+<T+B+I+I%--+X(,1LL,=,=dD,I,P,PQVQ^Q^,_)*/,,*;*;D*A*H*H*W'$)LL$5$5eT$B$I$I%--$X!"',,"3"3E":"A"A%--"P$)LL$5$5dE$B$I$I%--$X!"',,"3"3D"9"@"@"O,1LL,=,=d,C,J,J5==,Y)*/,,*;*;D*A*H*H*W'#(<<#4#4T#:#A#A%--#P !&!2!24!8!?!?!N\\&&ud3::5==IN<<$$U+225==AL||  B*11%--@H!.,.,.,-+%#%#-+$")E, Lr,  c                       \ rS rSrS rSrg)_Phi2LMTesti  c                     [        U S5      (       d/  [        5       n[        R                  R	                  U5      nX l        U R
                  $ )N_onnx_model)hasattrr7  irserdedeserialize_modelr;  )selfmodel_protor/  s      r)  get_onnx_model_Phi2LMTest.get_onnx_model  s=    t]++8:KHH..{;E$r,  )r;  N)__name__
__module____qualname____firstlineno__rB  __static_attributes__ r,  r)  r9  r9    s     r,  r9  c                      [        5       $ )N)r9  rI  r,  r)  phi2lm_testrK    s
    =r,  )r2  onnx_irr=  
onnxscriptr   onnxscript.onnx_opsetr   onnxscript.onnx_typesr   r   r   r-  r0  r7  r9  rK  rI  r,  r)  <module>rP     s      ) 4 4]{!3],eJ.?] +E$K] -eJ.?	]
 +E$K] -eJ.?] +E$K] ,U:->] *5;] $U;%7] "5<] $U;%7] "5;] ,U4[] *5;]  #E$K!]" !%+#]$ eK(%]& E%L']( h)]* U1X+], u-]. U1X/]0 U1X1]2 u3]4 )*5]6 U7]8 U9]: U;]< eEl=]> U1X?]@ xA]B eC]D eAhE]F eAhG]H eAhI]J E$%K]L M]N E$%O]P eQ]R eS]T k"U]V eAhW]X E(OY]Z 	$!
"[]\ #E*<$=]]^ e&'_]` eAha]b uQxc]d 512e]f eg]h ei]j eAhk]l eAhm]n eAho]p 23q]r es]t eAhu]v eAhw]x eAhy]z eAh{]| eAh}]~ u12]@ uQxA]B 512C]D %e,D&EE]F e01G]H UI]J T./K]L uQxM]N uQxO]P uQxQ]R uQxS]T uQxU]V 23W]X uY]Z 556[]\ uQx]]^ u_]` uT{a]b uW~c]d u12e]f u12g]h u12i]j uQxk]l um]n uT{o]p uW~q]r u12s]t u12u]v u12w]x u9:y]z uQx{]| u}]~ uT{]@ uW~A]B u9:C]D 5%E]F k"G]H eL!I]J |$K]L 
5M]N 
5O]P 
5Q]R %*+S]T uZ U]V u'(W]X e&'Y]Z uQx[]\ uQx]]^ e()_]` 5-.a]b uZ c]d u'(e]f ()g]h uQxi]j e()k]l 5-.m]n uZ o]p u'(q]r ()s]t uQxu]v e()w]x 5-.y]z uQx{]| uQx}]~ uQx]@ uQxA]B *+C]D uQxE]F uQxG]H uQxI]J uQxK]L *+M]N uQxO]P uQxQ]R uQxS]T uQxU]V *+W]X uQxY]Z uQx[]\ uQx]]^ uQx_]` *+a]b E/*c]d E/*e]f u)*g]h uQxi]j uQxk]l uQxm]n uQxo]p *+q]r uQxs]t uQxu]v uQxw]x uQxy]z *+{]| 
5%&}]~ U'(]@ u)*A]B u)*C]D u)*E]F uQxG]H uQxI]J uQxK]L uQxM]N *+O]P uQxQ]R uQxS]T uQxU]V uQxW]X *+Y]Z U'([]\ U'(]]^ u)*_]` u)*a]b U'(c]d U'(e]f 534g]h 34i]j uk]l u23m]n uQxo]p uQxq]r uQxs]t uQxu]v uQxw]x 23y]z u23{]| u23}]~ *+]@ 5-.A]B uQxC]D e&'E]F uZ G]H u'(I]J ()K]L u[!M]N u()O]P )*Q]R uS]T u()U]V uW]X U&'Y]Z u[]\ u()]]^ u()_]` ua]b u()c]d E%&e]f u()g]h u()i]j u[!k]l u'(m]n ()o]p u'(q]r u'(s]t E,-u]v u[!w]x u()y]@M`1h   r,  