
    Uhx                        U d Z ddlZddlZddlZddlZddlmZ ddlmZm	Z	m
Z
mZmZ ddlmZ ddlmZmZ ddlmZ dd	lmZ dd
lmZ ddlmZ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$m%Z%m&Z&m'Z'm(Z(  e       rddl)m*Z* ndZ* ejV                  e,      Z-er e       Z.ee/ee
e/   e
e/   f   f   e0d<   ne eg d e       rdnd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffdd  e       rd!nd e       rd"ndffd#d$d e       rdndffd% e       rd&nddffd'd(d) e       rd*nd e       rd+ndffd,d- e       rd.ndffd/d0d e       rd1ndffd2d3d4d e       rdndffd5d6 e       rd7ndffd8d e       rd9ndffd:d; e       rd<ndffd=d e       rdndffd>d? e       rd@nd e       rdAndffdBdC e       rdnd e       rdndffdDd e       rdndffdEd; e       rd<ndffdFdG e       rdHndffdIdG e       rdHndffdJdK e       rdLnd e       rdMndffdNdO e       rdPndffdQd e       rdndffdRd e       rdndffdSd e       rdndffdTdU e       rdVndffdW e       rdXnd e       rdYndffdZd[d\d]d; e       rd<ndffd^d6 e       rd7ndffd_d` e       rdandffdb e       rdcnd e       rddndffde e       rdnd e       rdndffdf e       rdnd e       rdndffdgdh e       rdindffdjdk e       rdlndffdmdn e       rdondffdpd6 e       rd7ndffdqd e       rdndffdr e       rdsnddffdtdud e       rd1ndffdvd e       rdwndffdx e       rdynddffdzd{d| e       rd}ndffd~dd e       rdndffd e       rdnd e       rdndffd e       rdnd e       rdndffd e       rdnd e       rdndffd e       rdnd e       rdndffdd e       rdndffdd e       rd1ndffdd e       rd1ndffd e       rdnddffdd6 e       rd7ndffdd6 e       rd7ndffdd6 e       rd7ndffdd e       rdwndffddd6 e       rd7ndffddd e       rdndffddG e       rdHndffdd e       rd1ndffdd e       rdndffddd; e       rd<ndffdd e       rdndffdd e       rdndffdd e       rdndffdd6 e       rd7ndffdd6 e       rd7ndffdd e       rdndffd e       rdnd e       rdndffdd e       rdndffd e       rdnd e       rdndffdd e       rdnd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffd e       rdnd e       rdndffd e       rdnd e       rdndffd e       rdnd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffd e       rdnd e       rdndffdȑdd e       rdndffd e       rdnddffdd e       rdwndffdd e       rdwndffd e       rdnddffd e       rdnd e       rdndffd e       rdnd e       rdndffdd; e       rd<ndffdd e       rdndffdڑd e       rdnd e       rdndffd e       rdnd e       rdndffdd e       rdndffd e       rdnddffdd e       rdndffdd e       rd1ndffdd e       rd1ndffdd e       rd1ndffdd e       rdndffdd e       rdwndffdd; e       rd<ndffd e       rdnd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffddd e       rd1ndffdd e       rdndffd e       rdnd e       rdndffd e       rdnd e       rdndffd e       rdnd e       rdndffdd e       rdwndffdd e       rdwndffdd e       rdwndffddG e       rdHndffddG e       rdHndffd d e       rdndffdd6 e       rd7ndffddG e       rdHndffddG e       rdHndffdd e       rdndffd e       rd-nd e       rd.ndffd e       rd-nd e       rd.ndffd	d
 e       rdnd e       rdndffddO e       rdPndffdd e       rdndffdd e       rdndffddd e       rdndffdd e       rd1ndffd e       rdnddffddd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffdd e       rdndffddd e       rd ndffd! e       rdnd e       rdndffd" e       rd#nd e       rd$ndffd% e       rd&nd e       rd'ndffd(d) e       rd*ndffd+d; e       rd<ndffd,d; e       rd<ndffd-d.d/ e       rd0ndffd1d e       rdwndffd2 e       rd3nd e       rd4ndffd5 e       rd3nd e       rd4ndffd6 e       rdnd e       rdndffd7 e       rd8nddffd9 e       rdnd e       rdndffd: e       rd;nddffd<d= e       rd>nddffd?d@dA e       rdBndffdCd e       rdwndffdDd6 e       rd7ndffdE e       rdnd e       rdndffdF e       rdnd e       rdndffdGdHdIdJd e       rdndffdK e       rdLnd e       rdMndffdN e       rdnd e       rdndffdOd e       rdndffdPd e       rdndffdQd e       rdndffdRd e       rdndffdSdTdUdVdWdXdY e       rdZndffd[dG e       rdHndffd\ e       rd]nd e       rd^ndffd_d` e       rdanddffdb e       rdnd e       rdndffdc e       rdnd e       rdndffdd e       rdend e       rdfndffdg e       rdnd e       rdndffdh e       rdnd e       rdndffdi e       rdnd e       rdndffdj e       rdnd e       rdndff      Z. e"e$e.      Z1 e$jd                         D  ci c]  \  } }|| 
 c}} Z3dke/fdlZ4	 	 	 	 	 	 	 	 dzdmee/ejj                  f   dne
ee/ejj                  f      doe6dpe
e6   dqe
e	e/e/f      dre
ee6e/f      dse
e/   dte6due/fdvZ7 G dw dx      Z8dydxgZ9yc c}} w ({  zAuto Tokenizer class.    N)OrderedDict)TYPE_CHECKINGDictOptionalTupleUnion   )PretrainedConfig)get_class_from_dynamic_moduleresolve_trust_remote_code)load_gguf_checkpoint)PreTrainedTokenizer)TOKENIZER_CONFIG_FILE)cached_fileextract_commit_hashis_g2p_en_availableis_sentencepiece_availableis_tokenizers_availablelogging   )EncoderDecoderConfig   )_LazyAutoMapping)CONFIG_MAPPING_NAMES
AutoConfigconfig_class_to_model_typemodel_type_to_module_name!replace_list_option_in_docstrings)PreTrainedTokenizerFastTOKENIZER_MAPPING_NAMESalbertAlbertTokenizerAlbertTokenizerFastalignBertTokenizerBertTokenizerFastariaLlamaTokenizerLlamaTokenizerFast
aya_visionCohereTokenizerFastbark)bart)BartTokenizerBartTokenizerFastbarthezBarthezTokenizerBarthezTokenizerFast)bartpho)BartphoTokenizerNbertzbert-generationBertGenerationTokenizer)zbert-japanese)BertJapaneseTokenizerN)bertweet)BertweetTokenizerNbig_birdBigBirdTokenizerBigBirdTokenizerFastbigbird_pegasusPegasusTokenizerPegasusTokenizerFast)biogpt)BioGptTokenizerNbitnetr   )
blenderbot)BlenderbotTokenizerBlenderbotTokenizerFast)zblenderbot-small)BlenderbotSmallTokenizerNblipzblip-2GPT2TokenizerGPT2TokenizerFastbloomBloomTokenizerFastbridgetowerRobertaTokenizerRobertaTokenizerFastbros)byt5)ByT5TokenizerN	camembertCamembertTokenizerCamembertTokenizerFast)canine)CanineTokenizerN	chameleonchinese_clipclapclipCLIPTokenizerCLIPTokenizerFastclipseg)clvp)ClvpTokenizerN
code_llamaCodeLlamaTokenizerCodeLlamaTokenizerFastcodegenCodeGenTokenizerCodeGenTokenizerFastcoherecohere2colpaliconvbertConvBertTokenizerConvBertTokenizerFastcpmCpmTokenizerCpmTokenizerFast)cpmant)CpmAntTokenizerN)ctrl)CTRLTokenizerN)zdata2vec-audioWav2Vec2CTCTokenizerNzdata2vec-textdbrxdebertaDebertaTokenizerDebertaTokenizerFastz
deberta-v2DebertaV2TokenizerDebertaV2TokenizerFastdeepseek_v3	diffllama
distilbertDistilBertTokenizerDistilBertTokenizerFastdprDPRQuestionEncoderTokenizerDPRQuestionEncoderTokenizerFastelectraElectraTokenizerElectraTokenizerFastemu3ernieernie_mErnieMTokenizer)esm)EsmTokenizerNfalconfalcon_mambaGPTNeoXTokenizerFastfastspeech2_conformerFastSpeech2ConformerTokenizer)flaubert)FlaubertTokenizerNfnetFNetTokenizerFNetTokenizerFast)fsmt)FSMTTokenizerNfunnelFunnelTokenizerFunnelTokenizerFastgemmaGemmaTokenizerGemmaTokenizerFastgemma2gemma3gemma3_textgitglmglm4zgpt-sw3GPTSw3Tokenizergpt2gpt_bigcodegpt_neogpt_neox)gpt_neox_japanese)GPTNeoXJapaneseTokenizerNgptj)zgptsan-japanese)GPTSanJapaneseTokenizerNzgrounding-dinogroupvitheliumherbertHerbertTokenizerHerbertTokenizerFast)hubertrs   ibertideficsidefics2idefics3instructblipinstructblipvideointernvlQwen2TokenizerQwen2TokenizerFastjambajanusjetmoe)jukebox)JukeboxTokenizerNzkosmos-2XLMRobertaTokenizerXLMRobertaTokenizerFastlayoutlmLayoutLMTokenizerLayoutLMTokenizerFast
layoutlmv2LayoutLMv2TokenizerLayoutLMv2TokenizerFast
layoutlmv3LayoutLMv3TokenizerLayoutLMv3TokenizerFast	layoutxlmLayoutXLMTokenizerLayoutXLMTokenizerFastledLEDTokenizerLEDTokenizerFastliltllamallama4llama4_textllava
llava_nextllava_next_videollava_onevision
longformerLongformerTokenizerLongformerTokenizerFastlongt5T5TokenizerT5TokenizerFast)luke)LukeTokenizerNlxmertLxmertTokenizerLxmertTokenizerFastm2m_100M2M100Tokenizermambamamba2marianMarianTokenizermbartMBartTokenizerMBartTokenizerFastmbart50MBart50TokenizerMBart50TokenizerFastmegazmegatron-bert)zmgp-str)MgpstrTokenizerNmistralmixtralmllamamlukeMLukeTokenizer
mobilebertMobileBertTokenizerMobileBertTokenizerFast
modernbert	moonshinemoshimpnetMPNetTokenizerMPNetTokenizerFastmptmramt5MT5TokenizerMT5TokenizerFastmusicgenmusicgen_melodymvpMvpTokenizerMvpTokenizerFast)myt5)MyT5TokenizerNnemotronnezhanllbNllbTokenizerNllbTokenizerFastznllb-moenystromformerolmoolmo2olmoezomdet-turbo	oneformerz
openai-gptOpenAIGPTTokenizerOpenAIGPTTokenizerFastoptowlv2owlvit	paligemmapegasus	pegasus_x)	perceiver)PerceiverTokenizerN	persimmonphiphi3phimoe)phobert)PhobertTokenizerN
pix2structpixtralplbartPLBartTokenizer)
prophetnet)ProphetNetTokenizerNqdqbertqwen2qwen2_5_omni
qwen2_5_vlqwen2_audio	qwen2_moeqwen2_vlqwen3	qwen3_moe)rag)RagTokenizerNrealmRealmTokenizerRealmTokenizerFastrecurrent_gemmareformerReformerTokenizerReformerTokenizerFastrembertRemBertTokenizerRemBertTokenizerFast	retribertRetriBertTokenizerRetriBertTokenizerFastrobertazroberta-prelayernorm)roc_bert)RoCBertTokenizerNroformerRoFormerTokenizerRoFormerTokenizerFastrwkvseamless_m4tSeamlessM4TTokenizerSeamlessM4TTokenizerFastseamless_m4t_v2shieldgemma2siglipSiglipTokenizersiglip2speech_to_textSpeech2TextTokenizer)speech_to_text_2)Speech2Text2TokenizerNspeecht5SpeechT5Tokenizer)splinter)SplinterTokenizerSplinterTokenizerFastsqueezebertSqueezeBertTokenizerSqueezeBertTokenizerFaststablelm
starcoder2switch_transformerst5)tapas)TapasTokenizerN)tapex)TapexTokenizerN)z
transfo-xl)TransfoXLTokenizerNtvpudopUdopTokenizerUdopTokenizerFastumt5video_llavaviltvipllavavisual_bert)vits)VitsTokenizerN)wav2vec2rs   )zwav2vec2-bertrs   )zwav2vec2-conformerrs   )wav2vec2_phoneme)Wav2Vec2PhonemeCTCTokenizerNwhisperWhisperTokenizerWhisperTokenizerFastxclipxglmXGLMTokenizerXGLMTokenizerFast)xlm)XLMTokenizerNzxlm-prophetnetXLMProphetNetTokenizerzxlm-robertazxlm-roberta-xlxlnetXLNetTokenizerXLNetTokenizerFastxmodyosozambazamba2
class_namec                    | dk(  rt         S t        j                         D ]<  \  }}| |v st        |      }t	        j
                  d| d      }	 t        ||       c S  t        j                  j                         D ]"  \  }}|D ]  }t        |dd       | k(  s|c c S  $ t	        j
                  d      }t        ||       rt        ||       S y # t        $ r Y w xY w)Nr   .ztransformers.models__name__transformers)r   r    itemsr   	importlibimport_modulegetattrAttributeErrorTOKENIZER_MAPPING_extra_contenthasattr)r  module_name
tokenizersmoduleconfig	tokenizermain_modules          |/var/www/catia.catastroantioquia-mas.com/valormas/lib/python3.12/site-packages/transformers/models/auto/tokenization_auto.pytokenizer_class_from_namer    s    ..&&#:#@#@#B Z#3K@K,,q->@UVFvz22 0>>DDF !
# 	!Iy*d3zA  	!! )).9K{J'{J// " s   C	CCpretrained_model_name_or_path	cache_dirforce_downloadresume_downloadproxiestokenrevisionlocal_files_only	subfolderc	                    |	j                  dd      }
|
)t        j                  dt               |t	        d      |
}|	j                  dd      }t        | t        ||||||||ddd|      }|t        j                  d       i S t        ||      }t        |d	
      5 }t        j                  |      }ddd       |d<   |S # 1 sw Y   xY w)a	  
    Loads the tokenizer configuration from a pretrained model tokenizer configuration.

    Args:
        pretrained_model_name_or_path (`str` or `os.PathLike`):
            This can be either:

            - a string, the *model id* of a pretrained model configuration hosted inside a model repo on
              huggingface.co.
            - a path to a *directory* containing a configuration file saved using the
              [`~PreTrainedTokenizer.save_pretrained`] method, e.g., `./my_model_directory/`.

        cache_dir (`str` or `os.PathLike`, *optional*):
            Path to a directory in which a downloaded pretrained model configuration should be cached if the standard
            cache should not be used.
        force_download (`bool`, *optional*, defaults to `False`):
            Whether or not to force to (re-)download the configuration files and override the cached versions if they
            exist.
        resume_download:
            Deprecated and ignored. All downloads are now resumed by default when possible.
            Will be removed in v5 of Transformers.
        proxies (`Dict[str, str]`, *optional*):
            A dictionary of proxy servers to use by protocol or endpoint, e.g., `{'http': 'foo.bar:3128',
            'http://hostname': 'foo.bar:4012'}.` The proxies are used on each request.
        token (`str` or *bool*, *optional*):
            The token to use as HTTP bearer authorization for remote files. If `True`, will use the token generated
            when running `huggingface-cli login` (stored in `~/.huggingface`).
        revision (`str`, *optional*, defaults to `"main"`):
            The specific model version to use. It can be a branch name, a tag name, or a commit id, since we use a
            git-based system for storing models and other artifacts on huggingface.co, so `revision` can be any
            identifier allowed by git.
        local_files_only (`bool`, *optional*, defaults to `False`):
            If `True`, will only try to load the tokenizer configuration from local files.
        subfolder (`str`, *optional*, defaults to `""`):
            In case the tokenizer config is located inside a subfolder of the model repo on huggingface.co, you can
            specify the folder name here.

    <Tip>

    Passing `token=True` is required when you want to use a private model.

    </Tip>

    Returns:
        `Dict`: The configuration of the tokenizer.

    Examples:

    ```python
    # Download configuration from huggingface.co and cache.
    tokenizer_config = get_tokenizer_config("google-bert/bert-base-uncased")
    # This model does not have a tokenizer config so the result will be an empty dict.
    tokenizer_config = get_tokenizer_config("FacebookAI/xlm-roberta-base")

    # Save a pretrained tokenizer locally and you can reload its config
    from transformers import AutoTokenizer

    tokenizer = AutoTokenizer.from_pretrained("google-bert/bert-base-cased")
    tokenizer.save_pretrained("tokenizer-test")
    tokenizer_config = get_tokenizer_config("tokenizer-test")
    ```use_auth_tokenNrThe `use_auth_token` argument is deprecated and will be removed in v5 of Transformers. Please use `token` instead.V`token` and `use_auth_token` are both specified. Please set only the argument `token`._commit_hashF)r  r  r  r  r  r  r  r   _raise_exceptions_for_gated_repo%_raise_exceptions_for_missing_entries'_raise_exceptions_for_connection_errorsr  z\Could not locate the tokenizer configuration file, will try to use the model config instead.zutf-8)encoding)popwarningswarnFutureWarning
ValueErrorgetr   r   loggerinfor   openjsonload)r  r  r  r  r  r  r  r  r  kwargsr  commit_hashresolved_config_filereaderresults                  r  get_tokenizer_configr    s    R ZZ 0$7N! A	
 uvv**^T2K&%%'))..305   #rs	%&:KHK	"W	5 #6"#(F>M# #s   CCc                   N    e Zd ZdZd Ze ee      d               Ze	dd       Z
y)AutoTokenizera  
    This is a generic tokenizer class that will be instantiated as one of the tokenizer classes of the library when
    created with the [`AutoTokenizer.from_pretrained`] class method.

    This class cannot be instantiated directly using `__init__()` (throws an error).
    c                     t        d      )Nz}AutoTokenizer is designed to be instantiated using the `AutoTokenizer.from_pretrained(pretrained_model_name_or_path)` method.)EnvironmentError)selfs    r  __init__zAutoTokenizer.__init__1  s    _
 	
    c           
      	   |j                  dd      }|<t        j                  dt               |j	                  dd      t        d      ||d<   |j                  dd      }d|d<   |j                  d	d      }|j                  d
d      }|j                  dd      }|j	                  dd      }	|d}
t        j	                  |d      }|:t        d| ddj                  d t        j                         D               d      |\  }}|r#|t        |      }
nt        j                  d       |
t        |      }
|
t        d| d       |
j                  |g|i |S t        |fi |}d|v r|d   |d<   |j	                  d      }d}d|v r4t        |d   t        t         f      r|d   }n|d   j	                  dd      }|t        |t"              sM|	r3t%        ||	fi |}t'        |d      d   }t)        j*                  d'i |}nt)        j                  |fd|i|}|j,                  }t/        |d      rd|j0                  v r|j0                  d   }|du}t3        |      t4        v xs% |duxr t        |      duxs t        |dz         du}t7        ||||      }|rz|rx|r|d   |d   }n|d   }t9        ||fi |}
|j                  dd      }t:        j<                  j?                  |      r|
jA                           |
j                  |g|d|i|S |[d}
|r!|jC                  d      s| d}t        |      }
|
|}t        |      }
|
t        d d       |
j                  |g|i |S t        |tD              rzt3        |jF                        t3        |jH                        urDt        j                  d |jH                  jJ                   d!|jF                  jJ                   d"       |jH                  }tM        t3        |      jN                        }|Tt4        t3        |         \  }}|r|s| |j                  |g|i |S | |j                  |g|i |S t        d#      t        d$|jJ                   d%dj                  d& t4        j                         D               d      )(a]  
        Instantiate one of the tokenizer classes of the library from a pretrained model vocabulary.

        The tokenizer class to instantiate is selected based on the `model_type` property of the config object (either
        passed as an argument or loaded from `pretrained_model_name_or_path` if possible), or when it's missing, by
        falling back to using pattern matching on `pretrained_model_name_or_path`:

        List options

        Params:
            pretrained_model_name_or_path (`str` or `os.PathLike`):
                Can be either:

                    - A string, the *model id* of a predefined tokenizer hosted inside a model repo on huggingface.co.
                    - A path to a *directory* containing vocabulary files required by the tokenizer, for instance saved
                      using the [`~PreTrainedTokenizer.save_pretrained`] method, e.g., `./my_model_directory/`.
                    - A path or url to a single saved vocabulary file if and only if the tokenizer only requires a
                      single vocabulary file (like Bert or XLNet), e.g.: `./my_model_directory/vocab.txt`. (Not
                      applicable to all derived classes)
            inputs (additional positional arguments, *optional*):
                Will be passed along to the Tokenizer `__init__()` method.
            config ([`PretrainedConfig`], *optional*)
                The configuration object used to determine the tokenizer class to instantiate.
            cache_dir (`str` or `os.PathLike`, *optional*):
                Path to a directory in which a downloaded pretrained model configuration should be cached if the
                standard cache should not be used.
            force_download (`bool`, *optional*, defaults to `False`):
                Whether or not to force the (re-)download the model weights and configuration files and override the
                cached versions if they exist.
            resume_download:
                Deprecated and ignored. All downloads are now resumed by default when possible.
                Will be removed in v5 of Transformers.
            proxies (`Dict[str, str]`, *optional*):
                A dictionary of proxy servers to use by protocol or endpoint, e.g., `{'http': 'foo.bar:3128',
                'http://hostname': 'foo.bar:4012'}`. The proxies are used on each request.
            revision (`str`, *optional*, defaults to `"main"`):
                The specific model version to use. It can be a branch name, a tag name, or a commit id, since we use a
                git-based system for storing models and other artifacts on huggingface.co, so `revision` can be any
                identifier allowed by git.
            subfolder (`str`, *optional*):
                In case the relevant files are located inside a subfolder of the model repo on huggingface.co (e.g. for
                facebook/rag-token-base), specify it here.
            use_fast (`bool`, *optional*, defaults to `True`):
                Use a [fast Rust-based tokenizer](https://huggingface.co/docs/tokenizers/index) if it is supported for
                a given model. If a fast tokenizer is not available for a given model, a normal Python-based tokenizer
                is returned instead.
            tokenizer_type (`str`, *optional*):
                Tokenizer type to be loaded.
            trust_remote_code (`bool`, *optional*, defaults to `False`):
                Whether or not to allow for custom models defined on the Hub in their own modeling files. This option
                should only be set to `True` for repositories you trust and in which you have read the code, as it will
                execute code present on the Hub on your local machine.
            kwargs (additional keyword arguments, *optional*):
                Will be passed to the Tokenizer `__init__()` method. Can be used to set special tokens like
                `bos_token`, `eos_token`, `unk_token`, `sep_token`, `pad_token`, `cls_token`, `mask_token`,
                `additional_special_tokens`. See parameters in the `__init__()` for more details.

        Examples:

        ```python
        >>> from transformers import AutoTokenizer

        >>> # Download vocabulary from huggingface.co and cache.
        >>> tokenizer = AutoTokenizer.from_pretrained("google-bert/bert-base-uncased")

        >>> # Download vocabulary from huggingface.co (user-uploaded) and cache.
        >>> tokenizer = AutoTokenizer.from_pretrained("dbmdz/bert-base-german-cased")

        >>> # If vocabulary files are in a directory (e.g. tokenizer was saved using *save_pretrained('./test/saved_model/')*)
        >>> # tokenizer = AutoTokenizer.from_pretrained("./test/bert_saved_model/")

        >>> # Download vocabulary from huggingface.co and define model-specific arguments
        >>> tokenizer = AutoTokenizer.from_pretrained("FacebookAI/roberta-base", add_prefix_space=True)
        ```r  Nr  r  r  r  T
_from_autouse_fasttokenizer_typetrust_remote_code	gguf_filezPassed `tokenizer_type` z3 does not exist. `tokenizer_type` should be one of z, c              3       K   | ]  }|  y wN .0cs     r  	<genexpr>z0AutoTokenizer.from_pretrained.<locals>.<genexpr>  s      Kq Ks   r  zt`use_fast` is set to `True` but the tokenizer class does not have a fast version.  Falling back to the slow version.zTokenizer class z is not currently imported.r  tokenizer_classauto_mapr  F)return_tensorsFastr   r   code_revisionz- does not exist or is not currently imported.z The encoder model config class: z3 is different from the decoder model config class: z. It is not recommended to use the `AutoTokenizer.from_pretrained()` method in this case. Please use the encoder and decoder specific tokenizer classes.zzThis tokenizer cannot be instantiated. Please make sure you have `sentencepiece` installed in order to use this tokenizer.z!Unrecognized configuration class z8 to build an AutoTokenizer.
Model type should be one of c              3   4   K   | ]  }|j                     y wr  )r  r  s     r  r  z0AutoTokenizer.from_pretrained.<locals>.<genexpr>  s     4bAQZZ4bs   r  )(r  r  r  r  r  r  r    joinkeysr  r  warningfrom_pretrainedr  
isinstancetuplelistr
   r   r   r   	for_modelr  r  r  typer  r   r   ospathisdirregister_for_auto_classendswithr   decoderencoder	__class__r   r  )clsr  inputsr  r  r  r  r  r  r  r  tokenizer_class_tupletokenizer_class_nametokenizer_fast_class_nametokenizer_configconfig_tokenizer_classtokenizer_auto_map	gguf_pathconfig_dicthas_remote_codehas_local_code	class_ref_tokenizer_class_candidate
model_typetokenizer_class_pytokenizer_class_fasts                              r  r  zAutoTokenizer.from_pretrained7  s   Z  $4d;%MM E zz'4(4 l  -F7OHd+#|::j$/$4d;"JJ':DAJJ{D1	 %"O$;$?$?PT$U!$, .~.>>qyy K,C,H,H,J KKLAO 
 ?T; ";,8&?@Y&ZONN= &";<P"Q& #34H3IId!eff2?223PdSYd]cdd 00MXQWX--%5n%EF>"!1!5!56G!H!))*:6F%5j%A"%5j%A%E%EoW[%\" ")f&67 +,I9 _X^ _I"6yQV"WX`"aK'11@K@F'775IZ^dF &,%;%;"vz*&///Q%+___%E",D8f):: 
"$. )*@AM Z,-Cf-LMUYY	 	 6<no
 0.q1=.q1	.q1	;IGdohnoO

?D1Aww}}:;7792?22-06J[_e  $/"O 6 ? ? G/E.Fd,K)";<U"V&,B)";<U"V& &'@&AAno  3?223PdSYd]cdd f23FNN#4+??6v~~7O7O6P Q%%+^^%=%=$> ?22 ^^F/V0E0EF
!7Hf7V4 4#5G5O;+;;<Ym\bmflmm%1=-==>[o^dohnoo$: 
 /0@0@/A B++/994bIZI_I_Ia4b+b*ccdf
 	
r  Nc                    ||t        d      |t        |t              rt        d      |t        |t              rt        d      |=|;t        |t              r+|j                  |k7  rt        d|j                   d| d      | t
        j                  v rt
        |    \  }}||}||}t
        j                  | ||f|       y)	a  
        Register a new tokenizer in this mapping.


        Args:
            config_class ([`PretrainedConfig`]):
                The configuration corresponding to the model to register.
            slow_tokenizer_class ([`PretrainedTokenizer`], *optional*):
                The slow tokenizer to register.
            fast_tokenizer_class ([`PretrainedTokenizerFast`], *optional*):
                The fast tokenizer to register.
        NzKYou need to pass either a `slow_tokenizer_class` or a `fast_tokenizer_classz:You passed a fast tokenizer in the `slow_tokenizer_class`.z:You passed a slow tokenizer in the `fast_tokenizer_class`.zThe fast tokenizer class you are passing has a `slow_tokenizer_class` attribute that is not consistent with the slow tokenizer class you passed (fast tokenizer has z and you passed z!. Fix one of those so they match!)exist_ok)r  
issubclassr   r   slow_tokenizer_classr  r  register)config_classr   fast_tokenizer_classr  existing_slowexisting_fasts         r  r  zAutoTokenizer.register  s     ',@,Hjkk+
;OQh0iYZZ+
;OQd0eYZZ !,$0/1HI$99=QQ['<<==MNbMc d!!  ,;;;+<\+J(M=#+'4$#+'4$""<2FH\1]hp"qr  )NNF)r  
__module____qualname____doc__r  classmethodr   r    r  staticmethodr  r  r  r  r  r  )  sH    
 &'>?\
 @ \
| )r )rr  r  r  )NFNNNNF ):r  r  r  r  r  collectionsr   typingr   r   r   r   r   configuration_utilsr
   dynamic_module_utilsr   r   modeling_gguf_pytorch_utilsr   tokenization_utilsr   tokenization_utils_baser   utilsr   r   r   r   r   r   encoder_decoderr   auto_factoryr   configuration_autor   r   r   r   r   tokenization_utils_fastr   
get_loggerr  r  r    str__annotations__r  r  CONFIG_TO_TYPEr  PathLikeboolr  r  __all__)kvs   00r  <module>r!     sa      	  # > > 3 \ ? 5 <  3 *  B" 
		H	% VaUb[eHSM8C=4P.Q)QRb)X		
)C)E%4-D-F)DX		
 ?V?X(;^bcdX		
 &@W@Y(<_cdeX		
 D;R;T"7Z^_`X		
 o>U>W':]abcX		
 =X		
 *D*F&D.E.G*TX		
( 4)X		
* o>U>W':]abc+X		
, >X>Z!:`dfj kl-X		
. ?/X		
0 61X		
4 *D*F&D.E.G*T3X		
@ !3OfOh5Knr stAX		
B 2CX		
D ;R;T7Z^_`EX		
F OGX		
H EIX		
J o>U>W':]abcKX		
L @W@Y)<_cdeMX		
N t5L5N1TXYZOX		
P /KbKd1GjnopQX		
R o>U>W':]abcSX		
T .UX		
X ,F,H(d0G0I,tWX		
d 2eX		
h (B(D$$,C,E(4gX		
t oF]F_/BeijkuX		
x &.E.G*TwX		
F #+B+D'$EX		
T #+B+D'$SX		
` .aX		
d ,F,H(d0G0I,tcX		
p +G^G`-CfjklqX		
r 7N7P3VZ[\sX		
t 8O8Q4W[\]uX		
v )CZC\+?bfghwX		
x -JaJc/FimnoyX		
| &@&BN*A*C&{X		
H 2IX		
J .KX		
L ?MX		
N 1MdMf3IlpqrOX		
P o>U>W':]abcQX		
R +G^G`-CfjklSX		
V ,F,H(d0G0I,tUX		
d (B(D$$,C,E(4cX		
r (B(D$$,C,E(4qX		
~ 1PgPi3LostuX		
B 19P9R5X\AX		
N +G^G`-CfjklOX		
P o>U>W':]abcQX		
R ?V?X(;^bcdSX		
T .H.J*PTVZ[\UX		
V ,WX		
X ;R;T7Z^_`YX		
Z d>U>W$:]abc[X		
^ (4G4I0tUYZ]X		
d 6eX		
f o>U>W':]abcgX		
h .iX		
j )D[D]+@cghikX		
n (B(D$$,C,E(4mX		
| (B(D$$,C,E(4{X		
J (B(D$$,C,E(4IX		
X (B(D$$,C,E(4WX		
d _=T=V&9\`abeX		
f T8O8Q4W[\]gX		
h d9P9R5X\]^iX		
j .H.J*PTVZ[\kX		
l o>U>W':]abcmX		
n _E\E^.AdhijoX		
p AXAZ*=`defqX		
r $:Q:S 6Y]^_sX		
t FuX		
v o>U>W':]abcwX		
x CyX		
z H_Ha1Dgklm{X		
| /BYB[+>aefg}X		
~ ;R;T7Z^_`X		
@ +G^G`-CfjklAX		
B 7CX		
D )E\E^+AdhijEX		
F 7N7P3VZ[\GX		
H *D[D],@cghiIX		
J *D[D],@cghiKX		
L oF]F_/BeijkMX		
N !?KbKd4Gjn"opOX		
P *D[D],@cghiQX		
T (B(D$$,C,E(4SX		
` t5L5N1TXYZaX		
d (B(D$$,C,E(4cX		
p 4qX		
t -G-I)t1H1J-PTsX		
@ -JaJc/FimnoAX		
B 1PgPi3LostuCX		
D 1PgPi3LostuEX		
F /MdMf1IlpqrGX		
H ^;R;T%7Z^_`IX		
J +JaJc-FimnoKX		
N (B(D$$,C,E(4MX		
\ (B(D$$,C,E(4[X		
j (B(D$$,C,E(4iX		
v 'AXAZ)=`defwX		
x ,F]F_.BeijkyX		
z  "2LcLe4Hko!pq{X		
| !1KbKd3Gjn op}X		
~ 1PgPi3LostuX		
B %?%AMt)@)B%AX		
N .OX		
P )D[D]+@cghiQX		
R .H.J*PTVZ[\SX		
T t7N7P3VZ[\UX		
V 8O8Q4W[\]WX		
X -G-I)tUYZ[YX		
\ (B(D$$,C,E(4[X		
j *D*F&D.E.G*TiX		
v (D[D]*@cghiwX		
x G^G`0CfjklyX		
z 3{X		
~ (B(D$$,C,E(4}X		
L	 (B(D$$,C,E(4K	X		
X	 (BYB[*>aefgY	X		
Z	 +E+G'TSWXY[	X		
\	 1PgPi3Lostu]	X		
^	 D?V?X";^bcd_	X		
`	 4>U>W!:]abca	X		
b	 t:Q:S6Y]^_c	X		
d	 'AXAZ)=`defe	X		
f	 T5L5N1TXYZg	X		
h	 'CZC\)?bfghi	X		
l	 &@&BN*A*C&k	X		
x	 ->U>W):]abcy	X		
z	 E\E^0Adh ij{	X		
|	 ^;R;T%7Z^_`}	X		
~	 .	X		
@
 $=T=V 9\`abA
X		
B
 ?V?X(;^bcdC
X		
F
 'A'CO+B+D'$E
X		
T
 'A'CO+B+D'$S
X		
b
  )C)E%4-D-F)Da
X		
n
 d6M6O2UYZ[o
X		
p
 t7N7P3VZ[\q
X		
r
 t7N7P3VZ[\s
X		
v
  9P9R"5X\]u
X		
|
 ?CZC\,?bfgh}
X		
@ %CZC\'?bfg
X		
F _=T=V&9\`abGX		
H ?V?X(;^bcdIX		
J @W@Y)<_cdeKX		
L +E\E^-AdhijMX		
P *D*F&D.E.G*TOX		
^ *D*F&D.E.G*T]X		
jkX		
z (B(D$$,C,E(4yX		
F 'CZC\)?bfghGX		
H &@W@Y(<_cdeIX		
J (BYB[*>aefgKX		
L 4MX		
N M@W@Y+<_cdeOX		
P <S<U8[_`aQX		
R -G-I)tUYZ[SX		
T :UX		
V AXAZ*=`defWX		
Z $,C,E(4YX		
f .H_Ha0DgklmgX		
h ,F]F_.BeijkiX		
j -G^G`/CfjklkX		
n $,C,E(4mX		
z *D[D],@cghi{X		
~ $,C,E(4}X		
L $,C,E(4KX		
X ,YX		
Z 'AXAZ)=`def[X		
^ "(B(D$$,C,E(4]X		
l +E+G'T/F/H+dkX		
z *D*F&D.E.G*TyX		
F /MdMf1IlpqrGX		
H +G^G`-CfjklIX		
L '#?V?X%;^bcKX		
R 5SX		
T -JaJc/FimnoUX		
V d6M6O2UYZ[WX		
Z .H.J*PT2I2K.QUYX		
h ".H.J*PT2I2K.QUgX		
v (B(D$$,C,E(4uX		
B -G-I)tUYZ[CX		
F (B(D$$,C,E(4EX		
R :T:V 6\`bfghSX		
T BUX		
V 1K1M-SWY]^_WX		
X IYX		
\ 'G^G`)Cfjk[X		
b $:Q:S 6Y]^_cX		
d OD[D]-@cghieX		
h &%?%AMt)@)B%gX		
v %?%AMt)@)B%uX		
B 0CX		
D 0EX		
F 9GX		
H _=T=V&9\`abIX		
L 'A'CO+B+D'$KX		
Z %?%AMt)@)B%YX		
f -G^G`/CfjklgX		
h o>U>W':]abciX		
j *D[D],@cghikX		
l _E\E^.AdhijmX		
n .oX		
p 9qX		
r >sX		
t CuX		
v HwX		
x +G^G`-CfjklyX		
z ?V?X(;^bcd{X		
~ 'A'CO+B+D'$}X		
J ,KX		
L <V<X 8^bdhijMX		
P -G-I)t1H1J-PTOX		
^ !-G-I)t1H1J-PT]X		
l (B(D$$,C,E(4kX		
z -G-I)t1H1J-PTyX		
H )C)E%4-D-F)DGX		
V (B(D$$,C,E(4UX		
d (B(D$$,C,E(4cX		
Z	x %%9;RS #=#7#=#=#?@41a!Q$@# < 48 &*(,(,""l#(bkk)9#:lc2;;./0l l d^	l
 d38n%l E$)$%l sml l l^Xr Xrv 
0S As   6{