o
    wi                     @   s   d dl Z d dlmZ d dlmZ d dlZd dlZd dlm	Z	 d dl
mZ d dlmZ d dlmZ d dlmZ ed	\ZZe je je jed
ZdddZejdd ZG dd dZdS )    N)partial)patch)TensorBoardLogger)	lightning)llm)io)safe_importtransformer_engine	artifacts   c                 C   s   | | | S )N )abcr   r   Y/home/ubuntu/sommelier/.venv/lib/python3.10/site-packages/tests/lightning/_io/test_api.pydummy_extra    s   r   c                   C   s   t tdddS )N
      r   )r   r   r   r   r   r   &partial_function_with_pos_and_key_args$   s   r   c                   @   s   e Zd Zeddd ZdS )TestLoadz9nemo.lightning.callback_group.CallbackGroup.update_configc           
      C   s   d |_ tjddt tdddd}ttjddd	d
d}tj	||d|id}|j
|dgd t|}|jjj|jjjksAJ |jd }|dd|ddksRJ tj|dd}	t|	tjsaJ |	jjj|jjjksmJ |	jd tjtdddks|J d S )N   cputb_logsmy_model)name)devicesacceleratorstrategylogger   i   i      )
num_layershidden_sizeffn_hidden_sizenum_attention_headsdummy)extramodel)
yaml_attrs)r   F)buildr   r   r   )return_valuenlTrainerMegatronStrategyr   r   GPTModel	GPTConfigr   TrainerContextio_dumpload_contextr(   config
seq_lengthr'   
isinstancefdlConfigPartialr   )
selfmock_update_one_loggertmpdirr   trainerr(   ckptloadedloaded_funcr4   r   r   r   test_reload_ckpt*   s2   



"zTestLoad.test_reload_ckptN)__name__
__module____qualname__r   rA   r   r   r   r   r   )   s    r   )r   )os	functoolsr   unittest.mockr   fiddler7   pytestlightning.pytorch.loggersr   nemor   r,   nemo.collectionsr   nemo.lightningr   nemo.utils.import_utilsr   teHAVE_TEpathjoindirnamerealpath__file__ARTIFACTS_DIRr   fixturer   r   r   r   r   r   <module>   s    

