
    Z jV                     r    S r SSKJ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BiT model configuration    )strict   )BackboneConfigMixin)PreTrainedConfig)auto_docstringzgoogle/bit-50)
checkpointc                   \  ^  \ rS rSr% SrSrSS/r/ SQrSr\	\
S'   S	r\	\
S
'   Sr\\	   \\	S4   -  \
S'   Sr\\	   \\	S4   -  \
S'   Sr\\
S'   Sr\\
S'   Sr\S-  \
S'   Sr\	\
S'   Sr\\	-  \
S'   Sr\\
S'   Sr\	\
S'   Sr\	\
S'   Sr\\   S-  \
S'   Sr\\	   S-  \
S'   U 4S  jrS! rS"rU =r $ )#	BitConfig   a  
layer_type (`str`, *optional*, defaults to `"preactivation"`):
    The layer to use, it can be either `"preactivation"` or `"bottleneck"`.
global_padding (`str`, *optional*):
    Padding strategy to use for the convolutional layers. Can be either `"valid"`, `"same"`, or `None`.
num_groups (`int`, *optional*, defaults to 32):
    Number of groups used for the `BitGroupNormActivation` layers.
embedding_dynamic_padding (`bool`, *optional*, defaults to `False`):
    Whether or not to make use of dynamic padding for the embedding layer.
width_factor (`int`, *optional*, defaults to 1):
    The width factor for the model.

Example:
```python
>>> from transformers import BitConfig, BitModel

>>> # Initializing a BiT bit-50 style configuration
>>> configuration = BitConfig()

>>> # Initializing a model (with random weights) from the bit-50 style configuration
>>> model = BitModel(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config
```
bitpreactivation
bottleneck)NSAMEVALIDr   num_channels@   embedding_size)   i   i   i   .hidden_sizes)r         r   depths
layer_typerelu
hidden_actNglobal_padding    
num_groupsg        drop_path_rateFembedding_dynamic_paddingoutput_stride   width_factor_out_features_out_indicesc                   > [        U R                  5      U l        [        U R                  5      U l        U R                  b  U R                  R	                  5       U l        S/[        S[        U R                  5      S-   5       Vs/ s H  nSU 3PM
     sn-   U l        U R                  UR                  SS 5      UR                  SS 5      S9  [        TU ],  " S0 UD6  g s  snf )Nstemr"   stageout_indicesout_features)r)   r*    )listr   r   r   upperrangelenstage_names"set_output_features_output_indicespopsuper__post_init__)selfkwargsidx	__class__s      z/root/GenerationalWealth/GenerationalWealth/venv/lib/python3.13/site-packages/transformers/models/bit/configuration_bit.pyr4   BitConfig.__post_init__H   s     !2!234;;'*"&"5"5";";"=D"8aT[[IY\]I]@^&_@^se}@^&__//

=$7fjjQ_aeFf 	0 	
 	'' '`s   C"c                    U R                   U R                  ;  a4  [        SU R                    SSR                  U R                  5       35      eU R                  U R
                  ;  a  [        SU R                   S35      eg)zOPart of `@strict`-powered validation. Validates the architecture of the config.zlayer_type=z is not one of ,zPadding strategy z not supportedN)r   layer_types
ValueErrorjoinr   supported_padding)r5   s    r9   validate_architectureBitConfig.validate_architectureV   sw    ??$"2"22{4??*;?388TXTdTdKeJfghhd&<&<<01D1D0E^TUU =    )r   r   r   r0   )!__name__
__module____qualname____firstlineno____doc__
model_typer=   r@   r   int__annotations__r   r   r,   tupler   r   strr   r   r   r   floatr    boolr!   r#   r$   r%   r4   rA   __static_attributes____classcell__)r8   s   @r9   r
   r
      s    6 J"L1K/L#NC0FL$s)eCHo-F*6FDIc3h'6%J%J!%NC$J%J"%NECK%&+t+M3L#&*M49t#*%)L$s)d")(V VrC   r
   N)rH   huggingface_hub.dataclassesr   backbone_utilsr   configuration_utilsr   utilsr   r
   __all__r+   rC   r9   <module>rW      sR     . 1 3 # ?+CV#%5 CV  ,CVL -rC   