o
    8wi                     @   s   d dl Z d dlmZ d dlZd dlmZmZ d dlmZ de	e
ef de	e
ef fddZed	krJe ZeeZeejZeeZeeej dS dS )
    N)Any)_parse_cli_args_process_cli_args)_load_distributed_checkpoint
checkpointreturnc                    sF     d d< dd  D }|s S  fddtt|D  d<  S )zbConverts the special FSDP checkpoint format to the standard format the Lightning Trainer can load.model
state_dictc                 S   s   g | ]
}t d |r|qS )zoptimizer_[0-9]+)rematch).0key r   o/home/ubuntu/sommelier/.venv/lib/python3.10/site-packages/pytorch_lightning/utilities/consolidate_checkpoint.py
<listcomp>       z&_format_checkpoint.<locals>.<listcomp>c                    s   g | ]
}  d | qS )
optimizer_)pop)r   opt_idxr   r   r   r      r   optimizer_states)r   rangelen)r   optimizer_keysr   r   r   _format_checkpoint
   s   r   __main__)r
   typingr   torch1lightning_fabric.utilities.consolidate_checkpointr   r   lightning_fabric.utilities.loadr   dictstrr   __name__argsconfigcheckpoint_folderr   saveoutput_filer   r   r   r   <module>   s    "
