Ë
    ÜÓ^j›  ã                   ó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ProphetNet model configurationé    )Ústricté   )ÚPreTrainedConfig)Úauto_docstringz"microsoft/prophetnet-large-uncased)Ú
checkpointc                   ó  — e Zd ZU dZdZdgZddiZ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<   dZe	e
d<   dZe	e
d<   dZe	e
d<   dZe	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
d<   dZee
d<   dZee
d<   dZe	d z  e
d!<   d"Ze	e
d#<   d$Ze	e
d%<   d&Ze	e
d'<   d(Z ee
d)<   d*Z!ee
d+<   dZ"ee
d,<   dZ#e	d z  e
d-<   d.Z$e	d z  e
d/<   d"Z%e	e&e	   z  d z  e
d0<   d(Z'ee
d1<   dZ(ee
d2<   e)d3e	fd4„«       Z*e*jV                  d5„ «       Z*y )6ÚProphetNetConfiga  
    ngram (`int`, *optional*, defaults to 2):
        Number of future tokens to predict. Set to 1 to be same as traditional Language model to predict next first
        token.
    num_buckets (`int`, *optional*, defaults to 32):
        The number of buckets to use for each attention layer. This is for relative position calculation. See the
        [T5 paper](see https://huggingface.co/papers/1910.10683) for more details.
    relative_max_distance (`int`, *optional*, defaults to 128):
        Relative distances greater than this number will be put into the last same bucket. This is for relative
        position calculation. See the [T5 paper](see https://huggingface.co/papers/1910.10683) for more details.
    disable_ngram_loss (`bool`, *optional*, defaults to `False`):
        Whether be trained predicting only the next first token.
    eps (`float`, *optional*, defaults to 0.0):
        Controls the `epsilon` parameter value for label smoothing in the loss calculation. If set to 0, no label
        smoothing is performed.
    Ú
prophetnetÚpast_key_valuesÚnum_attention_headsÚnum_encoder_attention_headsgš™™™™™¹?Úactivation_dropoutÚgeluÚactivation_functioni:w  Ú
vocab_sizei   Úhidden_sizei   Úencoder_ffn_dimé   Únum_encoder_layersé   Údecoder_ffn_dimÚnum_decoder_layersÚnum_decoder_attention_headsÚattention_dropoutÚdropouti   Úmax_position_embeddingsg{®Gáz”?Úinit_stdTÚis_encoder_decoderÚadd_cross_attentionr   NÚdecoder_start_token_idé   Úngramé    Únum_bucketsé€   Úrelative_max_distanceFÚdisable_ngram_lossg        ÚepsÚ	use_cacheÚpad_token_idé   Úbos_token_idÚeos_token_idÚ
is_decoderÚtie_word_embeddingsÚreturnc                 ó   — | j                   S )N)r   )Úselfs    ú‚/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/transformers/models/prophetnet/configuration_prophetnet.pyÚnum_hidden_layersz"ProphetNetConfig.num_hidden_layersM   s   € à×&Ñ&Ð&ó    c                 ó   — t        d«      ‚)NzyThis model does not support the setting of `num_hidden_layers`. Please set `num_encoder_layers` and `num_decoder_layers`.)ÚNotImplementedError)r2   Úvalues     r3   r4   z"ProphetNetConfig.num_hidden_layersQ   s   € ä!ð%ó
ð 	
r5   ),Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú
model_typeÚkeys_to_ignore_at_inferenceÚattribute_mapr   ÚfloatÚintÚ__annotations__r   Ústrr   r   r   r   r   r   r   r   r   r   r   r   r   Úboolr   r    r"   r$   r&   r'   r(   r)   r*   r,   r-   Úlistr.   r/   Úpropertyr4   Úsetter© r5   r3   r	   r	      s£  … ñð" €JØ#4Ð"5ÐàÐ<ð€Mð '*Ð˜ ™Ó)Ø%Ð˜Ó%Ø€J�ÓØ€K�ÓØ€O�SÓØ Ð˜Ó Ø')Ð Ó)Ø€O�SÓØ Ð˜Ó Ø')Ð Ó)Ø%(Ð�u˜s‘{Ó(Ø€GˆU�S‰[ÓØ#&Ð˜SÓ&Ø€HˆeÓØ#Ð˜Ó#Ø $Ð˜Ó$Ø)*Ð˜C $™JÓ*Ø€Eˆ3ƒNØ€K�ÓØ!$Ð˜3Ó$Ø$Ð˜Ó$Ø€CˆÓØ€IˆtÓØ €L�#˜‘*Ó Ø €L�#˜‘*Ó Ø+,€L�#˜˜S™	‘/ DÑ(Ó,Ø€J�ÓØ $Ð˜Ó$àð' 3ò 'ó ð'ð ×Ññ
ó ñ
r5   r	   N)	r<   Úhuggingface_hub.dataclassesr   Úconfiguration_utilsr   Úutilsr   r	   Ú__all__rH   r5   r3   ú<module>rM      sI   ðñ %å .å 3Ý #ñ Ð?Ô@Øô>
Ð'ó >
ó ó Að>
ðB Ð
�r5   