
    IЦi                     z   S SK r S SKJrJr  S SKJr  S SKJrJrJ	r	J
r
JrJr  S SKrS SKJr  / SQr\ " S S5      5       r " S	 S
\5      r\ " S S5      5       r\ " S S5      5       r\ " S S5      5       r\\\4   r\\\\\4   4   r\ " S S5      5       r\ " S S5      5       r\" SS9 " S S5      5       rg)    N)	dataclassfield)Enum)AnyDictListOptionalSequenceUnion)	StatefulT)ChunkStorageMetadataTensorStorageMetadataBytesStorageMetadataMetadataMetadataIndexTensorPropertiesStorageMetac                   V    \ rS rSr% Sr\R                  \S'   \R                  \S'   Srg)r      zc
Each chunk is expected to have the same properties of the TensorStorageMetadata
that includes it.
offsetssizes N)	__name__
__module____qualname____firstlineno____doc__torchSize__annotations____static_attributes__r       d/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/torch/distributed/checkpoint/metadata.pyr   r      s    
 ZZ::r"   r   c                   $    \ rS rSrSrSrSrSrSrg)_MEM_FORMAT_ENCODING!   z'Describe the memory format of a tensor.r         r   N)	r   r   r   r   r   TORCH_CONTIGUOUS_FORMATTORCH_CHANNELS_LASTTORCH_PRESERVE_FORMATr!   r   r"   r#   r%   r%   !   s    1r"   r%   c                   ,   \ rS rSr% Sr\" \R                  S9r\R                  \	S'   \" \R                  S9r\R                  \	S'   Sr\\	S'   \" \R                  S9r\R                  \	S	'   Sr\\	S
'   S rS r\S\R(                  SS 4S j5       rSrg)r   )   z)Properties used to create :class:`Tensor`)default_factorydtype)defaultlayoutFrequires_gradmemory_format
pin_memoryc                 r   U R                   nU[        R                  :X  a  [        R                  nOXU[        R
                  :X  a  [        R                  nO3U[        R                  :X  a  [        R                  nO[        SU 35      eU R                  U R                  U R                  UU R                  4$ )NzInvalid torch.memory_format: )r3   r   contiguous_formatr%   r)   channels_lastr*   preserve_formatr+   RuntimeErrorr/   r1   r2   r4   )selfr3   mem_format_encodings      r#   __getstate__TensorProperties.__getstate__8   s    **E333"6"N"Ne111"6"J"Je333"6"L"L!>}oNOO JJKKOO
 	
r"   c                 B   Uu  U l         U l        U l        nU l        U[        R
                  :X  a  [        R                  nOXU[        R                  :X  a  [        R                  nO3U[        R                  :X  a  [        R                  nO[        SU 35      eX0l        g )Nz&Invalid torch.memory_format encoding: )r/   r1   r2   r4   r%   r)   r   r6   r*   r7   r+   r8   r9   r3   )r:   stater;   r3   s       r#   __setstate__TensorProperties.__setstate__L   s     	
JKO "6"N"NN!33M $8$L$LL!//M $8$N$NN!11M89L8MN  +r"   tensorreturnc                     [        U R                  U R                  U R                  [        R
                  U R                  5       S9$ )N)r/   r1   r2   r3   r4   )r   r/   r1   r2   r   r6   	is_pinned)rB   s    r#   create_from_tensor#TensorProperties.create_from_tensore   s;    ,,== ..11'')
 	
r"   )r/   r1   r3   r4   r2   N)r   r   r   r   r   r   r   get_default_dtyper/   r    stridedr1   r2   boolr6   r3   r4   r<   r@   staticmethodTensorrF   r!   r   r"   r#   r   r   )   s    3 u/F/FGE5;;G 7FELL7M4).u7N7N)OM5&&OJ
(+2 
5<< 
4F 
 
r"   r   c                   N    \ rS rSr% \\S'   \R                  \S'   \\	   \S'   Sr
g)r   p   
propertiessizechunksr   N)r   r   r   r   r   r    r   r   r   r   r!   r   r"   r#   r   r   p   s      
**%&&r"   r   c                       \ rS rSrSrg)r   w   r   N)r   r   r   r   r!   r   r"   r#   r   r   w   s    r"   r   c                   l    \ rS rSr% Sr\\\R                  S4   \	S'   Sr
\\   \	S'   Sr\\   \	S'   Srg)r      Ncheckpoint_idsave_idload_idr   )r   r   r   r   rV   r   strosPathLiker    rW   r	   rX   r!   r   r"   r#   r   r      s8    37M5bkk4/07!GXc]!!GXc]!r"   r   c                   ^    \ rS rSr% Sr\\\4   \S'   Sr	\
\S'   Sr\
\S'   Sr\\   \S'   Srg)	r      z5This class represents the metadata of the checkpoint.state_dict_metadataNplanner_datastorage_datastorage_metar   )r   r   r   r   r   r   rY   STORAGE_TYPESr    r_   r   r`   ra   r	   r   r!   r   r"   r#   r   r      s<    ? c=011
 L#L#*.L(;'.r"   r   T)frozenc                       \ rS rSr% Sr\\S'    Sr\\	R                     \S'    \" SSSS9r\\   \S'      SS\S\\\      S\\   4S	 jjrS
rg)r      zIThis class represents a lookup key for items in a state dict or Metadata.fqnNoffsetF)hashcomparer0   indexc                     [         R                  U SU5        [         R                  U SU5        Ub,  [         R                  U S[        R                  " U5      5        g g )Nrf   rj   rg   )object__setattr__r   r   )r:   rf   rg   rj   s       r#   __init__MetadataIndex.__init__   sN     	4,4%0tXuzz&/AB r"   r   )NN)r   r   r   r   r   rY   r    rg   r	   r   r   r   rj   intr
   rn   r!   r   r"   r#   r   r      s    S	H,#'FHUZZ 'M eUDIE8C=I	 +/#	
C
C #'
C }	
C 
Cr"   r   )rZ   dataclassesr   r   enumr   typingr   r   r   r	   r
   r   r   %torch.distributed.checkpoint.statefulr   __all__r   r%   r   r   r   rb   rY   STATE_DICT_TYPEr   r   r   r   r"   r#   <module>rw      s   	 (  = =  ;   4  C
 C
 C
L ' ' ' 	 	 	 +-AABsE)S.112 " " " / / / $C C Cr"   