HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //proc/1233/root/usr/local/lib/python3.10/dist-packages/tiktoken/__pycache__/load.cpython-310.pyc
o

;��g��@snddlmZddlZddlZddlZddd�Zd dd
�Zd!d"dd�Z		d#d$dd�Zd%dd�Z	d!d&dd�Z
dS)'�)�annotationsN�blobpath�str�return�bytesc
Cs�|�d�s<|�d�s<zddl}Wnty!}ztd�|�d}~ww|�|d��}|��Wd�S1s7wYddl}|�|�}|��|jS)Nzhttp://zhttps://r�Oblobfile is not installed. Please install it by running `pip install blobfile`.�rb)	�
startswith�blobfile�ImportError�BlobFile�read�requests�get�raise_for_status�content)rr
�e�fr�resp�r�8/usr/local/lib/python3.10/dist-packages/tiktoken/load.py�	read_files$���� �
r�data�
expected_hash�boolcCst�|���}||kS�N)�hashlib�sha256�	hexdigest)rr�actual_hashrrr�
check_hashsr �
str | NonecCs�d}dtjvr
tjd}ndtjvrtjd}nddl}tj�|��d�}d}|dkr/t|�St�|�	���
�}tj�||�}tj�|�rzt|d��}|�
�}Wd�n1sYwY|dusgt||�ri|Szt�|�Wn	tyyYnwt|�}	|r�t|	|�s�td	|�d
|�d���ddl}
z6tj|dd�|d
t|
���d}t|d��
}|�|	�Wd�n1s�wYt�||�W|	Sty�|rԂY|	Sw)NT�TIKTOKEN_CACHE_DIR�DATA_GYM_CACHE_DIRrzdata-gym-cacheF�rz'Hash mismatch for data downloaded from z (expected z<). This may indicate a corrupted download. Please try again.)�exist_ok�.z.tmp�wb)�os�environ�tempfile�path�join�
gettempdirrr�sha1�encoder�exists�openr
r �remove�OSError�
ValueError�uuid�makedirsr�uuid4�write�rename)rr�user_specified_cache�	cache_dirr*�	cache_key�
cache_pathrr�contentsr5�tmp_filenamerrr�read_file_cached sV


�������r@�vocab_bpe_file�encoder_json_file�vocab_bpe_hash�encoder_json_hash�dict[bytes, int]cs>dd�td�D�}dd�|D��d}td�D]}||vr-|�|�|�td|�<|d7}qt|�dks6J�t||���}dd�|�d	�dd
�D�}d�fdd��dd�t|�D�}	t|	�}|D]\}
}||	�|
��|�<|d7}qaddl}|�	t||��}
�fdd�|
�
�D�}|�dd�|�dd�|	|ks�J�|	S)NcSs(g|]}t|���rt|�dkr|�qS)� )�chr�isprintable��.0�brrr�
<listcomp>]s(z3data_gym_to_mergeable_bpe_ranks.<locals>.<listcomp>�cSsi|]}t|�|�qSr)rGrIrrr�
<dictcomp>_sz3data_gym_to_mergeable_bpe_ranks.<locals>.<dictcomp>r�cSsg|]}t|����qSr)�tuple�split)rJ�	merge_strrrrrLjs�
����valuerrrcst�fdd�|D��S)Nc3s�|]}�|VqdSrrrI��data_gym_byte_to_byterr�	<genexpr>ms�zKdata_gym_to_mergeable_bpe_ranks.<locals>.decode_data_gym.<locals>.<genexpr>�r)rUrVrr�decode_data_gymlsz8data_gym_to_mergeable_bpe_ranks.<locals>.decode_data_gymcSsi|]
\}}t|g�|�qSrrY)rJ�irKrrrrNpscsi|]	\}}�|�|�qSrr)rJ�k�v)rZrrrN}ss
<|endoftext|>s<|startoftext|>)rUrrr)�range�appendrG�lenr@�decoderQ�	enumerate�json�loads�items�pop)rArBrCrD�rank_to_intbyte�nrK�vocab_bpe_contents�
bpe_merges�	bpe_ranks�first�secondrc�encoder_json�encoder_json_loadedr)rWrZr�data_gym_to_mergeable_bpe_ranksVs2
�
rprk�tiktoken_bpe_file�Nonec
Cs�zddl}Wnty}ztd�|�d}~ww|�|d��*}t|��dd�d�D]\}}|�t�|�dt|��	�d�q)Wd�dS1sKwYdS)	Nrrr'cSs|dS)NrOr)�xrrr�<lambda>�sz#dump_tiktoken_bpe.<locals>.<lambda>)�key� �
)
r
rr�sortedrer8�base64�	b64encoderr/)rkrqr
rr�token�rankrrr�dump_tiktoken_bpe�s����&�"�r}cCsvt||�}i}|��D]-}|sqz|��\}}t|�|t�|�<Wqty8}ztd|�d|���|�d}~ww|S)NzError parsing line z in )r@�
splitlinesrQ�intry�	b64decode�	Exceptionr4)rqrr>�ret�liner{r|rrrr�load_tiktoken_bpe�s
��r�)rrrr)rrrrrrr)rrrr!rr)NN)
rArrBrrCr!rDr!rrE)rkrErqrrrr)rqrrr!rrE)�
__future__rryrr(rr r@rpr}r�rrrr�<module>s

9�
0