§
    ‚Štjj  ã                   ó„   — d Z ddlmZ ddlmZ ddlmZ  ed¬¦  «        e G d„ d	e¦  «        ¦   «         ¦   «         Zd	gZd
S )zPerceiver model configurationé    )Ústricté   )ÚPreTrainedConfig)Úauto_docstringzdeepmind/language-perceiver)Ú
checkpointc                   ó  — e Zd ZU 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d<   dZed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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e         z  eeef         z  ed&<   d'Z ee         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d0<   d1Z%eed2<   d3Z&eed4<   dS )5ÚPerceiverConfiga�  
    num_latents (`int`, *optional*, defaults to 256):
        The number of latents.
    d_latents (`int`, *optional*, defaults to 1280):
        Dimension of the latent embeddings.
    num_blocks (`int`, *optional*, defaults to 1):
        Number of blocks in the Transformer encoder.
    num_self_attends_per_block (`int`, *optional*, defaults to 26):
        The number of self-attention layers per block.
    num_self_attention_heads (`int`, *optional*, defaults to 8):
        Number of attention heads for each self-attention layer in the Transformer encoder.
    num_cross_attention_heads (`int`, *optional*, defaults to 8):
        Number of attention heads for each cross-attention layer in the Transformer encoder.
    qk_channels (`int`, *optional*):
        Dimension to project the queries + keys before applying attention in the cross-attention and self-attention
        layers of the encoder. Will default to preserving the dimension of the queries if not specified.
    v_channels (`int`, *optional*):
        Dimension to project the values before applying attention in the cross-attention and self-attention layers
        of the encoder. Will default to preserving the dimension of the queries if not specified.
    cross_attention_shape_for_attention (`str`, *optional*, defaults to `"kv"`):
        Dimension to use when downsampling the queries and keys in the cross-attention layer of the encoder.
    self_attention_widening_factor (`int`, *optional*, defaults to 1):
        Dimension of the feed-forward layer in the cross-attention layer of the Transformer encoder.
    cross_attention_widening_factor (`int`, *optional*, defaults to 1):
        Dimension of the feed-forward layer in the self-attention layers of the Transformer encoder.
    use_query_residual (`float`, *optional*, defaults to `True`):
        Whether to add a query residual in the cross-attention layer of the encoder.
    image_size (`int`, *optional*, defaults to 56):
        Size of the images after preprocessing, for [`PerceiverForImageClassificationLearned`].
    train_size (`list[int]`, *optional*, defaults to `[368, 496]`):
        Training size of the images for the optical flow model.
    num_frames (`int`, *optional*, defaults to 16):
        Number of video frames used for the multimodal autoencoding model.
    audio_samples_per_frame (`int`, *optional*, defaults to 1920):
        Number of audio samples per frame for the multimodal autoencoding model.
    samples_per_patch (`int`, *optional*, defaults to 16):
        Number of audio samples per patch when preprocessing the audio for the multimodal autoencoding model.
    output_shape (`list[int]`, *optional*, defaults to `[1, 16, 224, 224]`):
        Shape of the output (batch_size, num_frames, height, width) for the video decoder queries of the multimodal
        autoencoding model. This excludes the channel dimension.
    output_num_channels (`int`, *optional*, defaults to 512):
        Number of output channels for each modalitiy decoder.

    Example:

    ```python
    >>> from transformers import PerceiverModel, PerceiverConfig

    >>> # Initializing a Perceiver deepmind/language-perceiver style configuration
    >>> configuration = PerceiverConfig()

    >>> # Initializing a model from the deepmind/language-perceiver style configuration
    >>> model = PerceiverModel(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config
    ```Ú	perceiveré   Únum_latentsi   Ú	d_latentsi   Úd_modelé   Ú
num_blocksé   Únum_self_attends_per_blocké   Únum_self_attention_headsÚnum_cross_attention_headsNÚqk_channelsÚ
v_channelsÚkvÚ#cross_attention_shape_for_attentionÚself_attention_widening_factorÚcross_attention_widening_factorÚgeluÚ
hidden_actgš™™™™™¹?Úattention_probs_dropout_probg{®Gáz”?Úinitializer_rangegê-�™—q=Úlayer_norm_epsTÚuse_query_residuali  Ú
vocab_sizei   Úmax_position_embeddingsé8   Ú
image_size)ip  ið  .Ú
train_sizeé   Ú
num_framesi€  Úaudio_samples_per_frameÚsamples_per_patch)r   r'   éà   r+   Úoutput_shapei   Úoutput_num_channelsi   Ú_label_trainable_num_channels)'Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú
model_typer   ÚintÚ__annotations__r   r   r   r   r   r   r   r   r   Ústrr   r   r   r   Úfloatr   r    r!   Úboolr"   r#   r%   ÚlistÚtupler&   r(   r)   r*   r,   r-   r.   © ó    ús/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/transformers/models/perceiver/configuration_perceiver.pyr	   r	      s%  € € € € € € ð8ð 8ðt €Jà€K�ÐÐÑØ€IˆsÐÐÑØ€GˆSÐÐÑØ€J�ÐÐÑØ&(Ð Ð(Ð(Ñ(Ø$%Ð˜cÐ%Ð%Ñ%Ø%&Ð˜sÐ&Ð&Ñ&Ø"€K��t‘Ð"Ð"Ñ"Ø!€J��d‘
Ð!Ð!Ñ!Ø/3Ð'¨Ð3Ð3Ñ3Ø*+Ð" CÐ+Ð+Ñ+Ø+,Ð# SÐ,Ð,Ñ,Ø€J�ÐÐÑØ03Ð  %¨#¡+Ð3Ð3Ñ3Ø#Ð�uÐ#Ð#Ñ#Ø!€N�EÐ!Ð!Ñ!Ø#Ð˜Ð#Ð#Ñ#Ø€J�ÐÐÑØ#'Ð˜SÐ'Ð'Ñ'Ø46€J��d˜3”i‘ %¨¨S¨¤/Ñ1Ð6Ð6Ñ6Ø.8€J��S”	˜E # s (œOÑ+Ð8Ð8Ñ8Ø€J�ÐÐÑØ#'Ð˜SÐ'Ð'Ñ'ØÐ�sÐÐÑØ0A€L�$�s”)˜e C¨ HœoÑ-ÐAÐAÑAØ"Ð˜Ð"Ð"Ñ"Ø)-Ð! 3Ð-Ð-Ñ-Ð-Ð-r<   r	   N)	r2   Úhuggingface_hub.dataclassesr   Úconfiguration_utilsr   Úutilsr   r	   Ú__all__r;   r<   r=   ú<module>rB      sª   ðð $Ð #à .Ð .Ð .Ð .Ð .Ð .à 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø #Ð #Ð #Ð #Ð #Ð #ð €Ð8Ð9Ñ9Ô9ØðW.ð W.ð W.ð W.ð W.Ð&ñ W.ô W.ñ „ñ :Ô9ðW.ðt Ð
€€€r<   