Ë
    *êñiÒ  ã                   óx  — d dl Z d dlmZ d dlmZmZ d dlmZ d dlm	Z	m
Z
 d dlZd dlmZ g d¢Ze G d„ d	«      «       Z G d
„ de«      Ze G d„ d«      «       Ze G d„ d«      «       Ze G d„ d«      «       Ze
eef   Zeeee	z  f   Ze G d„ d«      «       Ze G d„ d«      «       Z ed¬«       G d„ d«      «       Zy)é    N)ÚSequence)Ú	dataclassÚfield)ÚEnum)ÚAnyÚUnion)Ú	StatefulT)ÚChunkStorageMetadataÚTensorStorageMetadataÚBytesStorageMetadataÚMetadataÚMetadataIndexÚTensorPropertiesÚStorageMetac                   óN   — e Zd ZU dZej
                  ed<   ej
                  ed<   y)r
   zo
    Each chunk is expected to have the same properties of the TensorStorageMetadata
    that includes it.
    ÚoffsetsÚsizesN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚtorchÚSizeÚ__annotations__© ó    úg/var/www/pod-logistic/pod-ai/venv/lib/python3.12/site-packages/torch/distributed/checkpoint/metadata.pyr
   r
      s   … ñð
 �Z‰ZÓØ�:‰:Ôr   r
   c                   ó   — e Zd ZdZdZdZdZy)Ú_MEM_FORMAT_ENCODINGz'Describe the memory format of a tensor.r   é   é   N)r   r   r   r   ÚTORCH_CONTIGUOUS_FORMATÚTORCH_CHANNELS_LASTÚTORCH_PRESERVE_FORMATr   r   r   r   r   "   s   „ Ù1àÐØÐØÑr   r   c                   ó4  — e Zd ZU dZ eej                  ¬«      Zej                  ed<    eej                  ¬«      Z
ej                  ed<   dZeed<    eej                  ¬«      Zej                  ed<   dZeed	<   d
„ Zd„ Zedej&                  dd fd„«       Zy)r   z)Properties used to create :class:`Tensor`©Údefault_factoryÚdtype)ÚdefaultÚlayoutFÚrequires_gradÚmemory_formatÚ
pin_memoryc                 ól  — | j                   }|t        j                  k(  rt        j                  }nV|t        j
                  k(  rt        j                  }n2|t        j                  k(  rt        j                  }nt        d|› �«      ‚| j                  | j                  | j                  || j                  fS )NzInvalid torch.memory_format: )r,   r   Úcontiguous_formatr   r"   Úchannels_lastr#   Úpreserve_formatr$   ÚRuntimeErrorr(   r*   r+   r-   )Úselfr,   Úmem_format_encodings      r   Ú__getstate__zTensorProperties.__getstate__9   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ð �J‰JØ�K‰KØ×ÑØØ�O‰Oð
ð 	
r   c                 óX  — |\  | _         | _        | _        }| _        |t        j
                  k(  rt        j                  }|| _        y |t        j                  k(  rt        j                  }|| _        y |t        j                  k(  rt        j                  }|| _        y t        d|› �«      ‚)Nz&Invalid torch.memory_format encoding: )r(   r*   r+   r-   r   r"   r   r/   r#   r0   r$   r1   r2   r,   )r3   Ústater4   r,   s       r   Ú__setstate__zTensorProperties.__setstate__M   s±   € ð ñ	
ØŒJØŒKØÔØØŒOð Ô"6×"NÑ"NÒNÜ!×3Ñ3ˆMð +ˆÕð !Ô$8×$LÑ$LÒLÜ!×/Ñ/ˆMð +ˆÕð !Ô$8×$NÑ$NÒNÜ!×1Ñ1ˆMð +ˆÕô	 Ø8Ð9LÐ8MÐNóð r   ÚtensorÚreturnc                 ó–   — t        | j                  | j                  | j                  t        j
                  | j                  «       ¬«      S )N)r(   r*   r+   r,   r-   )r   r(   r*   r+   r   r/   Ú	is_pinned)r9   s    r   Úcreate_from_tensorz#TensorProperties.create_from_tensorf   s;   € äØ—,‘,Ø—=‘=Ø ×.Ñ.Ü×1Ñ1Ø×'Ñ'Ó)ô
ð 	
r   N)r   r   r   r   r   r   Úget_default_dtyper(   r   Ústridedr*   r+   Úboolr/   r,   r-   r5   r8   ÚstaticmethodÚTensorr=   r   r   r   r   r   *   s—   … á3ñ ¨u×/FÑ/FÔG€Eˆ5�;‰;ÓGá ¨¯©Ô7€FˆE�L‰LÓ7à€M�4Óá).°u×7NÑ7NÔ)O€M�5×&Ñ&ÓOà€J�Óò
ò(+ð2 ð
 5§<¡<ð 
Ð4Fò 
ó ñ
r   r   c                   óF   — e Zd ZU eed<   ej                  ed<   ee   ed<   y)r   Ú
propertiesÚsizeÚchunksN)	r   r   r   r   r   r   r   Úlistr
   r   r   r   r   r   q   s   … à Ó Ø
�*‰*ÓØÐ%Ñ&Ô&r   r   c                   ó   — e Zd Zy)r   N)r   r   r   r   r   r   r   r   x   s   „ àr   r   c                   ó†   — e Zd ZU dZeej                  z  dz  ed<   dZedz  ed<   dZ	edz  ed<    e
e¬«      Zee   ed<   y)r   NÚcheckpoint_idÚsave_idÚload_idr&   Úmodules)r   r   r   rJ   ÚstrÚosÚPathLiker   rK   rL   r   rG   rM   r   r   r   r   r   �   sI   … à.2€M�3˜Ÿ™Ñ$ tÑ+Ó2Ø€GˆS�4‰ZÓØ€GˆS�4‰ZÓÙ¨tÔ4€GˆT�#‰YÔ4r   r   c                   ój   — e Zd ZU dZeeef   ed<   dZe	ed<   dZ
e	ed<   dZedz  ed<   dZedz  ed<   y)r   z5This class represents the metadata of the checkpoint.Ústate_dict_metadataNÚplanner_dataÚstorage_dataÚstorage_metaÚversion)r   r   r   r   ÚdictrN   ÚSTORAGE_TYPESr   rS   r   rT   rU   r   rV   r   r   r   r   r   ‰   sJ   … á?ð ˜c =Ð0Ñ1Ó1ð
 €L�#ÓØ€L�#ÓØ'+€L�+ Ñ$Ó+Ø€GˆS�4‰ZÔr   r   T)Úfrozenc                   óœ   — e Zd ZU dZeed<   	 dZej                  dz  ed<   	  e	ddd¬«      Z
edz  ed<   	 	 	 d	dedee   dz  dedz  fd„Zy)
r   zIThis class represents a lookup key for items in a state dict or Metadata.ÚfqnNÚoffsetF)ÚhashÚcomparer)   Úindexc                 óº   — t         j                  | d|«       t         j                  | d|«       |�+t         j                  | dt        j                  |«      «       y y )Nr[   r_   r\   )ÚobjectÚ__setattr__r   r   )r3   r[   r\   r_   s       r   Ú__init__zMetadataIndex.__init__¯   sN   € ô 	×Ñ˜4 ¨Ô,Ü×Ñ˜4 ¨%Ô0ØÐÜ×Ñ˜t X¬u¯z©z¸&Ó/AÕBð r   )NN)r   r   r   r   rN   r   r\   r   r   r   r_   Úintr   rc   r   r   r   r   r   ™   sy   … áSà	ƒHØ,à $€FˆE�J‰J˜ÑÓ$ØMá 5°%ÀÔF€Eˆ3�‰:ÓFð	ð (,Ø ñ	
Càð
Cð ˜‘ Ñ$ð
Cð �T‰zô	
Cr   r   )rO   Úcollections.abcr   Údataclassesr   r   Úenumr   Útypingr   r   r   Ú%torch.distributed.checkpoint.statefulr	   Ú__all__r
   r   r   r   r   rX   rW   rN   ÚSTATE_DICT_TYPEr   r   r   r   r   r   ú<module>rl      s  ðã 	Ý $ß (Ý ß ã Ý ;ò€ð ÷ð ó ðô˜4ô ð ÷C
ð C
ó ðC
ðL ÷'ð 'ó ð'ð ÷	ð 	ó ð	ð Ð+Ð-AÐAÑB€Ø�s˜I¨™OÐ+Ñ,€ð ÷5ð 5ó ð5ð ÷ð ó ðñ �$Ô÷Cð Có ñCr   