
    Z j                         S r SSKJr  SSKJr  SSKJrJr  \R                  " \	5      r
\" SS9\ " S S	\5      5       5       r\" SS9\ " S
 S\5      5       5       r\" SS9\ " S S\5      5       5       r/ SQrg)zBridgeTower model configuration    )strict   )PreTrainedConfig)auto_docstringloggingzBridgeTower/bridgetower-base)
checkpointc                       \ rS rSr% SrSrSrSr\\	S'   Sr
\\	S'   S	r\\	S
'   Sr\\\   -  \\\4   -  \	S'   Sr\\\   -  \\\4   -  \	S'   Sr\\-  \	S'   Sr\\	S'   Sr\\	S'   Sr\\	S'   Sr\\	S'   Srg)BridgeTowerVisionConfig   a[  
stop_gradient (`bool`, *optional*, defaults to `False`):
    Whether to stop gradient for training.
share_layernorm (`bool`, *optional*, defaults to `True`):
    Whether LayerNorm layers are shared.
remove_last_layer (`bool`, *optional*, defaults to `False`):
    Whether to remove the last layer from the vision encoder.

Example:

```python
>>> from transformers import BridgeTowerVisionConfig

>>> # Initializing a BridgeTower BridgeTower/bridgetower-base style configuration for the vision model
>>> configuration = BridgeTowerVisionConfig()

>>> # Accessing the configuration
>>> configuration
```bridgetower_vision_modelvision_config   hidden_size   num_hidden_layersr   num_channels   
patch_sizei   
image_size   initializer_factorh㈵>layer_norm_epsFstop_gradientTshare_layernormremove_last_layer N)__name__
__module____qualname____firstlineno____doc__
model_typebase_config_keyr   int__annotations__r   r   r   listtupler   r   floatr   r   boolr   r   __static_attributes__r       ڊ/root/GenerationalWealth/GenerationalWealth/venv/lib/python3.13/site-packages/transformers/models/bridgetower/configuration_bridgetower.pyr
   r
      s    ( ,J%OKsL#46Jd3i%S/1647Jd3i%S/17&''!NE!M4 OT #t#r,   r
   c                   N   \ rS rSr% SrSrSr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\\-  \	S'   Sr\\	S'   Sr\\	S'   Sr\\	S'   Sr\S-  \	S'   Sr\S-  \	S'   Sr\\\   -  S-  \	S'   S r\\	S!'   S"r\\	S#'   S"r\\	S$'   S%rg)&BridgeTowerTextConfig?   a  
Example:

```python
>>> from transformers import BridgeTowerTextConfig

>>> # Initializing a BridgeTower BridgeTower/bridgetower-base style configuration for the text model
>>> configuration = BridgeTowerTextConfig()

>>> # Accessing the configuration
>>> configuration
```bridgetower_text_modeltext_configiY  
vocab_sizer   r   r   r   num_attention_headsr   r   i   intermediate_sizegelu
hidden_actg?hidden_dropout_probattention_probs_dropout_probi  max_position_embeddingstype_vocab_sizer   r   Npad_token_idr   bos_token_id   eos_token_idT	use_cacheF
is_decoderadd_cross_attentionr   ) r   r   r    r!   r"   r#   r$   r3   r%   r&   r   r   r4   r   r)   r5   r7   strr8   r9   r:   r;   r   r<   r=   r?   r'   r@   r*   rA   rB   r+   r   r,   r-   r/   r/   ?   s     *J#OJKs!!&''!s!J'**03 %#+3#&S&OS!NE! L#*  L#* +,L#S	/D(,ItJ %%r,   r/   c                     ^  \ rS rSr% SrSr\\S.r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\\S'   Sr\
\S'   Sr\
\S'   Sr\\-  S-  \S'   Sr\\-  S-  \S'   U 4S jrSrU =r$ )BridgeTowerConfigf   a  
share_cross_modal_transformer_layers (`bool`, *optional*, defaults to `True`):
    Whether cross modal transformer layers are shared.
share_link_tower_layers (`bool`, *optional*, defaults to `False`):
    Whether the bride/link tower layers are shared.
link_tower_type (`str`, *optional*, defaults to `"add"`):
    Type of the bridge/link layer.
init_layernorm_from_vision_encoder (`bool`, *optional*, defaults to `False`):
    Whether to init LayerNorm from the vision encoder.

Example:

```python
>>> from transformers import BridgeTowerModel, BridgeTowerConfig

>>> # Initializing a BridgeTower BridgeTower/bridgetower-base style configuration
>>> configuration = BridgeTowerConfig()

>>> # Initializing a model from the BridgeTower/bridgetower-base style configuration
>>> model = BridgeTowerModel(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config
```bridgetower)r2   r   T$share_cross_modal_transformer_layersr6   r7   r   r   r   r   r   r   Fshare_link_tower_layersaddlink_tower_typer   r4      r   tie_word_embeddings"init_layernorm_from_vision_encoderNr2   r   c                   > UR                  SS 5      nUR                  SS 5      nU R                  c%  [        5       U l        [        R	                  S5        O9[        U R                  [        5      (       a  [        S0 U R                  D6U l        U R                  c%  [        5       U l        [        R	                  S5        O9[        U R                  [        5      (       a  [        S0 U R                  D6U l        [        TU ](  " S0 UD6  g )Ntext_config_dictvision_config_dictzV`text_config` is `None`. initializing the `BridgeTowerTextConfig` with default values.zZ`vision_config` is `None`. initializing the `BridgeTowerVisionConfig` with default values.r   )popr2   r/   loggerinfo
isinstancedictr   r
   super__post_init__)selfkwargs_	__class__s      r-   rX   BridgeTowerConfig.__post_init__   s    JJ)40JJ+T2#46DKKpq(($//4Ht7G7GHD%!8!:DKKtu**D11!8!N4;M;M!ND''r,   ) r   r   r    r!   r"   r#   r/   r
   sub_configsrH   r*   r&   r7   rC   r   r%   r   r)   r   rI   rK   r4   r   rM   rN   r2   rV   r   r   rX   r+   __classcell__)r\   s   @r-   rE   rE   f   s    2 J"7JabK15($5JK&''!NE!$)T) OS !!s %%/4&426K((4/648M4**T18( (r,   rE   )rE   r/   r
   N)r"   huggingface_hub.dataclassesr   configuration_utilsr   utilsr   r   
get_loggerr   rS   r
   r/   rE   __all__r   r,   r-   <module>re      s    & . 3 , 
		H	% 9:!$. !$  ;!$H 9:"&, "&  ;"&J 9:<(( <(  ;<(~ Tr,   