
    Vh                         d dl Z d dlmZ ddlmZmZ ddlmZmZ 	 ddeeedf   dee	e j                  df   ded	edeef   fd
Zy)    N)Union   )FileSystemReaderFileSystemWriter)StorageReaderStorageWriterstoragecheckpoint_idreaderreturnc                 J   | r|| j                  |       | S |st        d      g }|rt        g}nt        g}	 ddlm}m} |j                  |r|n|       |D ]0  }|j                  |      s ||      } | j                  |       | c S  t        d      # t        $ r Y Kw xY w)NzL`checkpoint_id` must be specificed if storage_reader/storage_writer is None.r   )FsspecReaderFsspecWriterzlCannot detect which StorageReader or StorageWriter to use. Please specify the storage_reader/storage_writer.)
resetRuntimeErrorr   r   _fsspec_filesystemr   r   append	Exceptionvalidate_checkpoint_id)r	   r
   r   targetsr   r   targets          [/home/dcms/DCMS/lib/python3.12/site-packages/torch/distributed/checkpoint/_storage_utils.py_storage_setupr      s    
 $MM-(5
 	

 @BG

 
Bv|<@  ((7]+GMM-(N	 	<   s   B 	B"!B")F)ostypingr   
filesystemr   r   r	   r   r   strPathLikeboolr        r   <module>r"      sg    	  : 1 )=-56)bkk4/0) ) 4-.	)r!   