o
    h 	                     @   sp   d dl mZ G dd deZG dd deZG dd deZG dd	 d	eZG d
d deZG dd deZdS )    )Optimizer1Statec                       s   e Zd Zd fd
d	Z  ZS )Lion-C6?g?gGz?r       N   d   TFc                    s(   t  jd|||d||||||	|
d d S )Nlion        is_pagedsuper__init__)selfparamslrbetasweight_decay
optim_bitsargsmin_8bit_sizepercentile_clipping
block_wiser   	__class__ M/var/www/html/ai/venv/lib/python3.10/site-packages/bitsandbytes/optim/lion.pyr         (zLion.__init__)	r   r   r   r   Nr   r   TF__name__
__module____qualname__r   __classcell__r   r   r   r   r          r   c                          e Zd Zd fd	d
	Z  ZS )Lion8bitr   r   r   Nr   r   TFc
           
         (   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   zLion8bit.__init__r   r   r   Nr   r   TFr   r   r   r   r   r&      r$   r&   c                       r%   )	Lion32bitr   r   r   Nr   r   TFc
           
         r'   )Nr	   r
   r   r   r   r)   r   r   r   r      r   zLion32bit.__init__r*   r   r   r   r   r   r+      r$   r+   c                       r%   )	PagedLionr   r   r   r   Nr   r   Tc
           
         s(   t  jd|||d||||||	dd d S )Nr	   r
   Tr   r   )
r   r   r   r   r   r   r   r   r   r   r   r   r   r      r   zPagedLion.__init__)r   r   r   r   Nr   r   Tr   r   r   r   r   r,      r$   r,   c                          e Zd Zd
 fdd		Z  ZS )PagedLion8bitr   r   r   Nr   r   Tc	           	         (   t  jd|||d|d||||dd d S )Nr	   r
   r(   Tr   r   	r   r   r   r   r   r   r   r   r   r   r   r   r      r   zPagedLion8bit.__init__r   r   r   Nr   r   Tr   r   r   r   r   r.      r$   r.   c                       r-   )PagedLion32bitr   r   r   Nr   r   Tc	           	         r/   )Nr	   r
   r   Tr   r   r0   r   r   r   r      r   zPagedLion32bit.__init__r1   r   r   r   r   r   r2      r$   r2   N)bitsandbytes.optim.optimizerr   r   r&   r+   r,   r.   r2   r   r   r   r   <module>   s   