o
    h		                     @   s@   d dl mZ G dd deZG dd deZG dd deZdS )	    )Optimizer2Statec                       s8   e Zd Z												
		d fdd	Z  ZS )LAMBMbP?Tg?g+?:0yE>r   F    N   d         ?c                    s(   t  jd||||||	|
|||dd d S )Nlambr
   	max_unormsuper__init__)selfparamslrbias_correctionbetasepsweight_decayamsgradadam_w_mode
optim_bitsargsmin_8bit_sizepercentile_clipping
block_wiser   	__class__ M/var/www/html/ai/venv/lib/python3.10/site-packages/bitsandbytes/optim/lamb.pyr   	   s   
zLAMB.__init__)r   Tr   r   r   FTr   Nr   r	   Fr
   __name__
__module____qualname__r   __classcell__r!   r!   r   r"   r      s    r   c                       6   e Zd Z													
d fdd	Z  ZS )LAMB8bitr   Tr   r   r   FNr   r	   r
   c                    (   t  jd|||||d|	|
||dd d S )Nr      r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r!   r"   r   +      
zLAMB8bit.__init__r   Tr   r   r   FTNr   r	   Fr
   r#   r!   r!   r   r"   r)   *       r)   c                       r(   )	LAMB32bitr   Tr   r   r   FNr   r	   r
   c                    r*   )Nr   r   r
   r   r   r,   r   r!   r"   r   L   r-   zLAMB32bit.__init__r.   r#   r!   r!   r   r"   r0   K   r/   r0   N)bitsandbytes.optim.optimizerr   r   r)   r0   r!   r!   r!   r"   <module>   s   "!