+
    –°³jV  ã                   ó²   € ^ RI t ^ RIt^ RIHt ^ RIHtHt ^ RIHt ]	t
]	t]R,          t] ! R R4      4       t] ! R R4      4       t] ! R	 R
4      4       tR# )é    N)Údefaultdict)Ú	dataclassÚfield)ÚLiteralc                   óT   a € ] tR t^t o Rt]! RR7      tV 3R lR ltV 3R ltRt	V t
R# )	Ú
TensorInfoa  Information about a tensor.

For more details regarding the safetensors format, check out https://huggingface.co/docs/safetensors/index#format.

Attributes:
    dtype (`str`):
        The data type of the tensor ("F64", "F32", "F16", "BF16", "I64", "I32", "I16", "I8", "U8", "U3", "BOOL").
    shape (`list[int]`):
        The shape of the tensor.
    data_offsets (`tuple[int, int]`):
        The offsets of the data in the file as a tuple `[BEGIN, END]`.
    parameter_count (`int`):
        The number of parameters in the tensor.
F©Úinitc                ó   <€ V ^8„  d   QhRR/# ©é   ÚreturnN© )ÚformatÚ__classdict__s   "€Úc/home/luca/screen-checking/.venv/lib/python3.14/site-packages/huggingface_hub/utils/_safetensors.pyÚ__annotate__ÚTensorInfo.__annotate__#   s   ø€ ÷ %ñ %˜tñ %ó    c                ó¢   €  \         P                  ! \        P                  V P                  4      V n        R#   \         d    ^T n         R# i ; i)é   N)Ú	functoolsÚreduceÚoperatorÚmulÚshapeÚparameter_countÚ	TypeError)Úselfs   &r   Ú__post_init__ÚTensorInfo.__post_init__#   s;   € ð	%Ü#,×#3Ò#3´H·L±LÀ$Ç*Á*Ó#MˆDÖ øÜô 	%Ø#$ˆD× ð	%ús   ‚48 ¸AÁAc                óp   <€ V ^8„  d   Qh/ S[ ;R&   S[S[,          ;R&   S[S[S[3,          ;R&   S[;R&   # )r   Údtyper   Údata_offsetsr   )ÚDTYPE_TÚlistÚintÚtuple)r   r   s   "€r   r   r      sD   ø‡ ‚ ñ" �Nñ# ñ$ ‘�9Ññ% ñ& ™™S˜•/Ñ!ñ' ñ( Ñ,ò) r   ©r   N©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   r    Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__©r   s   @r   r   r      s'   ø‡ € ññ$ ! eÔ,€O÷%ð %÷- ƒ r   r   c                   óT   a € ] tR t^+t o Rt]! RR7      tV 3R lR ltV 3R ltRt	V t
R# )	ÚSafetensorsFileMetadataa©  Metadata for a Safetensors file hosted on the Hub.

This class is returned by [`parse_safetensors_file_metadata`].

For more details regarding the safetensors format, check out https://huggingface.co/docs/safetensors/index#format.

Attributes:
    metadata (`dict`):
        The metadata contained in the file.
    tensors (`dict[str, TensorInfo]`):
        A map of all tensors. Keys are tensor names and values are information about the corresponding tensor, as a
        [`TensorInfo`] object.
    parameter_count (`dict[str, int]`):
        A map of the number of parameters per data type. Keys are data types and values are the number of parameters
        of that data type.
Fr	   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   Ú$SafetensorsFileMetadata.__annotate__B   s   ø€ ÷ 5ñ 5˜tñ 5r   c                óÖ   € \        \        4      pV P                  P                  4        F+  pWP                  ;;,          VP
                  ,          uu&   K-  	  \        V4      V n        R # ©N)r   r'   ÚtensorsÚvaluesr#   r   Údict)r   r   Útensors   &  r   r    Ú%SafetensorsFileMetadata.__post_init__B   sH   € Ü.9¼#Ó.>ˆØ—l‘l×)Ñ)Ö+ˆFØŸL™L×)¨V×-CÑ-CÕCÕ)ñ ,ä# OÓ4ˆÖr   c                ó€   <€ V ^8„  d   Qh/ S[ S[S[3,          ;R&   S[ S[S[3,          ;R&   S[ S[S[3,          ;R&   # )r   Úmetadatar:   r   )r<   ÚstrÚTENSOR_NAME_Tr   r%   r'   )r   r   s   "€r   r   r7   +   sG   ø‡ ‚ ñ& ‘3™�8�nÑñ' ñ( ‘-¡Ð+Õ,Ñ,ñ) ñ* ™'¡3˜,Õ'Ñ;ò+ r   r)   Nr*   r3   s   @r   r5   r5   +   s'   ø‡ € ññ& +0°UÔ*;€O÷5ð 5÷/ ƒ r   r5   c                   óT   a € ] tR t^It o Rt]! RR7      tV 3R lR ltV 3R ltRt	V t
R# )	ÚSafetensorsRepoMetadataaÀ  Metadata for a Safetensors repo.

A repo is considered to be a Safetensors repo if it contains either a 'model.safetensors' weight file (non-shared
model) or a 'model.safetensors.index.json' index file (sharded model) at its root.

This class is returned by [`get_safetensors_metadata`].

For more details regarding the safetensors format, check out https://huggingface.co/docs/safetensors/index#format.

Attributes:
    metadata (`dict`, *optional*):
        The metadata contained in the 'model.safetensors.index.json' file, if it exists. Only populated for sharded
        models.
    sharded (`bool`):
        Whether the repo contains a sharded model or not.
    weight_map (`dict[str, str]`):
        A map of all weights. Keys are tensor names and values are filenames of the files containing the tensors.
    files_metadata (`dict[str, SafetensorsFileMetadata]`):
        A map of all files metadata. Keys are filenames and values are the metadata of the corresponding file, as
        a [`SafetensorsFileMetadata`] object.
    parameter_count (`dict[str, int]`):
        A map of the number of parameters per data type. Keys are data types and values are the number of parameters
        of that data type.
Fr	   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   Ú$SafetensorsRepoMetadata.__annotate__j   s   ø€ ÷ 5ñ 5˜tñ 5r   c                óô   € \        \        4      pV P                  P                  4        F:  pVP                  P                  4        F  w  r4W;;,          V,          uu&   K  	  K<  	  \        V4      V n        R # r9   )r   r'   Úfiles_metadatar;   r   Úitemsr<   )r   r   Úfile_metadatar#   Únb_parameters_s   &    r   r    Ú%SafetensorsRepoMetadata.__post_init__j   s_   € Ü.9¼#Ó.>ˆØ!×0Ñ0×7Ñ7Ö9ˆMØ)6×)FÑ)F×)LÑ)LÖ)NÑ%�Ø×&¨.Õ8Õ&ó *Oñ :ô  $ OÓ4ˆÖr   c                ó¦   <€ V ^8„  d   Qh/ S[ R,          ;R&   S[;R&   S[ S[S[3,          ;R&   S[ S[S[3,          ;R&   S[ S[S[3,          ;R&   # )r   Nr@   ÚshardedÚ
weight_maprH   r   )r<   ÚboolrB   Ú
FILENAME_Tr5   r%   r'   )r   r   s   "€r   r   rF   I   sg   ø‡ ‚ ñ6 �T�kÑñ7 ñ8 �Mñ9 ñ: ‘]¡JÐ.Õ/Ñ/ñ; ñ< ™Ñ%<Ð<Õ=Ñ=ñ= ñ> ™'¡3˜,Õ'Ñ;ò? r   r)   Nr*   r3   s   @r   rD   rD   I   s(   ø‡ € ññ: +0°UÔ*;€O÷5ð 5÷C ƒ r   rD   )ÚF64ÚF32ÚF16ÚBF16ÚI64ÚI32ÚI16ÚI8ÚU8ÚU3ÚBOOL)r   r   Úcollectionsr   Údataclassesr   r   Útypingr   rA   rQ   rB   r%   r   r5   rD   r   r   r   Ú<module>r`      sv   ðÛ Û Ý #ß (Ý ð €
Ø€Ø
Ð\Õ
]€ð ÷%ð %ó ð%ð: ÷5ð 5ó ð5ð: ÷%5ð %5ó ò%5r   