Ë
    ÛÓ^jM  ã                   óŽ   — d dl mZmZmZmZmZ d dlmZ ddlm	Z	 ddl
mZ  ej                  e«      ZdddœZ G d	„ d
e	«      Zd
gZy)é    )Ú	TokenizerÚdecodersÚnormalizersÚpre_tokenizersÚ
processors)ÚBPEé   )ÚTokenizersBackend)Úloggingz
vocab.jsonz
merges.txt)Ú
vocab_fileÚmerges_filec                   ó    ‡ — e Zd ZdZeZddgZeZ	 	 	 	 	 	 	 	 	 dde	e
e	ef   z  dz  de	ee	   z  dz  de	de	d	e	d
e	de	de	dz  de	dz  fˆ fd„Zˆ xZS )ÚHerbertTokenizeraæ  
    Construct a BPE tokenizer for HerBERT (backed by HuggingFace's tokenizers library).

    Peculiarities:

    - uses BERT's pre-tokenizer: BertPreTokenizer splits tokens on spaces, and also on punctuation. Each occurrence of
      a punctuation character will be treated separately.

    This tokenizer inherits from [`TokenizersBackend`] which contains most of the methods. Users should refer to the
    superclass for more information regarding methods.

    Args:
        vocab_file (`str`):
            Path to the vocabulary file.
        merges_file (`str`):
            Path to the merges file.
        cls_token (`str`, *optional*, defaults to `"<s>"`):
            The classifier token.
        unk_token (`str`, *optional*, defaults to `"<unk>"`):
            The unknown token.
        pad_token (`str`, *optional*, defaults to `"<pad>"`):
            The padding token.
        mask_token (`str`, *optional*, defaults to `"<mask>"`):
            The mask token.
        sep_token (`str`, *optional*, defaults to `"</s>"`):
            The separator token.
        vocab (`str`, `dict` or `list`, *optional*):
            Custom vocabulary dictionary.
        merges (`str` or `list[str]`, *optional*):
            Custom merges list.
    Ú	input_idsÚattention_maskNÚvocabÚmergesÚ	cls_tokenÚ	unk_tokenÚ	pad_tokenÚ
mask_tokenÚ	sep_tokenr   r   c
           
      óD  •— |�|nt        |«      di| _        |xs g | _        t        t	        | j                  | j                  d t        |«      d¬«      «      | _        t        j                  dddd¬«      | j
                  _        t        j                  «       | j
                  _        t        j                  d¬«      | j
                  _        t        ‰| �@  d|||||dœ|
¤Ž t#        j$                  | j&                  d	f| j(                  df¬
«      | j
                  _        y )Nr   z</w>)r   r   Údropoutr   Úend_of_word_suffixFT)Ú	lowercaseÚstrip_accentsÚ
clean_textÚhandle_chinese_chars)Úsuffix)r   r   r   r   r   é   )ÚsepÚcls© )ÚstrÚ_vocabÚ_mergesr   r   Ú
_tokenizerr   ÚBertNormalizerÚ
normalizerr   ÚBertPreTokenizerÚpre_tokenizerr   Ú
BPEDecoderÚdecoderÚsuperÚ__init__r   ÚBertProcessingr   r   Úpost_processor)Úselfr   r   r   r   r   r   r   r   r   ÚkwargsÚ	__class__s              €ú{/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/transformers/models/herbert/tokenization_herbert.pyr0   zHerbertTokenizer.__init__A   s  ø€ ð  %Ð0‘e´s¸9³~ÀqÐ6IˆŒØ’| ˆŒÜ#ÜØ—k‘kØ—|‘|ØÜ˜i›.Ø#)ôó
ˆŒô &1×%?Ñ%?Ø¨5¸TÐX\ô&
ˆ�‰Ô"ô )7×(GÑ(GÓ(Iˆ�‰Ô%Ü"*×"5Ñ"5¸VÔ"Dˆ�‰Ôä‰Ñð 	
ØØØØ!Øñ	
ð ò	
ô *4×)BÑ)BØ—‘ Ð#Ø—‘ Ð#ô*
ˆ�‰Õ&ó    )	NNz<s>z<unk>z<pad>z<mask>z</s>NN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚVOCAB_FILES_NAMESÚvocab_files_namesÚmodel_input_namesr   Úmodelr%   ÚdictÚintÚlistr0   Ú__classcell__)r5   s   @r6   r   r      sÈ   ø„ ñð@ *ÐØ$Ð&6Ð7ÐØ€Eð .2Ø)-ØØ Ø Ø"ØØ!%Ø"&ñ+
à�T˜#˜s˜(‘^Ñ# dÑ*ð+
ð �d˜3‘i‘ $Ñ&ð+
ð ð	+
ð
 ð+
ð ð+
ð ð+
ð ð+
ð ˜$‘Jð+
ð ˜4‘Z÷+
ñ +
r7   r   N)Ú
tokenizersr   r   r   r   r   Útokenizers.modelsr   Útokenization_utils_tokenizersr
   Úutilsr   Ú
get_loggerr8   Úloggerr<   r   Ú__all__r$   r7   r6   ú<module>rK      sP   ð÷  TÕ SÝ !å >Ý ð 
ˆ×	Ñ	˜HÓ	%€à#/ÀÑMÐ ôP
Ð(ô P
ðf Ð
�r7   