
    i{                     j    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y
)zGLPN model configuration    )strict   )PreTrainedConfig)auto_docstringzvinvino02/glpn-kitti)
checkpointc                      e Zd ZU dZdZ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   eedf   z  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   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ez  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&<   y')(
GLPNConfiga  
    num_encoder_blocks (`int`, *optional*, defaults to 4):
        The number of encoder blocks (i.e. stages in the Mix Transformer encoder).
    depths (`list[int]`, *optional*, defaults to `[2, 2, 2, 2]`):
        The number of layers in each encoder block.
    sr_ratios (`list[int]`, *optional*, defaults to `[8, 4, 2, 1]`):
        Sequence reduction ratios in each encoder block.
    patch_sizes (`list[int]`, *optional*, defaults to `[7, 3, 3, 3]`):
        Patch size before each encoder block.
    strides (`list[int]`, *optional*, defaults to `[4, 2, 2, 2]`):
        Stride before each encoder block.
    num_attention_heads (`list[int]`, *optional*, defaults to `[1, 2, 5, 8]`):
        Number of attention heads for each attention layer in each block of the Transformer encoder.
    mlp_ratios (`list[int]`, *optional*, defaults to `[4, 4, 4, 4]`):
        Ratio of the size of the hidden layer compared to the size of the input layer of the Mix FFNs in the
        encoder blocks.
    decoder_hidden_size (`int`, *optional*, defaults to 64):
        The dimension of the decoder.
    max_depth (`int`, *optional*, defaults to 10):
        The maximum depth of the decoder.
    head_in_index (`int`, *optional*, defaults to -1):
        The index of the features to use in the head.

    Example:

    ```python
    >>> from transformers import GLPNModel, GLPNConfig

    >>> # Initializing a GLPN vinvino02/glpn-kitti style configuration
    >>> configuration = GLPNConfig()

    >>> # Initializing a model from the vinvino02/glpn-kitti style configuration
    >>> model = GLPNModel(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config
    ```glpnr   num_channels   num_encoder_blocks)   r   r   r   .depths)   r   r      	sr_ratios)    @         hidden_sizes)   r   r   r   patch_sizes)r   r   r   r   strides)r   r      r   num_attention_heads)r   r   r   r   
mlp_ratiosgelu
hidden_actg        hidden_dropout_probattention_probs_dropout_probg{Gz?initializer_rangeg?drop_path_rategư>layer_norm_epsr   decoder_hidden_size
   	max_depthhead_in_indexN)__name__
__module____qualname____doc__
model_typer   int__annotations__r   r   listtupler   r   r   r   r   r   r   strr    floatr!   r"   r#   r$   r%   r'   r)        |/var/www/vps2.regionflexible.com/Desarrollo/venv/lib/python3.12/site-packages/transformers/models/glpn/configuration_glpn.pyr	   r	      sL   $L JL#*6FDIc3h'6-9ItCy5c?*90BL$s)eCHo-B/;KcU38_,;+7GT#YsCx(77CcU38_4C.:JS	E#s(O+:J'**03 %#+3#u#"%NECK% NE !!IsM3r6   r	   N)	r-   huggingface_hub.dataclassesr   configuration_utilsr   utilsr   r	   __all__r5   r6   r7   <module>r<      sG     . 3 # 12:! :  3:z .r6   