o
    Ni                     @   sz   d dl mZmZmZ d dlmZ ddlmZ ddlm	Z	 ddl
mZmZmZ ddlmZ g dZed	eed
 dd ZdS )    )is_bnb_4bit_availableis_bnb_availableis_eetq_available)register_peft_method   )	OFTConfig)GPTQOFTLinear)Conv2dLinearOFTLayer)OFTModel)r	   r   r
   r   r   r   oft)name
config_cls	model_clsc                 C   sn   | dkrt  rddlm} |S | dkrt rddlm} |S | dkr-t r-ddlm} |S tdt	 d	|  )
NLinear8bitLtr   )r   
Linear4bit)r   EetqOFTLinear)r   zmodule z has no attribute )
r   bnbr   r   r   r   eetqr   AttributeError__name__)r   r   r   r    r   L/home/ubuntu/.local/lib/python3.10/site-packages/peft/tuners/oft/__init__.py__getattr__$   s   r   N)peft.import_utilsr   r   r   
peft.utilsr   configr   gptqr   layerr	   r
   r   modelr   __all__r   r   r   r   r   <module>   s   	