+
    ÆÜ³jv  ã                   óT   € ^ RI Ht  ! R R]4      t ! R R]4      t ! R R]4      tR# )	é    )ÚOptimizer1Statec                   ó6   a a€ ] tR t^t oRV 3R lltRtVtV ;t# )ÚAdagradc
                óü   <€ RV8:  g   \        RV 24      hRV8:  g   \        RV 24      hRV8:  g   \        RV 24      hVR8w  d   \        R4      hVR8w  d   \        R4      h\        S
V `	  RVVR	VVVVV	4	       R# )
aM  
Base Adagrad optimizer.

Arguments:
    params (`torch.tensor`):
        The input parameters to optimize.
    lr (`float`, defaults to 1e-2):
        The learning rate.
    lr_decay (`int`, defaults to 0):
        The learning rate decay.
    weight_decay (`float`, defaults to 0.0):
        The weight decay value for the optimizer.
    initial_accumulator_value (`int`, defaults to 0):
        The initial momemtum values.
    eps (`float`, defaults to 1e-10):
        The epsilon value prevents division by zero in the optimizer.
    optim_bits (`int`, defaults to 32):
        The number of bits of the optimizer state.
    args (`object`, defaults to `None`):
        An object with additional arguments.
    min_8bit_size (`int`, defaults to 4096):
        The minimum number of elements of the parameter tensors for 8-bit optimization.
ç        úInvalid learning rate: úInvalid weight_decay value: úInvalid epsilon value: ú/Initial accumulator value != 0.0 not supported!úLr Decay != 0.0 not supported!ÚadagradN©r   r   ©Ú
ValueErrorÚsuperÚ__init__©ÚselfÚparamsÚlrÚlr_decayÚweight_decayÚinitial_accumulator_valueÚepsÚ
optim_bitsÚargsÚmin_8bit_sizeÚ	__class__s   &&&&&&&&&&€Ú[/home/luca/screen-checking/.venv/lib/python3.14/site-packages/bitsandbytes/optim/adagrad.pyr   ÚAdagrad.__init__	   s¤   ø€ ðF �bŒyÜÐ6°r°dÐ;Ó<Ð<Ø�lÔ"ÜÐ;¸L¸>ÐJÓKÐKØ�cŒzÜÐ6°s°eÐ<Ó=Ð=Ø$¨Ô+ÜÐNÓOÐOØ�sŒ?ÜÐ=Ó>Ð>Ü‰ÑØØØØØØØØØö
	
ó    © ©ç{®Gáz„?r   r   r   ç»½×Ùß|Û=é    Né   ©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r   Ú__classdict__s   @@r   r   r      ó   ù‡ € ÷7
÷ 7
r!   r   c                   ó6   a a€ ] tR t^Ct oRV 3R lltRtVtV ;t# )ÚAdagrad8bitc
                ó   <€ RV8:  g   \        RV 24      hRV8:  g   \        RV 24      hRV8:  g   \        RV 24      hVR8w  d   \        R4      hVR8w  d   \        R4      hV^8w  d   \        R4      h\        S
V `	  RVVR
VV^VV	4	       R	# )a«  
8-bit Adagrad optimizer.

Arguments:
    params (`torch.tensor`):
        The input parameters to optimize.
    lr (`float`, defaults to 1e-2):
        The learning rate.
    lr_decay (`int`, defaults to 0):
        The learning rate decay.
    weight_decay (`float`, defaults to 0.0):
        The weight decay value for the optimizer.
    initial_accumulator_value (`int`, defaults to 0):
        The initial momemtum values.
    eps (`float`, defaults to 1e-10):
        The epsilon value prevents division by zero in the optimizer.
    optim_bits (`int`, defaults to 8):
        The number of bits of the optimizer state.
        Note: This parameter is not used in Adagrad8bit as it always uses 8-bit optimization.
    args (`object`, defaults to `None`):
        An object with additional arguments.
    min_8bit_size (`int`, defaults to 4096):
        The minimum number of elements of the parameter tensors for 8-bit optimization.
r   r   r	   r
   r   r   zHAdagrad8bit only supports optim_bits=8 (default value for compatibility)r   Nr   r   r   s   &&&&&&&&&&€r   r   ÚAdagrad8bit.__init__D   s¹   ø€ ðH �bŒyÜÐ6°r°dÐ;Ó<Ð<Ø�lÔ"ÜÐ;¸L¸>ÐJÓKÐKØ�cŒzÜÐ6°s°eÐ<Ó=Ð=Ø$¨Ô+ÜÐNÓOÐOØ�sŒ?ÜÐ=Ó>Ð>Ø˜Œ?ô ÐgÓhÐhÜ‰ÑØØØØØØØØØö
	
r!   r"   )r$   r   r   r   r%   é   Nr'   r(   r0   s   @@r   r4   r4   C   s   ù‡ € ÷<
÷ <
r!   r4   c                   ó6   a a€ ] tR t^ƒt oRV 3R lltRtVtV ;t# )ÚAdagrad32bitc
                óü   <€ RV8:  g   \        RV 24      hRV8:  g   \        RV 24      hRV8:  g   \        RV 24      hVR8w  d   \        R4      hVR8w  d   \        R4      h\        S
V `	  RVVR	VV^ VV	4	       R# )
aO  
32-bit Adagrad optimizer.

Arguments:
    params (`torch.tensor`):
        The input parameters to optimize.
    lr (`float`, defaults to 1e-2):
        The learning rate.
    lr_decay (`int`, defaults to 0):
        The learning rate decay.
    weight_decay (`float`, defaults to 0.0):
        The weight decay value for the optimizer.
    initial_accumulator_value (`int`, defaults to 0):
        The initial momemtum values.
    eps (`float`, defaults to 1e-10):
        The epsilon value prevents division by zero in the optimizer.
    optim_bits (`int`, defaults to 32):
        The number of bits of the optimizer state.
    args (`object`, defaults to `None`):
        An object with additional arguments.
    min_8bit_size (`int`, defaults to 4096):
        The minimum number of elements of the parameter tensors for 8-bit optimization.
r   r   r	   r
   r   r   r   Nr   r   r   s   &&&&&&&&&&€r   r   ÚAdagrad32bit.__init__„   s¤   ø€ ðF �bŒyÜÐ6°r°dÐ;Ó<Ð<Ø�lÔ"ÜÐ;¸L¸>ÐJÓKÐKØ�cŒzÜÐ6°s°eÐ<Ó=Ð=Ø$¨Ô+ÜÐNÓOÐOØ�sŒ?ÜÐ=Ó>Ð>Ü‰ÑØØØØØØØØØö
	
r!   r"   r#   r(   r0   s   @@r   r9   r9   ƒ   r2   r!   r9   N)Úbitsandbytes.optim.optimizerr   r   r4   r9   r"   r!   r   Ú<module>r=      s0   ðõ
 9ô8
ˆoô 8
ôv=
�/ô =
ô@8
�?ö 8
r!   