+
    œ°³j<  ã                   óØ   € R t ^ RIHt ^RIHt ^RIHt ^RIHtH	t	 ]	P                  ! ]4      t]! RR7      ] ! R R]4      4       4       t]! RR7      ] ! R	 R
]4      4       4       tR
.tR# )zEvolla model configuration)Ústrict)ÚPreTrainedConfig)ÚRopeParameters)Úauto_docstringÚloggingzwestlake-repl/Evolla-10B-hf)Ú
checkpointc                   óx   a € ] tR t^t o RtRt^t^tRt^!t	^t
RtRtRtRtRtRtR	tR
tRtRtRtRtV 3R ltRtV tR# )ÚSaProtConfiga³  
mask_token_id (`int`, *optional*, defaults to 4):
    The id of the *mask* token in the protein sequence model.
position_embedding_type (`str`, *optional*, defaults to `"rotary"`):
    The type of position embedding to use in the protein sequence model. Currently only `"rotary"` is supported.
rope_theta (`float`, *optional*, defaults to 10000.0):
    The base period of the RoPE embeddings.
emb_layer_norm_before (`bool`, *optional*, defaults to `False`):
    Whether to apply layer normalization before the position embedding in the protein sequence model.
token_dropout (`bool`, *optional*, defaults to `True`):
    Whether to apply dropout to the tokens in the protein sequence model.
i¾  i   i   çš™™™™™¹?i  ç{®Gáz”?çñhãˆµøä>Úrotaryg     ˆÃ@FTc                ó  <€ V ^8„  d   Qh/ S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[S[ ,          ;R&   S[S[ ,          ;R	&   S[ ;R
&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   # )é   Ú
vocab_sizeÚmask_token_idÚpad_token_idÚhidden_sizeÚnum_hidden_layersÚnum_attention_headsÚintermediate_sizeÚhidden_dropout_probÚattention_probs_dropout_probÚmax_position_embeddingsÚinitializer_rangeÚlayer_norm_epsÚposition_embedding_typeÚ
rope_thetaÚemb_layer_norm_beforeÚtoken_dropoutÚ
is_decoderÚadd_cross_attention)ÚintÚfloatÚstrÚbool)ÚformatÚ__classdict__s   "€Úp/home/luca/screen-checking/.venv/lib/python3.14/site-packages/transformers/models/evolla/configuration_evolla.pyÚ__annotate__ÚSaProtConfig.__annotate__   sû   ø‡ ‚ ñ  Ññ! ñ" Ññ# ñ$ Ññ% ñ& Ññ' ñ( Ññ) ñ* Ñ!ñ+ ñ, Ñ!ñ- ñ. ¡�Ñ*ñ/ ñ0 #(©#¥+Ñ3ñ1 ñ2 !Ñ'ñ3 ñ4 Ñ#ñ5 ñ6 Ñ!ñ7 ñ8 !Ñ+ñ9 ñ: Ññ; ñ<  Ñ'ñ= ñ> Ññ? ñ@ ÑñA ñB Ñ%òC ó    © N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__)r'   s   @r(   r	   r	      sx   ø‡ € ñð €JØ€MØ€LØ€KØÐØ!ÐØ!ÐØ'*ÐØ03Ð Ø#'ÐØ#ÐØ!€NØ#+ÐØ€JØ"'ÐØ€MØ€JØ %Ð÷C ƒ r+   r	   c                   óÎ   a a€ ] tR t^>t oRtRtR]/tRtRt	Rt
RtRt^ t^ t^tR	tR
tRtRtRtRtRt^tRtRt^t^t^@t^t^@t^tRt Rt!Rt"Rt#Rt$Rt%Rt&Rt'V 3R lt(V3R lt)Rt*Vt+V ;t,# )ÚEvollaConfiga  
protein_encoder_config (`dict`, *optional*):
    Dictionary of configuration options used to initialize [`SaProtConfig`].
aligner_ffn_mult (`int`, *optional*, defaults to 4):
    The FFN multiplier for the aligner layer.
aligner_enable_bias (`bool`, *optional*, defaults to `True`):
    Whether to use bias in the aligner layer.
aligner_attention_probs_dropout_prob (`float`, *optional*, defaults to 0.1):
    The dropout ratio for the attention probabilities in the aligner layer.
aligner_num_add_layers (`int`, *optional*, defaults to 8):
    The number of additional layers for the aligner layer.
resampler_depth (`int`, *optional*, defaults to 6):
    The depth of the resampler layer in the llama model.
resampler_dim_head (`int`, *optional*, defaults to 64):
    The dimension of the heads in the resampler layer in the llama model.
resampler_heads (`int`, *optional*, defaults to 8):
    The number of heads in the resampler layer in the llama model.
resampler_num_latents (`int`, *optional*, defaults to 64):
    The number of latents in the resampler layer in the llama model.
resampler_ff_mult (`int`, *optional*, defaults to 4):
    The FFN multiplier for the resampler layer.

Example:

```python
>>> from transformers import EvollaModel, EvollaConfig

>>> # Initializing a Evolla evolla-10b style configuration
>>> configuration = EvollaConfig()

>>> # Initializing a model from the evolla-10b style configuration
>>> model = EvollaModel(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config
```ÚevollaÚprotein_encoder_configg    €„ANi õ i   i 8  Úsilui    r   Fg        Tr
   r   i ô i	ô c                ó  <€ V P                   f&   \        4       V n         \        P                  R4       M:\	        V P                   \
        4      '       d   \        R/ V P                   B V n         \        SV `  ! R/ VB  R # )NzX`protein_encoder_config` is `None`. Initializing the `SaProtConfig` with default values.r,   )r8   r	   ÚloggerÚinfoÚ
isinstanceÚdictÚsuperÚ__post_init__)ÚselfÚkwargsÚ	__class__s   &,€r(   r@   ÚEvollaConfig.__post_init__Š   s_   ø€ Ø×&Ñ&Ò.Ü*6«.ˆDÔ'Ü�K‰KÐrÕsÜ˜×3Ñ3´T×:Ò:Ü*6Ñ*U¸×9TÑ9TÑ*UˆDÔ'Ü‰ÒÑ' Ô'r+   c                óÚ  <€ V ^8„  d   Qh/ S[ S[,          R,          ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[R,          ;R&   S[;R	&   S[;R
&   S[;R&   S[S[ ,          R,          ;R&   S[;R&   S[S[,          R,          ;R&   S[;R&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[;R&   S[R,          ;R&   S[R,          ;R&   S[S[S[,          ,          R,          ;R&   S[;R&   S[;R&   S[R,          ;R&   S[R,          ;R &   # )!r   Nr8   r   r   r   r   r   Únum_key_value_headsÚ
hidden_actr   Úrms_norm_epsÚrope_parametersÚattention_biasÚattention_dropoutÚmlp_biasÚaligner_ffn_multÚaligner_enable_biasÚ$aligner_attention_probs_dropout_probÚaligner_num_add_layersÚresampler_depthÚresampler_dim_headÚresampler_headsÚresampler_num_latentsÚresampler_ff_multr   r   Úbos_token_idÚeos_token_idÚ	use_cacheÚtie_word_embeddingsr    r!   )r>   r   r"   r$   r#   r   r%   Úlist)r&   r'   s   "€r(   r)   ÚEvollaConfig.__annotate__>   s9  ø‡ ‚ ñX !Ñ#3Õ3°dÕ:ÑAñY ñZ Ññ[ ñ\ Ññ] ñ^ Ñ"ñ_ ñ` Ñña ñb Ñ!ñc ñd ˜t�Ñ'ñe ñf Ññg ñh !Ñ'ñi ñj Ññk ñl $¡dÕ*¨TÕ1Ñ8ñm ñn Ñ ño ñp ™s•{ TÕ)Ñ/ñq ñr Ññs ñt ˜D•jÑ$ñu ñv  �Ñ+ñw ñx +0°$­,Ñ<ñy ñz   $�JÑ*ñ{ ñ| ˜4•ZÑ#ñ} ñ~ ˜d�
Ñ'ñ ñ@ ˜4•ZÑ#ñA ñB  �:Ñ*ñC ñD ˜T•zÑ%ñE ñF Ñ#ñG ñH ˜•*Ñ#ñI ñJ ˜•*Ñ%ñK ñL ™™S�	•/ DÕ(Ñ1ñM ñN ÑñO ñP Ñ%ñQ ñR �t•Ñ#ñS ñT  �Ñ,òU r+   )r8   )-r-   r.   r/   r0   r1   Ú
model_typer	   Úsub_configsÚdefault_thetar8   r   r   r   r   r   rF   rG   r   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   r   r   rV   rW   rX   rY   r    r!   r@   r2   r3   r4   Ú__classcell__)rC   r'   s   @@r(   r6   r6   >   sÚ   ù‡ € ñ#ðJ €JØ+¨\Ð:€KØ€Mà=AÐØ€JØ€KØ"ÐØÐØ!ÐØ&'ÐØ€JØ#'ÐØ€LØ48€OØ €NØ,/ÐØ€HØ#$ÐØ'+ÐØ9<Ð(Ø)*ÐØ"#€OØ%'ÐØ"#€OØ(*ÐØ$%ÐØ#ÐØ#€LØ%€LØ+1€LØ€IØ %ÐØ#€JØ',Ðõ(÷Y … r+   r6   N)r1   Úhuggingface_hub.dataclassesr   Úconfiguration_utilsr   Úmodeling_rope_utilsr   Úutilsr   r   Ú
get_loggerr-   r;   r	   r6   Ú__all__r,   r+   r(   Ú<module>rf      s‹   ðñ !å .å 3Ý 1ß ,ð 
×	Ò	˜HÓ	%€ñ Ð8Ô9Øô&Ð#ó &ó ó :ð&ñD Ð8Ô9ØôP(Ð#ó P(ó ó :ðP(ðf Ð
‚r+   