Ë
    ©sgÔ  ã                   óÊ   — d dl Z d dlmZmZ d dlmZ d dlmZmZ ddl	m
Z
 ddlmZ ddlmZ  e j                  e«      Ze eej$                  «       G d	„ d
e«      «       «       Zy)é    N)Ú	dataclassÚfield)ÚPath)ÚOptionalÚUnioné   )ÚGenerationConfig)ÚTrainingArguments)Úadd_start_docstringsc                   óì   ‡ — e Zd ZU dZ edddi¬«      Zeed<    edddi¬«      Zeed<    ed	dd
i¬«      Z	e
e   ed<    ed	ddi¬«      Ze
e   ed<    ed	ddi¬«      Ze
eeeef      ed<   ˆ fd„Zˆ xZS )ÚSeq2SeqTrainingArgumentsaJ  
    Args:
        sortish_sampler (`bool`, *optional*, defaults to `False`):
            Whether to use a *sortish sampler* or not. Only possible if the underlying datasets are *Seq2SeqDataset*
            for now but will become generally available in the near future.

            It sorts the inputs according to lengths in order to minimize the padding size, with a bit of randomness
            for the training set.
        predict_with_generate (`bool`, *optional*, defaults to `False`):
            Whether to use generate to calculate generative metrics (ROUGE, BLEU).
        generation_max_length (`int`, *optional*):
            The `max_length` to use on each evaluation loop when `predict_with_generate=True`. Will default to the
            `max_length` value of the model configuration.
        generation_num_beams (`int`, *optional*):
            The `num_beams` to use on each evaluation loop when `predict_with_generate=True`. Will default to the
            `num_beams` value of the model configuration.
        generation_config (`str` or `Path` or [`~generation.GenerationConfig`], *optional*):
            Allows to load a [`~generation.GenerationConfig`] from the `from_pretrained` method. This can be either:

            - a string, the *model id* of a pretrained model configuration hosted inside a model repo on
              huggingface.co.
            - a path to a *directory* containing a configuration file saved using the
              [`~GenerationConfig.save_pretrained`] method, e.g., `./my_model_directory/`.
            - a [`~generation.GenerationConfig`] object.
    FÚhelpz%Whether to use SortishSampler or not.)ÚdefaultÚmetadataÚsortish_samplerzFWhether to use generate to calculate generative metrics (ROUGE, BLEU).Úpredict_with_generateNz•The `max_length` to use on each evaluation loop when `predict_with_generate=True`. Will default to the `max_length` value of the model configuration.Úgeneration_max_lengthz“The `num_beams` to use on each evaluation loop when `predict_with_generate=True`. Will default to the `num_beams` value of the model configuration.Úgeneration_num_beamsz^Model id, file path or url pointing to a GenerationConfig json file, to use during prediction.Úgeneration_configc                 óœ   •— t         ‰|   «       }|j                  «       D ])  \  }}t        |t        «      sŒ|j                  «       ||<   Œ+ |S )zØ
        Serializes this instance while replace `Enum` by their values and `GenerationConfig` by dictionaries (for JSON
        serialization support). It obfuscates the token values by removing their value.
        )ÚsuperÚto_dictÚitemsÚ
isinstancer	   )ÚselfÚdÚkÚvÚ	__class__s       €úU/var/www/html/venv/lib/python3.12/site-packages/transformers/training_args_seq2seq.pyr   z Seq2SeqTrainingArguments.to_dictV   sK   ø€ ô ‰G‰OÓˆØ—G‘G“Iò 	#‰DˆAˆqÜ˜!Ô-Õ.Ø—y‘y“{!’ð	#ð ˆó    )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   ÚboolÚ__annotations__r   r   r   Úintr   r   r   Ústrr   r	   r   Ú__classcell__)r   s   @r    r   r      sÑ   ø… ññ4 "¨%¸6ÐCjÐ:kÔl€OTÓlÙ"'Ø Ð)qÐ rô#Ð˜4ó ñ ,1ØàðHð
ô,Ð˜8 C™=ó ñ +0ØàðGð
ô+Ð˜( 3™-ó ñ GLØàÐtð
ôGÐx  c¨4Ð1AÐ&AÑ BÑCó ÷
ð 
r!   r   )ÚloggingÚdataclassesr   r   Úpathlibr   Útypingr   r   Úgeneration.configuration_utilsr	   Útraining_argsr
   Úutilsr   Ú	getLoggerr"   Úloggerr%   r   © r!   r    ú<module>r5      sc   ðó ß (Ý ß "å <Ý ,Ý 'ð 
ˆ×	Ñ	˜8Ó	$€ð ÙÐ'×/Ñ/Ó0ôBÐ0ó Bó 1ó ñBr!   