o
    }oiL                     @   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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 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)Path)TensorBoardLogger)	lightning)llm)get_nmt_tokenizer)io)safe_importtransformer_engine	artifacts   c                 C   s   | | | S )N )abcr   r   P/home/ubuntu/.local/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dd ZdS )TestLoadc           
      C   sh  t jddt  tdddd}tdd}tjtjd	d
ddd|d}tj	||d|id}|j
|dgd t|}|jjj|jjjksEJ |jjjjt|sRJ |jjjjt|s_J |jd }|d	d|d	dkspJ tj|dd}	t|	tjsJ |	jjj|jjjksJ |	jjjt|sJ |	jjjt|sJ |	jd tjtdddksJ d S )N   cputb_logsmy_model)name)devicesacceleratorstrategyloggermegatronGPT2BPETokenizer   i   i      )
num_layershidden_sizeffn_hidden_sizenum_attention_heads)	tokenizerdummy)extramodel)
yaml_attrs)r   F)buildr   r   r   )nlTrainerMegatronStrategyr   r   r   GPTModel	GPTConfigr   TrainerContextio_dumpload_contextr,   config
seq_length__io__r)   
vocab_file
startswithstrmerges_filer+   
isinstancefdlConfigPartialr   )
selftmpdirr   trainerr)   r,   ckptloadedloaded_funcr7   r   r   r   test_reload_ckpt,   s<   




"zTestLoad.test_reload_ckptN)__name__
__module____qualname__rH   r   r   r   r   r   +   s    r   )r   )"os	functoolsr   pathlibr   fiddler?   pytestyamllightning.pytorch.loggersr   nemor   r/   nemo.collectionsr   3nemo.collections.nlp.modules.common.tokenizer_utilsr   nemo.lightningr   nemo.utils.import_utilsr	   teHAVE_TEpathjoindirnamerealpath__file__ARTIFACTS_DIRr   fixturer   r   r   r   r   r   <module>   s$   

