
    >Ci                       S SK Jr  S SKrS SKrS SKrS SKrS SKrS SKrS SKJ	r	  S SK
J
r
  S\R                  ;  a  \	" \5      R                  R                  R                  R                  S-  R                  5       (       aF  \R                  R!                  S \" \	" \5      R                  R                  R                  5      5        S SKJr  \R(                  " S5      r\R,                  " S	5      rSS
 jrSS jr\S:X  a  \" 5         gg)    )annotationsN)Path)tqdmNO_LOCAL_GGUFzgguf-py)
GGUFReaderz	gguf-hashz$ef001206-dadc-5f6d-a15f-3359e577d4e5c           	     >   [         R                  " 5       n[         R                  " 5       n[         R                  " 5       nUR                  [        R
                  5        Sn[        U R                  S5       HD  u  pU	R                  R                  S5      (       a  M'  Sn
U	R                   H  nX-  n
M	     Xz-  nMF     [        SUSSUS9nU R                   GH  n	U	R                  R                  S5      (       a  M&  Sn
U	R                   H  nX-  n
M	     UR                  U
5        U(       d  [         R                  " 5       nUR                  U	R                  R                  5        [        SR                  UR                  5       XR                  5      5        [         R                  " 5       nUR                  U	R                  R                  5        [        S	R                  UR                  5       XR                  5      5        UR                  U	R                  R                  5        UR                  U	R                  R                  5        UR                  U	R                  R                  5        GM     UR!                  5         [        S
R                  UR                  5       U5      5        [        SR                  UR                  5       U5      5        [        SR                  ["        R$                  " UR'                  5       S S SS9U5      5        g )Nr      )z.attention.masked_biasz.attention.biasz.rotary_emb.inv_freqHashingweightsT)desctotalunit
unit_scaledisablezsha1      {0}  {1}:{2}zsha256    {0}  {1}:{2}zsha1      {0}  {1}zsha256    {0}  {1}zuuid      {0}  {1}      )bytesversion)hashlibsha1sha256updateUUID_NAMESPACE_LLAMA_CPPr   	enumeratetensorsnameendswithshaper   dataprintformat	hexdigestcloseuuidUUIDdigest)readerfilenamedisable_progress_barno_layerr   r   uuidv5_sha1total_weightsntensorsum_weights_in_tensordimbar
sha1_layersha256_layers                  P/home/james-whalen/.local/lib/python3.13/site-packages/gguf/scripts/gguf_hash.py	gguf_hashr5      sY   <<>D^^F,,.K/556 Mv~~q1	 ;; eff !"<<C!(!  . 2 I]t]q
rC .. ;; eff !"<<C!(!  

() Jfkk../*11*2F2F2H(T_T_`a">>+L 0 01*11,2H2H2JHVaVabcFKK$$%fkk&&'6;;++,1 !6 IIK 


%
%dnn&6
AB	

%
%f&6&6&8(
CD	

%
%diik6H6H6J3B6OYZ&[]e
fg    c                 0   [         R                  " SS9n U R                  S[        SS9  U R                  SSSS	9  U R                  S
SSS	9  U R                  SSSS	9  U R	                  [        [        R                  5      S:  a  S OS/5      n[        R                  " UR                  (       a  [        R                  O[        R                  S9  [        UR                  S5      n[        X!R                  UR                   (       + UR"                  5        g )NzDump GGUF file metadata)descriptionmodelzGGUF format model filename)typehelpz
--no-layer
store_truezexclude per layer hash)actionr;   z	--verbosezincrease output verbosityz--progressbarzenable progressbarr	   z--help)levelr)argparseArgumentParseradd_argumentstr
parse_argslensysargvloggingbasicConfigverboseDEBUGINFOr   r9   r5   progressbarr*   )parserargsr'   s      r4   mainrP   Y   s    $$1JKF
cC_`
C[\
C^_
CWXS]Q%6TXJGDt||gmmN

C(Ffjjd&6&6"6Fr6   __main__)
r'   r   r(   rC   r)   boolr*   rR   returnNone)rS   rT   )
__future__r   r$   r   rH   r@   osrF   pathlibr   r   environ__file__parentexistspathinsertrC   ggufr   	getLoggerloggerr%   r   r5   rP   __name__ r6   r4   <module>rc      s    "     	 
   "**$$x.*?*?*F*F*M*M*T*TW`*`)h)h)j)jHHOOAs4>0077>>?@  
		;	'  99%KL 
8hv	G zF r6   