o
    i                     @  s   d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZd dlm	Z	 d dl
m
Z
 dejvrIe	ejjjjd  rIejd ee	ejjj d dlmZ edZed	ZdddZdddZedkrle  dS dS )    )annotationsN)Path)tqdmNO_LOCAL_GGUFzgguf-py)
GGUFReaderz	gguf-hashz$ef001206-dadc-5f6d-a15f-3359e577d4e5readerr   filenamestrdisable_progress_barboolno_layerreturnNonec                 C  s  t  }t  }t  }|tj d}t| jdD ]\}}	|	j	dr%qd}
|	j
D ]}|
|9 }
q*||
7 }qtd|dd|d}| jD ]_}	|	j	drKqBd}
|	j
D ]}|
|9 }
qP||
 |st  }||	jj td| ||	j t  }||	jj td	| ||	j ||	jj ||	jj ||	jj qB|  td
| | td| | tdtj| d d dd| d S )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)r   r   r
   r   r   r   uuidv5_sha1total_weightsntensorsum_weights_in_tensordimbar
sha1_layersha256_layer r6   S/home/ubuntu/veenaModal/venv/lib/python3.10/site-packages/gguf/scripts/gguf_hash.py	gguf_hash   sD   






*r8   c                  C  s   t jdd} | jdtdd | jdddd	 | jd
ddd	 | jdddd	 | ttjdkr1d ndg}tj	|j
r=tjntjd t|jd}t||j|j |j d S )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_argumentr	   
parse_argslensysargvloggingbasicConfigverboseDEBUGINFOr   r:   r8   progressbarr   )parserargsr   r6   r6   r7   mainY   s   rP   __main__)
r   r   r   r	   r
   r   r   r   r   r   )r   r   )
__future__r   r*   r   rH   rA   osrF   pathlibr   r   environ__file__parentexistspathinsertr	   ggufr   	getLoggerloggerr+   r   r8   rP   __name__r6   r6   r6   r7   <module>   s&   "



;
