§
    ‚Štj4  ã                   óJ  — d Z ddlmZ ddlmZ ddlmZmZ  ej        e	¦  «        Z
 ed¬¦  «        e G d„ d	e¦  «        ¦   «         ¦   «         Z ed¬¦  «        e G d
„ de¦  «        ¦   «         ¦   «         Z ed¬¦  «        e G d„ de¦  «        ¦   «         ¦   «         Zg d¢ZdS )zCLAP model configurationé    )Ústricté   )ÚPreTrainedConfig)Úauto_docstringÚloggingzlaion/clap-htsat-fused)Ú
checkpointc                   ó:  — e Zd ZU dZdZdZdZeed<   dZ	eed<   dZ
eed	<   dZeed
<   dZeed<   dZeed<   dZeez  ed<   dZeez  ed<   dZeed<   dZeed<   dZeed<   dZeed<   dZeed<   dZedz  ed<   dZedz  ed<   d Zeee         z  dz  ed!<   d"Zeed#<   dS )$ÚClapTextConfiga‹  
    Examples:

    ```python
    >>> from transformers import ClapTextConfig, ClapTextModel

    >>> # Initializing a CLAP text configuration
    >>> configuration = ClapTextConfig()

    >>> # Initializing a model (with random weights) from the configuration
    >>> model = ClapTextModel(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config
    ```Úclap_text_modelÚtext_configiYÄ  Ú
vocab_sizeé   Úhidden_sizeé   Únum_hidden_layersÚnum_attention_headsi   Úintermediate_sizeÚgeluÚ
hidden_actçš™™™™™¹?Úhidden_dropout_probÚattention_probs_dropout_probi  Úmax_position_embeddingsé   Útype_vocab_sizeç      ð?Úinitializer_factorgê-�™—q=Úlayer_norm_epsé   Úprojection_dimNÚpad_token_idr   Úbos_token_idé   Úeos_token_idÚreluÚprojection_hidden_act)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú
model_typeÚbase_config_keyr   ÚintÚ__annotations__r   r   r   r   r   Ústrr   Úfloatr   r   r   r   r   r    r!   r"   r$   Úlistr&   © ó    úi/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/transformers/models/clap/configuration_clap.pyr
   r
      s]  € € € € € € ðð ð  #€JØ#€Oà€J�ÐÐÑØ€K�ÐÐÑØÐ�sÐÐÑØ!Ð˜Ð!Ð!Ñ!Ø!Ð�sÐ!Ð!Ñ!Ø€J�ÐÐÑØ'*Ð˜ ™Ð*Ð*Ñ*Ø03Ð  %¨#¡+Ð3Ð3Ñ3Ø#&Ð˜SÐ&Ð&Ñ&Ø€O�SÐÐÑØ #Ð˜Ð#Ð#Ñ#Ø!€N�EÐ!Ð!Ñ!Ø€N�CÐÐÑØ €L�#˜‘*Ð Ð Ñ Ø €L�#˜‘*Ð Ð Ñ Ø+,€L�#˜˜Sœ	‘/ DÑ(Ð,Ð,Ñ,Ø!'Ð˜3Ð'Ð'Ñ'Ð'Ð'r3   r
   c                   óB  — e Zd ZU dZdZdZdZeed<   dZ	eed<   dZ
eed	<   d
Zeed<   dZeee         z  eeef         z  ed<   dZeee         z  eedf         z  ed<   dZeed<   dZeed<   dZeed<   dZee         eedf         z  ed<   dZee         eedf         z  ed<   dZeed<   dZeez  ed<   dZedz  ed <   d!Zeed"<   d#Zeed$<   d%Zeed&<   d#Zeed'<   d(Zeez  ed)<   d(Z eez  ed*<   d#Z!eed+<   d,Z"eed-<   dZ#eed.<   dZ$eed/<   d0Z%eed1<   d2Z&eed3<   d4Z'eed5<   dS )6ÚClapAudioConfigaê  
    window_size (`int`, *optional*, defaults to 8):
        Image size of the spectrogram
    spec_size (`int`, *optional*, defaults to 256):
        Desired input size of the spectrogram that the model supports. It can be different from the output of the
        `ClapFeatureExtractor`, in which case the input features will be resized. Corresponds to the `image_size`
        of the audio models.
    patch_stride (`list`, *optional*, defaults to `[4, 4]`):
        Patch stride for the audio spectrogram
    num_classes (`int`, *optional*, defaults to 527):
        Number of classes used for the head training
    enable_fusion (`bool`, *optional*, defaults to `False`):
        Whether or not to enable patch fusion. This is the main contribution of the authors, and should give the
        best results.
    fusion_type (`[type]`, *optional*):
        Fusion type used for the patch fusion.
    patch_embed_input_channels (`int`, *optional*, defaults to 1):
        Number of channels used for the input spectrogram
    flatten_patch_embeds (`bool`, *optional*, defaults to `True`):
        Whether or not to flatten the patch embeddings
    patch_embeds_hidden_size (`int`, *optional*, defaults to 96):
        Hidden size of the patch embeddings. It is used as the number of output channels.
    enable_patch_layer_norm (`bool`, *optional*, defaults to `True`):
        Whether or not to enable layer normalization for the patch embeddings
    aff_block_r (`int`, *optional*, defaults to 4):
        downsize_ratio used in the AudioFF block

    Example:

    ```python
    >>> from transformers import ClapAudioConfig, ClapAudioModel

    >>> # Initializing a ClapAudioConfig with laion/clap-htsat-fused style configuration
    >>> configuration = ClapAudioConfig()

    >>> # Initializing a ClapAudioModel (with random weights) from the laion/clap-htsat-fused style configuration
    >>> model = ClapAudioModel(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config
    ```Úclap_audio_modelÚaudio_configé   Úwindow_sizeé@   Únum_mel_binsé   Ú	spec_sizer   r   é   Ú
patch_size)r?   r?   .Úpatch_stridei  Únum_classesr   r   r   r    )r#   r#   é   r#   Údepths)r?   r9   é   é    r   FÚenable_fusionr   r   NÚfusion_typer   Úpatch_embed_input_channelsTÚflatten_patch_embedsé`   Úpatch_embeds_hidden_sizeÚenable_patch_layer_normg        Údrop_path_rater   Úqkv_biasg      @Ú	mlp_ratioÚaff_block_rr   r%   r&   gñhãˆµøä>r   r   r   )(r'   r(   r)   r*   r+   r,   r:   r-   r.   r<   r>   r   r/   r@   r1   ÚtuplerA   rB   r   r    rD   r   rG   Úboolr   r0   rH   rI   rJ   rL   rM   rN   r   rO   rP   rQ   r   r&   r   r   r2   r3   r4   r6   r6   B   s?  € € € € € € ð(ð (ðT $€JØ$€Oà€K�ÐÐÑØ€L�#ÐÐÑØ€IˆsÐÐÑØ€J�ÐÐÑØ45€J��d˜3”i‘ %¨¨S¨¤/Ñ1Ð5Ð5Ñ5Ø6<€L�#˜˜Sœ	‘/ E¨#¨s¨(¤OÑ3Ð<Ð<Ñ<Ø€K�ÐÐÑØ€K�ÐÐÑØ€N�CÐÐÑØ*6€FˆD�ŒI˜˜c 3˜hœÑ'Ð6Ð6Ñ6Ø7EÐ˜˜cœ U¨3°¨8¤_Ñ4ÐEÐEÑEØ€M�4ÐÐÑØ'*Ð˜ ™Ð*Ð*Ñ*Ø"€K��t‘Ð"Ð"Ñ"Ø&'Ð Ð'Ð'Ñ'Ø!%Ð˜$Ð%Ð%Ñ%Ø$&Ð˜cÐ&Ð&Ñ&Ø$(Ð˜TÐ(Ð(Ñ(Ø"%€N�E˜C‘KÐ%Ð%Ñ%Ø03Ð  %¨#¡+Ð3Ð3Ñ3Ø€HˆdÐÐÑØ€IˆuÐÐÑØ€K�ÐÐÑØÐ�sÐÐÑØ!'Ð˜3Ð'Ð'Ñ'Ø €N�EÐ Ð Ñ Ø #Ð˜Ð#Ð#Ñ#Ð#Ð#r3   r6   c                   óž   ‡ — e Zd ZU dZdZeedœZdZe	e
z  dz  ed<   dZe	e
z  dz  ed<   dZeed<   d	Zeed
<   dZeed<   dZeed<   ˆ fd„Zˆ xZS )Ú
ClapConfiga.  
    Example:

    ```python
    >>> from transformers import ClapConfig, ClapModel

    >>> # Initializing a ClapConfig with laion-ai/base style configuration
    >>> configuration = ClapConfig()

    >>> # Initializing a ClapModel (with random weights) from the laion-ai/base style configuration
    >>> model = ClapModel(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config

    >>> # We can also initialize a ClapConfig from a ClapTextConfig and a ClapAudioConfig
    >>> from transformers import ClapTextConfig, ClapAudioConfig

    >>> # Initializing a ClapText and ClapAudioConfig configuration
    >>> config_text = ClapTextConfig()
    >>> config_audio = ClapAudioConfig()

    >>> config = ClapConfig(text_config=config_text, audio_config=config_audio)
    ```Úclap)r   r8   Nr   r8   g$I’$I’,@Úlogit_scale_init_valuer   r    r%   r&   r   r   c                 óÎ  •— | j         €.t          ¦   «         | _         t                               d¦  «         n0t	          | j         t
          ¦  «        rt          di | j         ¤Ž| _         | j        €.t          ¦   «         | _        t                               d¦  «         n0t	          | j        t
          ¦  «        rt          di | j        ¤Ž| _        | j        | j         _        | j        | j        _        | j	        | j         _	        | j	        | j        _	        | j         j
        | _
        | j         j        t          | j        j        ¦  «        z   | _         t          ¦   «         j        di |¤Ž d S )NzO`text_config` is `None`. initializing the `ClapTextConfig` with default values.zQ`audio_config` is `None`. initializing the `ClapAudioConfig` with default values.r2   )r   r
   ÚloggerÚinfoÚ
isinstanceÚdictr8   r6   r    r&   r   r   ÚlenrD   ÚsuperÚ__post_init__)ÚselfÚkwargsÚ	__class__s     €r4   r_   zClapConfig.__post_init__µ   sE  ø€ ØÔÐ#Ý-Ñ/Ô/ˆDÔÝ�KŠKÐiÑjÔjÐjÐjÝ˜Ô(­$Ñ/Ô/ð 	BÝ-ÐAÐA°Ô0@ÐAÐAˆDÔàÔÐ$Ý /Ñ 1Ô 1ˆDÔÝ�KŠKÐkÑlÔlÐlÐlÝ˜Ô)­4Ñ0Ô0ð 	EÝ /Ð DÐ D°$Ô2CÐ DÐ DˆDÔà*.Ô*=ˆÔÔ'Ø+/Ô+>ˆÔÔ(à15Ô1KˆÔÔ.Ø26Ô2LˆÔÔ/ØÔ+Ô7ˆÔØ!%Ô!1Ô!CÅcÈ$ÔJ[ÔJbÑFcÔFcÑ!cˆÔØ�‰ŒÔÐ'Ð' Ð'Ð'Ð'Ð'Ð'r3   )r'   r(   r)   r*   r+   r
   r6   Úsub_configsr   r\   r   r.   r8   rW   r0   r    r-   r&   r/   r   r_   Ú__classcell__)rb   s   @r4   rU   rU   �   sÑ   ø€ € € € € € ðð ð2 €JØ"0À/ÐRÐR€Kà26€K�Ð(Ñ(¨4Ñ/Ð6Ð6Ñ6Ø37€L�$Ð)Ñ)¨DÑ0Ð7Ð7Ñ7Ø$,Ð˜EÐ,Ð,Ñ,Ø€N�CÐÐÑØ!'Ð˜3Ð'Ð'Ñ'Ø #Ð˜Ð#Ð#Ñ#ð(ð (ð (ð (ð (ð (ð (ð (ð (r3   rU   )r6   rU   r
   N)r*   Úhuggingface_hub.dataclassesr   Úconfiguration_utilsr   Úutilsr   r   Ú
get_loggerr'   rY   r
   r6   rU   Ú__all__r2   r3   r4   ú<module>rj      si  ðð Ð à .Ð .Ð .Ð .Ð .Ð .à 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,ð 
ˆÔ	˜HÑ	%Ô	%€ð €Ð3Ð4Ñ4Ô4Øð$(ð $(ð $(ð $(ð $(Ð%ñ $(ô $(ñ „ñ 5Ô4ð$(ðN €Ð3Ð4Ñ4Ô4ØðH$ð H$ð H$ð H$ð H$Ð&ñ H$ô H$ñ „ñ 5Ô4ðH$ðV €Ð3Ð4Ñ4Ô4Øð8(ð 8(ð 8(ð 8(ð 8(Ð!ñ 8(ô 8(ñ „ñ 5Ô4ð8(ðv >Ð
=Ð
=€€€r3   