+
    Pj@@                         ^ RI Ht ^ RIt^ RIHt ^RIHtHtHtHtH	t	H
t
HtHtHtHtHtHtHtHtHt RR.t ! R R]4      tR] R	]	 R
] R
] R
] R2]n        R R ltR R lt]! ]R7      RR R ll4       tR# )    )castN)Tensor)_capturable_doc_default_to_fused_or_foreach_differentiable_doc_disable_dynamo_if_unsupported_foreach_doc!_get_capturable_supported_devices_get_scalar_dtype
_get_value_maximize_doc_params_doc
_to_scalar_use_grad_for_differentiable_view_as_real	OptimizerParamsTASGDasgdc                   h   a a ] tR t^t oRV3R lV 3R llltV 3R ltR t]RR l4       tRt	Vt
V ;t# )	r   c                x   < V ^8  d   QhRS[ RS[S[,          RS[RS[RS[RS[RS[R,          R	S[R
S[RS[RR/# )   paramslrlambdalphat0weight_decayforeachNmaximizedifferentiable
capturablereturn)r   floatr   bool)format__classdict__s   "i/Users/ahmed/devFolder/Ultron/claude-voice/gateway/.venv/lib/python3.14/site-packages/torch/optim/asgd.py__annotate__ASGD.__annotate__   s     + ++ FN+ 	+
 + + + + + + + 
+    c                  < \        V\        4      '       d!   VP                  4       ^8w  d   \        R4      hRV8:  g   \        RV 24      hRV8:  g   \        RV 24      hRVRVRVRVR	VR
VRVRV	RV
/	p\        SV `  W4       R# )   zTensor lr must be 1-elementg        zInvalid learning rate: zInvalid weight_decay value: r   r   r   r   r   r   r    r!   r"   N)
isinstancer   numel
ValueErrorsuper__init__)selfr   r   r   r   r   r   r   r    r!   r"   defaults	__class__s   &&&&&&&&&&& r(   r2   ASGD.__init__   s     b&!!bhhjAo:;;by6rd;<<l";L>JKK "UU"Lwn*

 	*r+   c                  < \         SV `  V4       V P                   EF  pVP                  R R4       VP                  RR4       VP                  RR4       VP                  RR4       VR,           EFH  pV P                  P                  V. 4      p\        V4      ^ 8w  g   K2  \        P                  ! VR,          4      '       gA   \        VR,          4      p\        P                  ! V\        4       VP                  R7      VR&   \        P                  ! VR	,          4      '       g6   \        P                  ! VR	,          \        4       VP                  R7      VR	&   \        P                  ! VR
,          4      '       d   EK  \        P                  ! VR
,          \        4       VP                  R7      VR
&   EKK  	  EK  	  R# )r   Nr    Fr!   r"   r   step)dtypedeviceetamu)r1   __setstate__param_groups
setdefaultstategetlentorch	is_tensorr$   tensorr   r:   )r3   r@   grouppp_statestep_valr5   s   &&    r(   r=   ASGD.__setstate__?   sG   U#&&EY-Z/-u5\518__**..B/w<1$ ??76?;;#(#9*/,,$,=,?+ !??75>::).#EN2C2Eahh* !??74=99(-#DM1B1DQXX) % 'r+   c                   R pVR,           EF  p	V	P                   f   K  V\        P                  ! V	4      ,          pVP                  V	4       V	P                   P                  '       d   \        R4      hVP                  V	P                   4       V P                  V	,          p
\        V
4      ^ 8X  d   \        P                  ! R
V	P                  \        4       R7      V
R&   \        P                  ! \        VR,          4      V	P                  \        4       R7      P                  4       P                  4       V
R&   \        P                  ! R
V	P                  \        4       R7      V
R&   \        P                   ! V	\        P"                  R7      V
R	&   VP                  V
R,          4       VP                  V
R	,          4       VP                  V
R,          4       VP                  V
R,          4       EK  	  V# )Fr   z&ASGD does not support sparse gradients)r:   r9   r8   r   r;   r<   )memory_formatax )gradrC   
is_complexappend	is_sparseRuntimeErrorr@   rB   zerosr:   r   	as_tensorr   clonedetachones
zeros_likepreserve_format)r3   rF   params_with_gradgradsmusaxsetasstate_stepshas_complexrG   r@   s   &&&&&&&&   r(   _init_groupASGD._init_groupW   s{   xAvv!u//22 ''*66###&'OPPQVV$

1u:?$)KK1883D3F%E&M &uT{3#$88"3"5
  %L #(**1883D3F#E$K #("2"2)>)>#E$K 

5;'

5;'E%L)""5=1C !D r+   c                   V P                  4        RpVe.   \        P                  ! 4       ;_uu_ 4        V! 4       pRRR4       V P                   F}  p. p. p. p. p. p. p	V P	                  W4WVWxV	4      p
\        VVVVVV	VR,          VR,          VR,          VR,          VR,          VR,          VR,          VR	,          VR
,          V
R7       K  	  V#   + '       g   i     L; i)zPerform a single optimization step.

Args:
    closure (Callable, optional): A closure that reevaluates the model
        and returns the loss.
Nr   r   r   r   r   r   r    r!   r"   )
r   r   r   r   r   r   r    r!   r"   ra   )'_accelerator_graph_capture_health_checkrC   enable_gradr>   rb   r   )r3   closurelossrF   r[   r\   r]   r^   r_   r`   ra   s   &&         r(   r8   	ASGD.step}   s     	446""$$y % &&E-/"$E "C "C!#D(*K**SK  Gn;;Gn">2i(z*$%56 .'! '> E %$s   CC#	rN   )	g{Gz?g-C6?g      ?g    .Ar   NFFFN)__name__
__module____qualname____firstlineno__r2   r=   rb   r   r8   __static_attributes____classdictcell____classcell__)r5   r'   s   @@r(   r   r      s4     + +B0$L "- "- -r+   zImplements Averaged Stochastic Gradient Descent.

    It has been proposed in `Acceleration of stochastic approximation by
    averaging`_.

    Args:
        am  
        lr (float, Tensor, optional): learning rate (default: 1e-2)
        lambd (float, optional): decay term (default: 1e-4)
        alpha (float, optional): power for eta update (default: 0.75)
        t0 (float, optional): point at which to start averaging (default: 1e6)
        weight_decay (float, optional): weight decay (L2 penalty) (default: 0)
        z	
        z

    .. _Acceleration of stochastic approximation by averaging:
        https://meyn.ece.ufl.edu/wp-content/uploads/sites/77/archive/spm_files/Courses/ECE555-2011/555media/poljud92.pdf

    c                 T   V ^8  d   Qh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"   ra   r#   Nlistr   r$   r%   )r&   s   "r(   r)   r)      s     M MLM<M 
fM 
f	M
 v,M fM M 	M 	M M M M M M  !M" 
#Mr+   c       	   
      t   \         P                  P                  4       '       g   \        V4      p\	        V 4       EFx  w  ppW,          pV'       g   TMV) pW?,          pW/,          pWO,          pW_,          p\         P
                  P                  4       '       g   V'       d   \        4       pVP                  P                  VP                  P                  u;8X  d8   VP                  P                  u;8X  d   VP                  P                  8X  d   M MVP                  P                  V9   g   \        R V R24      h\         P                  ! V4      '       dC   \         P                  ! V4      p\         P                  ! V4      p\         P                  ! V4      pV^,          pV
^ 8w  d   VP                  VV
R7      pV'       d5   VP                  ^VV,          ,
          4       VP                  VVRR7       M>\!        V4      pVP                  ^VV,          ,
          4       VP#                  VV) R7       V'       g   VP%                  4       ^8w  d1   VP#                  VP'                  V4      P                  V4      4       MVP)                  V4       V'       d   VP)                  V^Wg,          V,          ,           V	,          ,          4       VP)                  ^\         P*                  ! VV,
          \         P,                  ! V4      4      ,          4       EK  \!        V4      p\         P.                  ! V^Wg,          V,          ,           V	,          ,          4      pVP)                  V4       \         P.                  ! ^\1        ^VV,
          4      ,          4      pVP)                  V4       EK{  	  R# )UIf capturable=True, params, mus, etas, and state_steps must be on supported devices: .r   valueN)rC   jitis_scriptingr   	enumeratecompileris_compilingr
   r:   typeAssertionErrorrP   view_as_realaddmul_addcmul_r   add_itemsubcopy_maximum	ones_likerU   max)r   r\   r^   r]   r_   r`   r   r   r   r   r   r    r!   r"   ra   iparamrO   r<   rM   r;   step_tcapturable_supported_devices	eta_valuer8   new_etanew_mus   &&&&&&$$$$$$$$$            r(   _single_tensor_asgdr      s   $ 99!!##^f%5x#t$VVg ~~**,,+L+N(!!99>>&::??& ==%%& LL%%)EE$--I,J!M 
 E""%%d+D&&u-E##B'B 	!188E86DJJq53;'NN4BN/"3IJJq59,,-JJtI:J. aGGEIIbM&&r*+HHUOIIbQf!44>?@HHQv{EOOF4KLLMf%DoobQd1B-Bu,L&MNGIIg__QQr	):%:;FHHVq &r+   c                 T   V ^8  d   QhR\         \        ,          R\         \        ,          R\         \        ,          R\         \        ,          R\         \        ,          R\         \        ,          R\        R\        R	\        R
\        R\        R\        R\        R\        R\        RR/# rs   rt   )r&   s   "r(   r)   r)     s     O7 O7LO7<O7 
fO7 
f	O7
 v,O7 fO7 O7 	O7 	O7 O7 O7 O7 O7 O7  !O7" 
#O7r+   c       	         
  a" \        V 4      ^ 8X  d   R# V'       d   \        R4      h\        P                  P	                  4       '       g|   V'       dt   \        RR7      o"\        ;QJ d+    V"3R l\        WWERR7       4       F  '       d   K   RM 	  RM! V"3R l\        WWERR7       4       4      '       g   \        RS" R	24      h\        V4      p\        P                  ! WW#WE.4      pVP                  4        EF  w  w  ppw  w  ppppppp\        \        \        ,          V4      p\        \        \        ,          V4      p\        \        \        ,          V4      p\        \        \        ,          V4      p\        \        \        ,          V4      p\        \        \        ,          V4      pV'       d   \        VVV4       V'       d   \        P                   ! V4      p\        P                  P	                  4       '       gJ   V^ ,          P"                  '       d1   \        P$                  ! V\        P&                  ! R
RR7      R
R7       M\        P$                  ! V^4       V
^ 8w  dX   V'       d   \        P$                  ! VVV
R7       TpM\        P(                  ! VVV
R7      p\        P$                  ! VVVR7       M\        P(                  ! VVVR7      p\        P*                  ! VVVRR7       ?\        P,                  ! VV4      p\        P*                  ! VVV4       ?V'       Ed    \        P,                  ! VV4      p\        P.                  ! VR
4       \        P0                  ! V4       \        P2                  ! VV4       ?\        P4                  ! VV4      p \        P6                  ! V V4       \        P$                  ! V ^4       \        P8                  ! V V	4       \        P0                  ! V 4       \        P6                  ! V V4       \        P2                  ! VV 4       EK7  V U!u. uF=  p!\        P:                  ! V^Wg,          V!,          ,           V	,          ,          VR7      NK?  	  p p!V U!u. uF<  p!\        P:                  ! ^\=        ^\?        V!4      V,
          4      ,          VR7      NK>  	  pp!\        P2                  ! VV 4       \        P2                  ! VV4       EK  	  R# u up!i u up!i )r   Nz#_foreach ops don't support autogradF)supports_xlac              3   T  <"   T F  w  rr4VP                   P                  VP                   P                  u;8H  ;'       d<    VP                   P                  u;8H  ;'       d    VP                   P                  8H  Mu ;'       d    VP                   P                  S9   x  K  	  R # 5irj   )r:   r   ).0rG   r<   r;   r8   r   s   &    r(   	<genexpr>%_multi_tensor_asgd.<locals>.<genexpr>2  sw      
 %U s HHMMRYY^^RRszzRR$++BRBRR > >!==>$Ts   AB(#"B("B(T)strictrw   rx   g      ?cpu)r:   ry   rz   r|   ) rB   r   rC   r   r   r
   allzipr   r   "_group_tensors_by_device_and_dtypeitemsr   ru   r   r   _foreach_negis_cpu_foreach_add_rE   _foreach_add_foreach_addcmul__foreach_sub_foreach_maximum__foreach_reciprocal__foreach_copy__foreach_mul_foreach_mul__foreach_pow_rU   r   r   )#r   r\   r^   r]   r_   r`   r   r   r   r   r   r    r!   r"   ra   grouped_tensorsr:   _grouped_params_grouped_grads_grouped_axs_grouped_mus_grouped_etas_grouped_state_steps_grouped_paramsgrouped_gradsgrouped_axsgrouped_musgrouped_etasgrouped_state_stepsintermediatenew_musnew_etasr8   r   s#   &&&&&&$$$$$$$$$                   @r(   _multi_tensor_asgdr     s   $ 6{aBCC >>&&((Z'H(
$ s 
 %(Tt$T
sss 
 %(Tt$T
 
 

 !&&B%C1F 
 
BBBB	$4O 
			 
	 
	
 	d6lO<T&\>:4<64<6DL-8"4<1EF.-E!..}=M ~~**,,1DQ1G1N1N1N#U\\#e%DC  3Q7 1##M>V,$11!>  nEJ --~UL 	lRTU )).+F\;G :(()<bAG##GS1&&w/  g6 ))*=uEH"-!,%0&&x0"-  x8 0/D q5:+<'<&F GPVW/   0/D C:d+;b+@$A A&Q/     x8  g6s 
!`s   5AS7>AS<)single_tensor_fnc          "      n   V ^8  d   Qh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   Nr    r!   r"   ra   r   r   r   r   r   r#   )ru   r   r%   r$   )r&   s   "r(   r)   r)     s     6 6L6<6 
f6 
f	6
 v,6 f6 D[6 6 6 6 6 6  	!6" 	#6$ %6& '6( 
)6r+   c               <   Vf   \        WRR7      w  ppV'       d0   \        P                  P                  4       '       d   \	        R4      hV'       d,   \        P                  P                  4       '       g   \
        pM\        pV! V VVVVVVVVVVVVV	V
R7       R# )zfFunctional API that performs asgd algorithm computation.

See :class:`~torch.optim.ASGD` for details.
NF)	use_fusedz6torch.jit.script not supported with foreach optimizers)	r   r   r   r   r   r    r!   r"   ra   )r   rC   r}   r~   rS   r   r   )r   r\   r^   r]   r_   r`   r   r    r!   r"   ra   r   r   r   r   r   r   funcs   &&&&&&&&&&&$$$$$  r(   r   r     s    4 1e

7 599))++STTuyy--//!"!%r+   )NFFFF)typingr   rC   r   	optimizerr   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   __all__r   __doc__r   r   r   rN   r+   r(   <module>r      s          & 6
N9 Nb	 
 	 
 		 		 		 .M`O7d  1DE6 F6r+   