
    Z j<                     d    S r SSKJr  SSKJr  SSKJr  \" SS9\ " S S	\5      5       5       rS	/rg
)zPvt model configuration    )strict   )PreTrainedConfig)auto_docstringzXrenya/pvt-tiny-224)
checkpointc                      \ rS rSr% SrSrSr\\\   -  \	\\4   -  \
S'   Sr\\
S'   Sr\\
S	'   S
r\\   \	\S4   -  \
S'   Sr\\   \	\S4   -  \
S'   Sr\\   \	\S4   -  \
S'   Sr\\   \	\S4   -  \
S'   Sr\\   \	\S4   -  \
S'   Sr\\   \	\S4   -  \
S'   Sr\\   \	\S4   -  \
S'   Sr\\
S'   Sr\\-  \
S'   Sr\\-  \
S'   Sr\\
S'   Sr\\-  \
S'   S r\\
S!'   S"r\\
S#'   S$r\\
S%'   S&rg')(	PvtConfig   ak  
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.
sequence_reduction_ratios (`list[int]`, *optional*, defaults to `[8, 4, 2, 1]`):
    Sequence reduction ratios in each encoder block.
patch_sizes (`list[int]`, *optional*, defaults to `[4, 2, 2, 2]`):
    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 `[8, 8, 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.
num_labels ('int', *optional*, defaults to 1000):
    The number of classes.

Example:

```python
>>> from transformers import PvtModel, PvtConfig

>>> # Initializing a PVT Xrenya/pvt-tiny-224 style configuration
>>> configuration = PvtConfig()

>>> # Initializing a model from the Xrenya/pvt-tiny-224 style configuration
>>> model = PvtModel(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config
```pvt   
image_sizer   num_channels   num_encoder_blocks)   r   r   r   .depths)   r   r      sequence_reduction_ratios)@      i@  i   hidden_sizes)r   r   r   r   patch_sizes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_rangedrop_path_rategư>layer_norm_epsTqkv_biasi  
num_labels N) __name__
__module____qualname____firstlineno____doc__
model_typer   intlisttuple__annotations__r   r   r   r   r   r   r   r   r   r   strr    floatr!   r"   r#   r$   r%   boolr&   __static_attributes__r'       z/root/GenerationalWealth/GenerationalWealth/venv/lib/python3.13/site-packages/transformers/models/pvt/configuration_pvt.pyr	   r	      sa    D J47Jd3i%S/17L#*6FDIc3h'6=ItCy5c?:I0CL$s)eCHo-C/;KcU38_,;+7GT#YsCx(77CcU38_4C.:JS	E#s(O+:J'**03 %#+3#u#"%NECK% NE HdJr6   r	   N)	r,   huggingface_hub.dataclassesr   configuration_utilsr   utilsr   r	   __all__r'   r6   r7   <module>r<      sG      . 3 # 016  6  26r -r6   