
from typing import Optional, Tuple

from ...tokenization_utils_fast import PreTrainedTokenizerFast
from ...utils import logging
from .tokenization_openai import OpenAIGPTTokenizer


SCREAMING_SNAKE_CASE							:Optional[int]											=       logging.get_logger(__name__)

SCREAMING_SNAKE_CASE							:Any											=       {'vocab_file': 'vocab.json', 'merges_file': 'merges.txt', 'tokenizer_file': 'tokenizer.json'}

SCREAMING_SNAKE_CASE							:List[Any]											=       {
    'vocab_file': {'openai-gpt': 'https://huggingface.co/openai-gpt/resolve/main/vocab.json'},
    'merges_file': {'openai-gpt': 'https://huggingface.co/openai-gpt/resolve/main/merges.txt'},
    'tokenizer_file': {'openai-gpt': 'https://huggingface.co/openai-gpt/resolve/main/tokenizer.json'},
}

SCREAMING_SNAKE_CASE							:Optional[int]											=       {
    'openai-gpt': 512,
}





class 							UpperCAmelCase   (						a__						):




 '''simple docstring'''





 snake_case_      					=  VOCAB_FILES_NAMES
 snake_case_      					=  PRETRAINED_VOCAB_FILES_MAP
 snake_case_      					=  PRETRAINED_POSITIONAL_EMBEDDINGS_SIZES
 snake_case_      					=  ["input_ids", "attention_mask"]
 snake_case_      					=  OpenAIGPTTokenizer






 def __init__( self      :				Union[str, Any]							,A      :				Tuple=None							,A      :				Any=None							,A      :				Tuple=None							,A      :				Optional[Any]="<unk>"							,**A      :				Any				):
     super().__init__(SCREAMING_SNAKE_CASE_							,SCREAMING_SNAKE_CASE_							,tokenizer_file=SCREAMING_SNAKE_CASE_							,unk_token=SCREAMING_SNAKE_CASE_							,**SCREAMING_SNAKE_CASE_				)






 @property
 def        UpperCamelCase_						( self      :				Any				):
     return True







 def        UpperCamelCase_						( self      :				List[str]							,A      :				int							,A      :				Any = None				):
     __A         =				self._tokenizer.model.save(SCREAMING_SNAKE_CASE_							,name=SCREAMING_SNAKE_CASE_				)
     return tuple(SCREAMING_SNAKE_CASE_				)


from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_tf_available,
    is_tokenizers_available,
    is_torch_available,
)


SCREAMING_SNAKE_CASE							:str											=       {
    'configuration_deberta_v2': ['DEBERTA_V2_PRETRAINED_CONFIG_ARCHIVE_MAP', 'DebertaV2Config', 'DebertaV2OnnxConfig'],
    'tokenization_deberta_v2': ['DebertaV2Tokenizer'],
}

try:
					if not is_tokenizers_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					SCREAMING_SNAKE_CASE							:int											=       ['DebertaV2TokenizerFast']

try:
					if not is_tf_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					SCREAMING_SNAKE_CASE							:Any											=       [
					    'TF_DEBERTA_V2_PRETRAINED_MODEL_ARCHIVE_LIST',
					    'TFDebertaV2ForMaskedLM',
					    'TFDebertaV2ForQuestionAnswering',
					    'TFDebertaV2ForSequenceClassification',
					    'TFDebertaV2ForTokenClassification',
					    'TFDebertaV2Model',
					    'TFDebertaV2PreTrainedModel',
					]

try:
					if not is_torch_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					SCREAMING_SNAKE_CASE							:Any											=       [
					    'DEBERTA_V2_PRETRAINED_MODEL_ARCHIVE_LIST',
					    'DebertaV2ForMaskedLM',
					    'DebertaV2ForMultipleChoice',
					    'DebertaV2ForQuestionAnswering',
					    'DebertaV2ForSequenceClassification',
					    'DebertaV2ForTokenClassification',
					    'DebertaV2Model',
					    'DebertaV2PreTrainedModel',
					]


if TYPE_CHECKING:
					from .configuration_deberta_va import (
					    DEBERTA_V2_PRETRAINED_CONFIG_ARCHIVE_MAP,
					    DebertaVaConfig,
					    DebertaVaOnnxConfig,
					)
					from .tokenization_deberta_va import DebertaVaTokenizer

					try:
										if not is_tokenizers_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .tokenization_deberta_va_fast import DebertaVaTokenizerFast

					try:
										if not is_tf_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .modeling_tf_deberta_va import (
										    TF_DEBERTA_V2_PRETRAINED_MODEL_ARCHIVE_LIST,
										    TFDebertaVaForMaskedLM,
										    TFDebertaVaForQuestionAnswering,
										    TFDebertaVaForSequenceClassification,
										    TFDebertaVaForTokenClassification,
										    TFDebertaVaModel,
										    TFDebertaVaPreTrainedModel,
										)

					try:
										if not is_torch_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .modeling_deberta_va import (
										    DEBERTA_V2_PRETRAINED_MODEL_ARCHIVE_LIST,
										    DebertaVaForMaskedLM,
										    DebertaVaForMultipleChoice,
										    DebertaVaForQuestionAnswering,
										    DebertaVaForSequenceClassification,
										    DebertaVaForTokenClassification,
										    DebertaVaModel,
										    DebertaVaPreTrainedModel,
										)

else:
					import sys

					SCREAMING_SNAKE_CASE							:List[Any]											=       _LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)
