o
    
j;                     @   s\   d dl mZmZmZ d dlmZmZ d dlmZ d dl	m
Z
mZmZ eG dd deZdS )    )asdict	dataclassfield)DictList)MISSING)BaseAudioConfigBaseDatasetConfigBaseTrainingConfigc                       st  e Zd ZU dZdZeed< eedZ	eed< edd dZ
ee ed< ed	d dZeed
< ed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< ed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$< e Z!eed%< e Z"eed&< dZ#eed'< dZ$eed(< e Z%eed)< d*Z&eed+<  fd,d-Z'  Z(S ).BaseEncoderConfigz/Defines parameters for a Generic Encoder model.Nmodel)default_factoryaudioc                   C   s   t  gS N)r	    r   r   Z/home/kuhnn/.local/lib/python3.10/site-packages/TTS/encoder/configs/base_encoder_config.py<lambda>   s    zBaseEncoderConfig.<lambda>datasetsc                   C   s   dddddddS )NlstmP      i      T)
model_name	input_dimproj_dimlstm_dimnum_lstm_layersuse_lstm_with_projectionr   r   r   r   r   r      s   model_paramsc                   C   s   i S r   r   r   r   r   r   r      s    audio_augmentationi'  epochs
angleprotolossg      @	grad_clipg-C6?lrradam	optimizerc                   C   s   ddgddS )Ng?g+?r   )betasweight_decayr   r   r   r   r   r   $   s    optimizer_paramsFlr_decayi  warmup_stepstb_model_param_stats
   steps_plot_statsi  	save_step   
print_steprun_evalnum_classes_in_batchnum_utter_per_classeval_num_classes_in_batcheval_num_utter_per_classnum_loader_workersg?	voice_lenc                    s2   t    t| }|d d | jjksJ dd S )Nr   r   zE [!] model input dimendion must be equal to melspectrogram dimension.)supercheck_valuesr   r   num_mels)selfc	__class__r   r   r:   8   s
   
zBaseEncoderConfig.check_values))__name__
__module____qualname____doc__r   str__annotations__r   r   r   r   r   r	   r   r   r   r    intr"   r#   floatr$   r&   r)   r*   boolr+   r,   r.   r/   r1   r2   r   r3   r4   r5   r6   r7   r8   r:   __classcell__r   r   r>   r   r   	   s:   
 r   N)dataclassesr   r   r   typingr   r   coqpitr   TTS.config.shared_configsr   r	   r
   r   r   r   r   r   <module>   s    