
    ~i                    d    S r SSKJr  SSKrSSKJr  SSKJr  SSK	J
r
  SSKJr  S
S jrSSS	 jjrg)zAGradio UI training-tab facade that composes focused tab builders.    )annotationsN)DEBUG_TRAINING)create_dataset_builder_tab)create_training_lokr_tab)create_training_lora_tabc                 p    [        [        5      R                  5       R                  5       S:g  n U (       a  gg)z>Return epoch slider defaults adjusted for training debug mode.OFF)   r
   r
   )d   r   i  )strr   stripupper)debug_training_enableds    D/mnt/workspace/ACE-Step-1.5/acestep/ui/gradio/interfaces/training.py_resolve_epoch_slider_defaultsr      s/     !0668>>@EI    c           	        A AA[        5       u  p4n[        R                  " S5        0 n[        R                  " 5          UR	                  [        5       5        UR	                  [        UUUS95        UR	                  [        5       5        [        R                  " S5      n[        R                  " SSS.5      nUR	                  UUS.5        SSS5        U$ ! , (       d  f       U$ = f)a(  Create the training-tab content without the outer ``gr.Tab`` wrapper.

Args:
    dit_handler: DiT handler instance.
    llm_handler: LLM handler instance.
    init_params: Optional initialization parameters.

Returns:
    Mapping of component keys to Gradio components for training-event wiring.
u   
    <div style="text-align: center; padding: 10px; margin-bottom: 15px;">
        <h2>🎵 LoRA Training for ACE-Step</h2>
        <p>Build datasets from your audio files and train custom LoRA adapters</p>
    </div>
    )	epoch_min
epoch_stepepoch_defaultNF)is_trainingshould_stop)dataset_builder_statetraining_state)	r   grHTMLTabsupdater   r   r   State)	dit_handlerllm_handlerinit_paramsr   r   r   training_sectionr   r   s	            r   create_training_sectionr$      s     	[++I+K(I=GG	 +-	 : <=$#%+	
 	 8 :; "%"NO)>"0	
 
$ % 
$ s   BC
C')returnztuple[int, int, int])N)r%   dict)__doc__
__future__r   gradior   acestep.constantsr   9acestep.ui.gradio.interfaces.training_dataset_builder_tabr   .acestep.ui.gradio.interfaces.training_lokr_tabr   .acestep.ui.gradio.interfaces.training_lora_tabr   r   r$    r   r   <module>r/      s)    G "  , T S,r   