o
    9wi                     @   s   d dl Z d dlmZ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rLe ZeeZe	ejZeeZeeej dS dS )
    N)AnyDict)_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/lightning/pytorch/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   r   torch1lightning.fabric.utilities.consolidate_checkpointr   r   lightning.fabric.utilities.loadr   strr   __name__argsconfigcheckpoint_folderr   saveoutput_filer   r   r   r   <module>   s    "
