§
    	 @gT  ã                  ór   — 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Zdd„Z	dd„Z
dd„Zdd„Zdd„ZdS )é    )ÚannotationsNÚblobpathÚstrÚreturnÚbytesc                óˆ  — |                       d¦  «        s|                       d¦  «        sj	 dd l}n"# t          $ r}t          d¦  «        |‚d }~ww xY w|                     | d¦  «        5 }|                     ¦   «         cd d d ¦  «         S # 1 swxY w Y   t          j        | ¦  «        }|                     ¦   «          |j        S )Nzhttp://zhttps://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)r   r   ÚeÚfÚresps        úA/var/www/piapp/venv/lib/python3.11/site-packages/tiktoken/load.pyÚ	read_filer      s  € Ø×Ò˜yÑ)Ô)ð °(×2EÒ2EÀjÑ2QÔ2Qð ð	ØˆOˆOˆOˆOøÝð 	ð 	ð 	ÝØañô àðøøøøð	øøøð ×Ò˜x¨Ñ.Ô.ð 	°!Ø—6’6‘8”8ð	ð 	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ Œ<˜Ñ!Ô!€DØ×ÒÑÔÐØŒ<Ðs&   ¬1 ±
A»AÁAÁ)B
Â
BÂBc                ó¼  — dt           j        v rt           j        d         }nRdt           j        v rt           j        d         }n1t           j                             t	          j        ¦   «         d¦  «        }|dk    rt          | ¦  «        S t          j        |  	                    ¦   «         ¦  «         
                    ¦   «         }t           j                             ||¦  «        }t           j                             |¦  «        r<t          |d¦  «        5 }|                     ¦   «         cd d d ¦  «         S # 1 swxY w Y   t          | ¦  «        }t          j        |d¬¦  «         |dz   t          t!          j        ¦   «         ¦  «        z   d	z   }t          |d
¦  «        5 }|                     |¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        ||¦  «         |S )NÚTIKTOKEN_CACHE_DIRÚDATA_GYM_CACHE_DIRzdata-gym-cacheÚ r
   T)Úexist_okú.z.tmpÚwb)ÚosÚenvironÚpathÚjoinÚtempfileÚ
gettempdirr   ÚhashlibÚsha1ÚencodeÚ	hexdigestÚexistsÚopenr   Úmakedirsr   ÚuuidÚuuid4ÚwriteÚrename)r   Ú	cache_dirÚ	cache_keyÚ
cache_pathr   ÚcontentsÚtmp_filenames          r   Úread_file_cachedr6      s  € Ø�rœzÐ)Ð)Ý”JÐ3Ô4ˆ	ˆ	Ø	¥¤Ð	+Ð	+Ý”JÐ3Ô4ˆ	ˆ	å”G—L’L¥Ô!4Ñ!6Ô!6Ð8HÑIÔIˆ	à�B‚€å˜Ñ"Ô"Ð"å”˜XŸ_š_Ñ.Ô.Ñ/Ô/×9Ò9Ñ;Ô;€Iå”—’˜i¨Ñ3Ô3€JÝ	„w‡~‚~�jÑ!Ô!ð Ý�*˜dÑ#Ô#ð 	 qØ—6’6‘8”8ð	ð 	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ ˜Ñ"Ô"€Hå„K�	 DÐ)Ñ)Ô)Ð)Ø Ñ#¥c­$¬*©,¬,Ñ&7Ô&7Ñ7¸&Ñ@€LÝ	ˆl˜DÑ	!Ô	!ð  QØ	�Š�ÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð å„Iˆl˜JÑ'Ô'Ð'à€Os$   ÄD1Ä1D5Ä8D5ÆF<Æ<G ÇG Úvocab_bpe_fileÚencoder_json_fileúdict[bytes, int]c                ó0  ‡‡— d„ t          d¦  «        D ¦   «         }d„ |D ¦   «         Šd}t          d¦  «        D ]5}||vr/|                     |¦  «         |‰t          d|z   ¦  «        <   |dz  }Œ6t          |¦  «        dk    sJ ‚t	          | ¦  «                             ¦   «         }d„ |                     d¦  «        dd…         D ¦   «         }dˆfd„Šd„ t          |¦  «        D ¦   «         }t          |¦  «        }|D ]$\  }}	|| ‰|¦  «         ‰|	¦  «        z   <   |dz  }Œ%t          j	        t	          |¦  «        ¦  «        }
ˆfd„|
 
                    ¦   «         D ¦   «         }|                     dd ¦  «         |                     dd ¦  «         ||k    sJ ‚|S )Nc                óz   — g | ]8}t          |¦  «                             ¦   «         ¯#t          |¦  «        d k    ¯6|‘Œ9S )ú )ÚchrÚisprintable©Ú.0Úbs     r   ú
<listcomp>z3data_gym_to_mergeable_bpe_ranks.<locals>.<listcomp>?   s;   € ÐXÐXÐX˜Qµ°Q±´×1CÒ1CÑ1EÔ1EÐXÍ#ÈaÉ&Ì&ÐTWÊ-È-�qÈ-È-È-ó    é   c                ó.   — i | ]}t          |¦  «        |“ŒS © )r=   r?   s     r   ú
<dictcomp>z3data_gym_to_mergeable_bpe_ranks.<locals>.<dictcomp>A   s    € Ð@Ð@Ð@¨1�S ™VœV QÐ@Ð@Ð@rC   r   é   c                óP   — g | ]#}t          |                     ¦   «         ¦  «        ‘Œ$S rF   )ÚtupleÚsplit)r@   Ú	merge_strs     r   rB   z3data_gym_to_mergeable_bpe_ranks.<locals>.<listcomp>L   s*   € ÐaÐaÐa¨y•%˜	ŸšÑ)Ô)Ñ*Ô*ÐaÐaÐarC   ú
éÿÿÿÿÚvaluer   r   r   c                ó:   •— t          ˆfd„| D ¦   «         ¦  «        S )Nc              3  ó(   •K  — | ]}‰|         V — Œd S ©NrF   )r@   rA   Údata_gym_byte_to_bytes     €r   ú	<genexpr>zKdata_gym_to_mergeable_bpe_ranks.<locals>.decode_data_gym.<locals>.<genexpr>O   s)   øè è € Ð=Ð=°!Ð*¨1Ô-Ð=Ð=Ð=Ð=Ð=Ð=rC   ©r   )rO   rS   s    €r   Údecode_data_gymz8data_gym_to_mergeable_bpe_ranks.<locals>.decode_data_gymN   s&   ø€ ÝÐ=Ð=Ð=Ð=°uÐ=Ñ=Ô=Ñ=Ô=Ð=rC   c                ó6   — i | ]\  }}t          |g¦  «        |“ŒS rF   rU   )r@   ÚirA   s      r   rG   z3data_gym_to_mergeable_bpe_ranks.<locals>.<dictcomp>R   s&   € ÐFÐFÐF¡4 1 a•˜�s‘”˜QÐFÐFÐFrC   c                ó.   •— i | ]\  }} ‰|¦  «        |“ŒS rF   rF   )r@   ÚkÚvrV   s      €r   rG   z3data_gym_to_mergeable_bpe_ranks.<locals>.<dictcomp>]   s)   ø€ ÐRÐRÐR±T°Q¸˜?˜?¨1Ñ-Ô-¨qÐRÐRÐRrC   s   <|endoftext|>s   <|startoftext|>)rO   r   r   r   )ÚrangeÚappendr=   Úlenr6   ÚdecoderK   Ú	enumerateÚjsonÚloadsÚitemsÚpop)r7   r8   Úrank_to_intbyteÚnrA   Úvocab_bpe_contentsÚ
bpe_mergesÚ	bpe_ranksÚfirstÚsecondÚencoder_jsonÚencoder_json_loadedrS   rV   s               @@r   Údata_gym_to_mergeable_bpe_ranksrn   ;   sÿ  øø€ ð YÐX¥%¨¡+¤+ÐXÑXÔX€Oà@Ð@°Ð@Ñ@Ô@ÐØ	€AÝ�4‰[Œ[ð ð ˆØ�OÐ#Ð#Ø×"Ò" 1Ñ%Ô%Ð%Ø34Ð!¥# d¨Q¡h¡-¤-Ñ0Ø�‰FˆAøÝˆÑÔ 4Ò'Ð'Ð'Ð'õ *¨.Ñ9Ô9×@Ò@ÑBÔBÐØaÐaÐ<N×<TÒ<TÐUYÑ<ZÔ<ZÐ[\Ð]_Ð[_Ô<`ÐaÑaÔa€Jð>ð >ð >ð >ð >ð >ð GÐF­9°_Ñ+EÔ+EÐFÑFÔF€IåˆI‰Œ€AØ#ð ð ‰ˆˆvØFGˆ	�/�/ %Ñ(Ô(¨?¨?¸6Ñ+BÔ+BÑBÑCØ	ˆQ‰ˆˆõ
 ”:Õ.Ð/@ÑAÔAÑBÔB€LØRÐRÐRÐR¸\×=OÒ=OÑ=QÔ=QÐRÑRÔRÐà×ÒÐ,¨dÑ3Ô3Ð3Ø×ÒÐ.°Ñ5Ô5Ð5ØÐ+Ò+Ð+Ð+Ð+àÐrC   ri   Útiktoken_bpe_fileÚNonec                ó¨  — 	 dd l }n"# t          $ r}t          d¦  «        |‚d }~ww xY w|                     |d¦  «        5 }t          |                      ¦   «         d„ ¬¦  «        D ]T\  }}|                     t          j        |¦  «        dz   t          |¦  «         	                    ¦   «         z   dz   ¦  «         ŒU	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r	   r   c                ó   — | d         S )NrH   rF   )Úxs    r   ú<lambda>z#dump_tiktoken_bpe.<locals>.<lambda>n   s
   € À1ÀQÄ4€ rC   )Úkeyó    ó   
)
r   r   r   Úsortedrc   r/   Úbase64Ú	b64encoder   r(   )ri   ro   r   r   r   ÚtokenÚranks          r   Údump_tiktoken_bper}   f   sK  € ðØˆˆˆˆøÝð ð ð ÝØ]ñ
ô 
àð	øøøøðøøøð 
×	Ò	Ð,¨dÑ	3Ô	3ð Q°qÝ! )§/¢/Ñ"3Ô"3¸¸ÐHÑHÔHð 	Qð 	Q‰KˆE�4Ø�GŠG•FÔ$ UÑ+Ô+¨dÑ2µS¸±Y´Y×5EÒ5EÑ5GÔ5GÑGÈ%ÑOÑPÔPÐPÐPð	QðQð Qð Qñ Qô Qð Qð Qð Qð Qð Qð Qð Qøøøð Qð Qð Qð Qð Qð Qs"   ‚ ‡
&‘!¡&¿A:CÃCÃCc                óp   — t          | ¦  «        }d„ d„ |                     ¦   «         D ¦   «         D ¦   «         S )Nc                óX   — i | ]'\  }}t          j        |¦  «        t          |¦  «        “Œ(S rF   )ry   Ú	b64decodeÚint)r@   r{   r|   s      r   rG   z%load_tiktoken_bpe.<locals>.<dictcomp>u   s?   € ð ð ð áˆE�4õ 	Ô˜ÑÔ¥ T¡¤ðð ð rC   c              3  óB   K  — | ]}|¯|                      ¦   «         V — Œd S rR   )rK   )r@   Úlines     r   rT   z$load_tiktoken_bpe.<locals>.<genexpr>w   s/   è è € ÐSÐS¨TÈdÐS˜DŸJšJ™LœLÐSÐSÐSÐSÐSÐSrC   )r6   Ú
splitlines)ro   r4   s     r   Úload_tiktoken_bper…   r   sK   € åÐ 1Ñ2Ô2€Hðð àSÐS°X×5HÒ5HÑ5JÔ5JÐSÑSÔSðñ ô ð rC   )r   r   r   r   )r7   r   r8   r   r   r9   )ri   r9   ro   r   r   rp   )ro   r   r   r9   )Ú
__future__r   ry   r&   ra   r    r$   r-   r   r   r6   rn   r}   r…   rF   rC   r   ú<module>r‡      sÉ   ðØ "Ð "Ð "Ð "Ð "Ð "à €€€Ø €€€Ø €€€Ø 	€	€	€	Ø €€€Ø €€€à €€€ðð ð ð ð ð ð ð ð<(ð (ð (ð (ðV	Qð 	Qð 	Qð 	Qðð ð ð ð ð rC   