o
    Ni                     @   s@   d dl mZmZ d dlmZ d dlmZ eG dd deZdS )    )	dataclassfield)PromptLearningConfig)PeftTypec                       sR   e Zd ZU dZedddidZeed< edddidZe	ed	<  fd
dZ
  ZS )PrefixTuningConfiga  
    This is the configuration class to store the configuration of a [`PrefixEncoder`].

    Args:
        encoder_hidden_size (`int`): The hidden size of the prompt encoder.
        prefix_projection (`bool`): Whether to project the prefix embeddings.
    NhelpzThe hidden size of the encoder)defaultmetadataencoder_hidden_sizeFz$Whether to project the prefix tokensprefix_projectionc                    s   t    tj| _d S )N)super__post_init__r   PREFIX_TUNING	peft_type)self	__class__ T/home/ubuntu/.local/lib/python3.10/site-packages/peft/tuners/prefix_tuning/config.pyr   (   s   
z PrefixTuningConfig.__post_init__)__name__
__module____qualname____doc__r   r
   int__annotations__r   boolr   __classcell__r   r   r   r   r      s   
 r   N)dataclassesr   r   peft.configr   
peft.utilsr   r   r   r   r   r   <module>   s
   