
    	 @g
                        U d dl mZ d dlZd dlZd dlZd dlZd dlmZmZm	Z	m
Z
 d dlZd dlmZ  ej                    Zi Zded<   daded<    ej                    dd            ZddZddZddZdS )    )annotationsN)AnyCallableOptionalSequence)Encodingzdict[str, Encoding]	ENCODINGSz1Optional[dict[str, Callable[[], dict[str, Any]]]]ENCODING_CONSTRUCTORSreturnSequence[str]c                     g } t          j        t          j        t          j        dz             }|D ]\  }}}|                     |           | S )N.)pkgutiliter_modulestiktoken_ext__path____name__append)modsplugin_mods_mod_names       E/var/www/piapp/venv/lib/python3.11/site-packages/tiktoken/registry.py_available_plugin_modulesr      sV     D&|'<l>SVY>YZZK%  8QHK    Nonec            	        t           5  t          	 d d d            d S i at                      D ]} t          j        |           }	 |j        }n&# t
          $ r}t          d|  d          |d }~ww xY w|                                D ]-\  }}|t          v rt          d| d|            |t          |<   .	 d d d            d S # 1 swxY w Y   d S )Nztiktoken plugin z& does not define ENCODING_CONSTRUCTORSzDuplicate encoding name z in tiktoken plugin )_lockr
   r   	importlibimport_moduleAttributeError
ValueErroritems)r   modconstructorseenc_nameconstructors         r   _find_constructorsr)       s   	 > > ,> > > > > > > > !#133 	> 	>H)(33C"8!    WxWWW  *6););)=)= > >%+444$[8[[QY[[   3>%h//>	>> > > > > > > > > > > > > > > > > >s;   	C&CAC
A0A++A00ACCCencoding_namestrr   c                   | t           v rt           |          S t          5  | t           v rt           |          cd d d            S t          t                       t          J | t          vr!t	          d|  dt                                 t          |          }t          di  |            }|t           | <   |cd d d            S # 1 swxY w Y   d S )NzUnknown encoding z. Plugins found:  )r	   r   r
   r)   r"   r   r   )r*   r(   encs      r   get_encodingr/   7   sG   	!!''	  I%%]+        !(   (444 555aMaaD]D_D_aa   ,M:''''#&	- !                 s   CA4CC	C	list[str]c                     t           5  t          t                       t          J t          t                    cd d d            S # 1 swxY w Y   d S )N)r   r
   r)   listr-   r   r   list_encoding_namesr3   N   s    	 + + (   (444)**	+ + + + + + + + + + + + + + + + + +s   2AAA)r   r   )r   r   )r*   r+   r   r   )r   r0   )
__future__r   	functoolsr   r   	threadingtypingr   r   r   r   r   tiktoken.corer   RLockr   r	   __annotations__r
   	lru_cacher   r)   r/   r3   r-   r   r   <module>r<      s-   " " " " " " "              4 4 4 4 4 4 4 4 4 4 4 4     " " " " " "	!#	 # # # #KO  O O O O 
 
 
 
> > > >.   .+ + + + + +r   