§
    ŠŠtjS  ã                   ó’   — U d dl Z d dlmc mZ d dl mZ d dlmZ g Ze	e
         ed<   e j        j         G d„ d¦  «        ¦   «         ZdS )é    N)ÚTensor)Ú2_scripted_functional_optimizer_deprecation_warningÚ__all__c                   óp   — e Zd Z	 	 	 	 	 	 	 ddee         deded	ed
edededefd„Zdeedz           fd„ZdS )Ú_FunctionalAdadeltaç      ð?çÍÌÌÌÌÌì?ç�íµ ÷Æ°>ç        FÚparamsÚlrÚrhoÚepsÚweight_decayÚforeachÚmaximizeÚ_allow_empty_param_listc	                 ód  — t          d¬¦  «         ||||dœ| _        || _        || _        t	          |¦  «        dk    r|st          d¦  «        ‚d|i| _        t          j         	                    t          t          j        t          t          t          j        f         f         i ¦  «        | _        d S )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	            úi/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/torch/distributed/optim/functional_adadelta.pyÚ__init__z_FunctionalAdadelta.__init__   sª   € õ 	;ÀaÐHÑHÔHÐHàØØØ(ð	
ð 
ˆŒð ˆŒØ ˆŒåˆv‰;Œ;˜!ÒÐÐ$;ÐÝÐDÑEÔEÐEð % fÐ-ˆÔå”Y×'Ò'­­U¬\½4ÅÅUÄ\Ð@QÔ;RÐ-RÔ(SÐUWÑXÔXˆŒ
ˆ
ˆ
ó    Ú	gradientsNc                 óf  — | j         d         }g }g }g }g }g }| j        d         }| j        d         }	| j        d         }
| j        d         }t          |¦  «        t          |¦  «        k    r6t          ddt          |¦  «        › d�z   d	t          |¦  «        › �z   ¦  «        ‚d
}t	          ||¦  «        D �]%\  }}|��|t          j        |¦  «        z  }|                     |¦  «         |                     |¦  «         || j        vrti | j        |<   | j        |         }t          j	        d¦  «        |d<   t          j
        |t
          j        ¬¦  «        |d<   t          j
        |t
          j        ¬¦  «        |d<   | j        |         }|                     |d         ¦  «         |                     |d         ¦  «         |                     |d         ¦  «         �Œ't          j        ¦   «         5  t          j        |||||||	|
|| j        | j        |¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )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: Fr   Ú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'   z_FunctionalAdadelta.step7   s¥  € ØÔ! (Ô+ˆØÐØˆØˆØˆ
ØˆØŒ]˜4Ô ˆØŒm˜EÔ"ˆØŒm˜EÔ"ˆØ”} ^Ô4ˆåˆv‰;Œ;�#˜i™.œ.Ò(Ð(ÝØWØ3¥C¨¡K¤KÐ3Ð3Ð3ñ4à7¥s¨9¡~¤~Ð7Ð7ñ8ñô ð ð
 ˆÝ" 6¨9Ñ5Ô5ð 	2ñ 	2‰OˆE�8ØÑ#Ø�uÔ/°Ñ6Ô6Ñ6�Ø ×'Ò'¨Ñ.Ô.Ð.Ø—’˜XÑ&Ô&Ð&à ¤
Ð*Ð*Ø(*�D”J˜uÑ%Ø œJ uÔ-�EÝ$)¤L°Ñ$5Ô$5�E˜&‘MÝ*/Ô*:Ø­UÔ-Bð+ñ +ô +�E˜,Ñ'õ */Ô)9Ø­UÔ-Bð*ñ *ô *�E˜+Ñ&ð œ
 5Ô)�Ø×"Ò" 5¨Ô#6Ñ7Ô7Ð7Ø×!Ò! %¨Ô"4Ñ5Ô5Ð5Ø×"Ò" 5¨¤=Ñ1Ô1Ð1ùåŒ]‰_Œ_ð 	ð 	ÝŒJØ ØØØØØØØØ)ØœØœØ'ðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   Ç.+H&È&H*È-H*)r   r	   r
   r   FFF)	Ú__name__Ú
__module__Ú__qualname__Úlistr   ÚfloatÚboolr#   r'   © r$   r"   r   r      sÇ   € € € € € ð
 ØØØ!ØØØ(-ðYð Yà�V”ðYð ðYð ð	Yð
 ðYð ðYð ðYð ðYð "&ðYð Yð Yð Yð<7˜d 6¨D¡=Ô1ð 7ð 7ð 7ð 7ð 7ð 7r$   r   )r   Útorch.optim._functionalÚoptimÚ_functionalr3   r   Ú,torch.distributed.optim._deprecation_warningr   r   r?   r   Ú__annotations__r   Úscriptr   rB   r$   r"   ú<module>rI      sÁ   ðð €€€€Ø #Ð #Ð #Ð #Ð #Ð #Ð #Ð #Ð #Ø Ð Ð Ð Ð Ð ðð ð ð ð ð ð
 €ˆˆcŒÐ Ð Ñ ð „ÔðVð Vð Vð Vð Vñ Vô Vñ ÔðVð Vð Vr$   