+
    ÆÜ³j¡0  ã                   ó–   € ^ RI Ht  ! R R]4      t ! R R]4      t ! R R]4      t ! R R	]4      t ! R
 R]4      t ! R R]4      tR# )é    )ÚOptimizer2Statec                   ó6   a a€ ] tR t^	t oRV 3R lltRtVtV ;t# )ÚAdamWc                ó:   <€ \         SV `  RVVVVVVVV	V
R7
       R# )ak  
Base AdamW optimizer.

Arguments:
    params (`torch.Tensor`):
        The input parameters to optimize.
    lr (`float`, defaults to 1e-3):
        The learning rate.
    betas (`tuple(float, float)`, defaults to (0.9, 0.999)):
        The beta values are the decay rates of the first and second-order moment of the optimizer.
    eps (`float`, defaults to 1e-8):
        The epsilon value prevents division by zero in the optimizer.
    weight_decay (`float`, defaults to 1e-2):
        The weight decay value for the optimizer.
    amsgrad (`bool`, defaults to `False`):
        Whether to use the [AMSGrad](https://hf.co/papers/1904.09237) variant of Adam that uses the maximum of past squared gradients instead.
    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.
    is_paged (`bool`, defaults to `False`):
        Whether the optimizer is a paged optimizer or not.
Úadam©Úis_pagedN©ÚsuperÚ__init__©ÚselfÚparamsÚlrÚbetasÚepsÚweight_decayÚamsgradÚ
optim_bitsÚargsÚmin_8bit_sizer	   Ú	__class__s   &&&&&&&&&&&€ÚY/home/luca/screen-checking/.venv/lib/python3.14/site-packages/bitsandbytes/optim/adamw.pyr   ÚAdamW.__init__
   s6   ø€ ôL 	‰ÑØØØØØØØØØØð 	ö 	
ó    © ©	çü©ñÒMbP?©gÍÌÌÌÌÌì?g+‡ÙÎ÷ï?ç:Œ0âŽyE>ç{®Gáz„?Fé    Né   F©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r   Ú__classdict__s   @@r   r   r   	   ó   ù‡ € ÷1
÷ 1
r   r   c                   ó6   a a€ ] tR t^>t oRV 3R lltRtVtV ;t# )Ú	AdamW8bitc                ó„   <€ V'       d   \        R4      hV^ 8w  d   \        R4      h\        SV `	  RVVVVV^VV	V
R7
       R# )a  
8-bit AdamW optimizer.

Arguments:
    params (`torch.Tensor`):
        The input parameters to optimize.
    lr (`float`, defaults to 1e-3):
        The learning rate.
    betas (`tuple(float, float)`, defaults to (0.9, 0.999)):
        The beta values are the decay rates of the first and second-order moment of the optimizer.
    eps (`float`, defaults to 1e-8):
        The epsilon value prevents division by zero in the optimizer.
    weight_decay (`float`, defaults to 1e-2):
        The weight decay value for the optimizer.
    amsgrad (`bool`, defaults to `False`):
        Whether to use the [AMSGrad](https://hf.co/papers/1904.09237) variant of Adam that uses the maximum of past squared gradients instead.
        Note: This parameter is not supported in AdamW8bit and must be False.
    optim_bits (`int`, defaults to 32):
        The number of bits of the optimizer state.
        Note: This parameter is not used in AdamW8bit 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.
    is_paged (`bool`, defaults to `False`):
        Whether the optimizer is a paged optimizer or not.
z'AdamW8bit does not support amsgrad=TruezGAdamW8bit only supports optim_bits=32 (default value for compatibility)r   r   N©Ú
ValueErrorr   r   r   s   &&&&&&&&&&&€r   r   ÚAdamW8bit.__init__?   s[   ø€ ÷R ÜÐFÓGÐGà˜Ôô ÐfÓgÐgä‰ÑØØØØØØØØØØð 	ö 	
r   r   r   r$   r,   s   @@r   r0   r0   >   s   ù‡ € ÷<
÷ <
r   r0   c                   ó6   a a€ ] tR t^~t oRV 3R lltRtVtV ;t# )Ú
AdamW32bitc                ó:   <€ \         SV `  RVVVVV^ VV	V
R7
       R# )am  
32-bit AdamW optimizer.

Arguments:
    params (`torch.Tensor`):
        The input parameters to optimize.
    lr (`float`, defaults to 1e-3):
        The learning rate.
    betas (`tuple(float, float)`, defaults to (0.9, 0.999)):
        The beta values are the decay rates of the first and second-order moment of the optimizer.
    eps (`float`, defaults to 1e-8):
        The epsilon value prevents division by zero in the optimizer.
    weight_decay (`float`, defaults to 1e-2):
        The weight decay value for the optimizer.
    amsgrad (`bool`, defaults to `False`):
        Whether to use the [AMSGrad](https://hf.co/papers/1904.09237) variant of Adam that uses the maximum of past squared gradients instead.
    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.
    is_paged (`bool`, defaults to `False`):
        Whether the optimizer is a paged optimizer or not.
r   r   Nr
   r   s   &&&&&&&&&&&€r   r   ÚAdamW32bit.__init__   s6   ø€ ôL 	‰ÑØØØØØØØØØØð 	ö 	
r   r   r   r$   r,   s   @@r   r6   r6   ~   r.   r   r6   c                   ó6   a a€ ] tR t^³t oRV 3R lltRtVtV ;t# )Ú
PagedAdamWc
                ó:   <€ \         S
V `  RVVVVVVVV	RR7
       R# )a  
Paged AdamW optimizer.

Arguments:
    params (`torch.Tensor`):
        The input parameters to optimize.
    lr (`float`, defaults to 1e-3):
        The learning rate.
    betas (`tuple(float, float)`, defaults to (0.9, 0.999)):
        The beta values are the decay rates of the first and second-order moment of the optimizer.
    eps (`float`, defaults to 1e-8):
        The epsilon value prevents division by zero in the optimizer.
    weight_decay (`float`, defaults to 1e-2):
        The weight decay value for the optimizer.
    amsgrad (`bool`, defaults to `False`):
        Whether to use the [AMSGrad](https://hf.co/papers/1904.09237) variant of Adam that uses the maximum of past squared gradients instead.
    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   Tr   Nr
   ©r   r   r   r   r   r   r   r   r   r   r   s   &&&&&&&&&&€r   r   ÚPagedAdamW.__init__´   s6   ø€ ôF 	‰ÑØØØØØØØØØØð 	ö 	
r   r   ©r   r   r    r!   Fr"   Nr#   r$   r,   s   @@r   r:   r:   ³   ó   ù‡ € ÷.
÷ .
r   r:   c                   ó6   a a€ ] tR t^åt oRV 3R lltRtVtV ;t# )ÚPagedAdamW8bitc
                ó„   <€ V'       d   \        R4      hV^ 8w  d   \        R4      h\        S
V `	  RVVVVV^VV	RR7
       R# )a¿  
Paged 8-bit AdamW optimizer.

Arguments:
    params (`torch.Tensor`):
        The input parameters to optimize.
    lr (`float`, defaults to 1e-3):
        The learning rate.
    betas (`tuple(float, float)`, defaults to (0.9, 0.999)):
        The beta values are the decay rates of the first and second-order moment of the optimizer.
    eps (`float`, defaults to 1e-8):
        The epsilon value prevents division by zero in the optimizer.
    weight_decay (`float`, defaults to 1e-2):
        The weight decay value for the optimizer.
    amsgrad (`bool`, defaults to `False`):
        Whether to use the [AMSGrad](https://hf.co/papers/1904.09237) variant of Adam that uses the maximum of past squared gradients instead.
        Note: This parameter is not supported in PagedAdamW8bit and must be False.
    optim_bits (`int`, defaults to 32):
        The number of bits of the optimizer state.
        Note: This parameter is not used in PagedAdamW8bit 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.
z,PagedAdamW8bit does not support amsgrad=TruezLPagedAdamW8bit only supports optim_bits=32 (default value for compatibility)r   Tr   Nr2   r<   s   &&&&&&&&&&€r   r   ÚPagedAdamW8bit.__init__æ   s[   ø€ ÷L ÜÐKÓLÐLà˜Ôô ÐkÓlÐlä‰ÑØØØØØØØØØØð 	ö 	
r   r   r>   r$   r,   s   @@r   rA   rA   å   s   ù‡ € ÷9
÷ 9
r   rA   c                   ó6   a a€ ] tR tRt oRV 3R lltRtVtV ;t# )ÚPagedAdamW32biti"  c
                ó:   <€ \         S
V `  RVVVVV^ VV	RR7
       R# )a  
Paged 32-bit AdamW optimizer.

Arguments:
    params (`torch.Tensor`):
        The input parameters to optimize.
    lr (`float`, defaults to 1e-3):
        The learning rate.
    betas (`tuple(float, float)`, defaults to (0.9, 0.999)):
        The beta values are the decay rates of the first and second-order moment of the optimizer.
    eps (`float`, defaults to 1e-8):
        The epsilon value prevents division by zero in the optimizer.
    weight_decay (`float`, defaults to 1e-2):
        The weight decay value for the optimizer.
    amsgrad (`bool`, defaults to `False`):
        Whether to use the [AMSGrad](https://hf.co/papers/1904.09237) variant of Adam that uses the maximum of past squared gradients instead.
    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   Tr   Nr
   r<   s   &&&&&&&&&&€r   r   ÚPagedAdamW32bit.__init__#  s6   ø€ ôF 	‰ÑØØØØØØØØØØð 	ö 	
r   r   r>   r$   r,   s   @@r   rE   rE   "  r?   r   rE   N)Úbitsandbytes.optim.optimizerr   r   r0   r6   r:   rA   rE   r   r   r   Ú<module>rI      sW   ðõ 9ô2
ˆOô 2
ôj=
�ô =
ô@2
�ô 2
ôj/
�ô /
ôd:
�_ô :
ôz/
�oö /
r   