
    g                     b    d dl mZmZ dZdZdZdZdZdZd Z	d	 Z
d
 Zd Zd Zd Ze	e
eeeedZy)    )data_gym_to_mergeable_bpe_ranksload_tiktoken_bpez<|endoftext|>z<|fim_prefix|>z<|fim_middle|>z<|fim_suffix|>z<|endofprompt|>zO'(?:[sdmt]|ll|ve|re)| ?\p{L}++| ?\p{N}++| ?[^\s\p{L}\p{N}]++|\s++$|\s+(?!\S)|\sc                  D    t        dddd      } ddt        | t        did	S )
NzIhttps://openaipublic.blob.core.windows.net/gpt-2/encodings/main/vocab.bpezLhttps://openaipublic.blob.core.windows.net/gpt-2/encodings/main/encoder.json@1ce1664773c50f3e0cc8842619a93edc4624525b728b188a9e0be33b7726adc5@196139668be63f3b5d6574427317ae82f612a97c5d1cdaf36ed2256dbf636783)vocab_bpe_fileencoder_json_filevocab_bpe_hashencoder_json_hashgpt2Q  P  nameexplicit_n_vocabpat_strmergeable_ranksspecial_tokens)r   r50k_pat_str	ENDOFTEXTr   s    O/var/www/openai/venv/lib/python3.12/site-packages/tiktoken_ext/openai_public.pyr   r      s8    5bhY\	O !*$e,     c                  @    t        dd      } ddt        | t        didS )NzGhttps://openaipublic.blob.core.windows.net/encodings/r50k_base.tiktoken@306cd27f03c1a714eca7108e03d66b7dc042abe8c258b44c199a7ed9838dd930expected_hash	r50k_baser   r   r   r   r   r   r   s    r   r   r   !   2    'QXO
 !*$e, r   c                  @    t        dd      } ddt        | t        didS )NGhttps://openaipublic.blob.core.windows.net/encodings/p50k_base.tiktoken@94b5ca7dff4d00767bc256fdd1b27e5b17361d7b8a5f968547f9f23eb70d2069r   	p50k_basei  r   r   r   r   s    r   r$   r$   /   r    r   c                  f    t        dd      } t        dt        dt        dt        di}dt
        | |d	S )
Nr"   r#   r   r   r%   ij  ik  	p50k_editr   r   r   r   )r   r   
FIM_PREFIX
FIM_MIDDLE
FIM_SUFFIXr   r   r   s     r   r'   r'   =   sA    'QXO  
E:ujZ_`N*(	 r   c            
      j    t        dd      } t        dt        dt        dt        dt
        di}d	d
| |dS )NzIhttps://openaipublic.blob.core.windows.net/encodings/cl100k_base.tiktoken@223921b76ee99bde995b7ff738513eef100fb51d18c93597a113bcffe865b2a7r   i i i i i cl100k_basezu'(?i:[sdmt]|ll|ve|re)|[^\r\n\p{L}\p{N}]?+\p{L}++|\p{N}{1,3}+| ?[^\s\p{L}\p{N}]++[\r\n]*+|\s++$|\s*[\r\n]|\s+(?!\S)|\sr(   )r   r   r)   r*   r+   ENDOFPROMPTr,   s     r   r/   r/   K   sO    'SXO
 	6FFFVN  P*(	 r   c                  l    t        dd      } t        dt        di}dj                  g d      }d|| |d	S )
NzHhttps://openaipublic.blob.core.windows.net/encodings/o200k_base.tiktoken@446a9538cb6c348e3516120d7c08b09f57c36495e2acfffe59a5bf8b0cfb1a2dr   i? iR |)zi[^\r\n\p{L}\p{N}]?[\p{Lu}\p{Lt}\p{Lm}\p{Lo}\p{M}]*[\p{Ll}\p{Lm}\p{Lo}\p{M}]+(?i:'s|'t|'re|'ve|'m|'ll|'d)?zi[^\r\n\p{L}\p{N}]?[\p{Lu}\p{Lt}\p{Lm}\p{Lo}\p{M}]+[\p{Ll}\p{Lm}\p{Lo}\p{M}]*(?i:'s|'t|'re|'ve|'m|'ll|'d)?z
\p{N}{1,3}z ?[^\s\p{L}\p{N}]+[\r\n/]*z
\s*[\r\n]+z	\s+(?!\S)z\s+
o200k_baser(   )r   r   r0   join)r   r   r   s      r   r4   r4   _   sO    'RXO  f=N hh	

G *(	 r   )r   r   r$   r'   r/   r4   N)tiktoken.loadr   r   r   r)   r*   r+   r0   r   r   r   r$   r'   r/   r4   ENCODING_CONSTRUCTORS r   r   <module>r9      sf    L	


 [ 
 (:  r   