
    [Thr                         % S SK Jr  S SKrS SKJs  Jr  S SKJr  S SKJ	r	  / r
\\   \S'   \R                  R                   " S S5      5       rg)    )OptionalN)Tensor)2_scripted_functional_optimizer_deprecation_warning__all__c                   p    \ rS rSr       SS\\   S\S\S\S\S\S\S	\4S
 jjrS\\	\      4S jr
Srg)_FunctionalAdadelta   paramslrrhoepsweight_decayforeachmaximize_allow_empty_param_listc	                 H   [        SS9  UUUUS.U l        X`l        Xpl        [	        U5      S:X  a  U(       d  [        S5      eSU0U l        [        R                  R                  [        [        R                  [        [        [        R                  4   4   0 5      U l        g )N   )
stacklevel)r   r   r   r   r   z%optimizer got an empty parameter listr
   )r   defaultsr   r   len
ValueErrorparam_grouptorchjitannotatedictr   strstate)	selfr
   r   r   r   r   r   r   r   s	            c/var/www/auris/envauris/lib/python3.13/site-packages/torch/distributed/optim/functional_adadelta.py__init___FunctionalAdadelta.__init__   s     	;aH(	
  v;!$;DEE %f-YY''U\\4U\\@Q;R-R(SUWX
    	gradientsc                 `   U R                   S   n/ n/ n/ n/ n/ nU R                  S   nU R                  S   n	U R                  S   n
U R                  S   n[        U5      [        U5      :w  a*  [        SS[        U5       S3-   S	[        U5       3-   5      eS
n[	        X!5       GH#  u  pUc  M  U[
        R                  " U5      -  nUR                  U5        UR                  U5        XR                  ;  a  0 U R                  U'   U R                  U   n[
        R                  " S5      US'   [
        R                  " U[
        R                  S9US'   [
        R                  " U[
        R                  S9US'   U R                  U   nUR                  US   5        UR                  US   5        UR                  US   5        GM&     [
        R                  " 5          [        R                  " UUUUUUU	U
UU R                  U R                   US9  S S S 5        g ! , (       d  f       g = f)Nr
   r   r   r   r   zEthe gradients passed in does not equal to the size of the parameters!zParams length: z. zGradients length: F        step)memory_format
square_avg	acc_delta)r   r   r   r   r   r   has_complex)r   r   r   r   zipr   
is_complexappendr   tensor
zeros_likepreserve_formatno_gradFadadeltar   r   )r   r$   r
   params_with_gradgradssquare_avgs
acc_deltasstate_stepsr   r   r   r   r+   paramgradientr   s                   r    r'   _FunctionalAdadelta.step8   s	   !!(+
]]4 mmE"mmE"}}^4v;#i.(W#CK=34&s9~&678 
 "65OE#u//66 ''.X&

*(*DJJu% JJu-E$)LL$5E&M*/*:*:U-B-B+E,' */)9)9U-B-B*E+& 

5)""5#67!!%"45""5=1)  6, ]]_JJ )' __s   "4H
H-)r   r   r   r   r   N)g      ?g?gư>r&   FFF)__name__
__module____qualname____firstlineno__listr   floatboolr!   r   r'   __static_attributes__ r#   r    r   r      s    
 !(-YVY Y 	Y
 Y Y Y Y "&Y<7d8F#34 7r#   r   )typingr   r   torch.optim._functionaloptim_functionalr3   r   ,torch.distributed.optim._deprecation_warningr   r   rA   r   __annotations__r   scriptr   rE   r#   r    <module>rM      sO      # # 
 c  V V Vr#   