"""simple docstring"""







from typing import TYPE_CHECKING

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


__SCREAMING_SNAKE_CASE								={
    "configuration_distilbert": [
        "DISTILBERT_PRETRAINED_CONFIG_ARCHIVE_MAP",
        "DistilBertConfig",
        "DistilBertOnnxConfig",
    ],
    "tokenization_distilbert": ["DistilBertTokenizer"],
}

try:
       if not is_tokenizers_available():
              raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
       pass
else:
       __SCREAMING_SNAKE_CASE								=["DistilBertTokenizerFast"]

try:
       if not is_torch_available():
              raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
       pass
else:
       __SCREAMING_SNAKE_CASE								=[
           "DISTILBERT_PRETRAINED_MODEL_ARCHIVE_LIST",
           "DistilBertForMaskedLM",
           "DistilBertForMultipleChoice",
           "DistilBertForQuestionAnswering",
           "DistilBertForSequenceClassification",
           "DistilBertForTokenClassification",
           "DistilBertModel",
           "DistilBertPreTrainedModel",
       ]

try:
       if not is_tf_available():
              raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
       pass
else:
       __SCREAMING_SNAKE_CASE								=[
           "TF_DISTILBERT_PRETRAINED_MODEL_ARCHIVE_LIST",
           "TFDistilBertForMaskedLM",
           "TFDistilBertForMultipleChoice",
           "TFDistilBertForQuestionAnswering",
           "TFDistilBertForSequenceClassification",
           "TFDistilBertForTokenClassification",
           "TFDistilBertMainLayer",
           "TFDistilBertModel",
           "TFDistilBertPreTrainedModel",
       ]

try:
       if not is_flax_available():
              raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
       pass
else:
       __SCREAMING_SNAKE_CASE								=[
           "FlaxDistilBertForMaskedLM",
           "FlaxDistilBertForMultipleChoice",
           "FlaxDistilBertForQuestionAnswering",
           "FlaxDistilBertForSequenceClassification",
           "FlaxDistilBertForTokenClassification",
           "FlaxDistilBertModel",
           "FlaxDistilBertPreTrainedModel",
       ]


if TYPE_CHECKING:
       from .configuration_distilbert import (
           DISTILBERT_PRETRAINED_CONFIG_ARCHIVE_MAP,
           DistilBertConfig,
           DistilBertOnnxConfig,
       )
       from .tokenization_distilbert import DistilBertTokenizer

       try:
              if not is_tokenizers_available():
                     raise OptionalDependencyNotAvailable()
       except OptionalDependencyNotAvailable:
              pass
       else:
              from .tokenization_distilbert_fast import DistilBertTokenizerFast

       try:
              if not is_torch_available():
                     raise OptionalDependencyNotAvailable()
       except OptionalDependencyNotAvailable:
              pass
       else:
              from .modeling_distilbert import (
                  DISTILBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
                  DistilBertForMaskedLM,
                  DistilBertForMultipleChoice,
                  DistilBertForQuestionAnswering,
                  DistilBertForSequenceClassification,
                  DistilBertForTokenClassification,
                  DistilBertModel,
                  DistilBertPreTrainedModel,
              )

       try:
              if not is_tf_available():
                     raise OptionalDependencyNotAvailable()
       except OptionalDependencyNotAvailable:
              pass
       else:
              from .modeling_tf_distilbert import (
                  TF_DISTILBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
                  TFDistilBertForMaskedLM,
                  TFDistilBertForMultipleChoice,
                  TFDistilBertForQuestionAnswering,
                  TFDistilBertForSequenceClassification,
                  TFDistilBertForTokenClassification,
                  TFDistilBertMainLayer,
                  TFDistilBertModel,
                  TFDistilBertPreTrainedModel,
              )

       try:
              if not is_flax_available():
                     raise OptionalDependencyNotAvailable()
       except OptionalDependencyNotAvailable:
              pass
       else:
              from .modeling_flax_distilbert import (
                  FlaxDistilBertForMaskedLM,
                  FlaxDistilBertForMultipleChoice,
                  FlaxDistilBertForQuestionAnswering,
                  FlaxDistilBertForSequenceClassification,
                  FlaxDistilBertForTokenClassification,
                  FlaxDistilBertModel,
                  FlaxDistilBertPreTrainedModel,
              )

else:
       import sys

       __SCREAMING_SNAKE_CASE								=_LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)





"""simple docstring"""







import logging
import os
from logging import (
    CRITICAL,  # NOQA
    DEBUG,  # NOQA
    ERROR,  # NOQA
    FATAL,  # NOQA
    INFO,  # NOQA
    NOTSET,  # NOQA
    WARN,  # NOQA
    WARNING,  # NOQA
)
from typing import Optional

from tqdm import auto as tqdm_lib


__SCREAMING_SNAKE_CASE								={
    "debug": logging.DEBUG,
    "info": logging.INFO,
    "warning": logging.WARNING,
    "error": logging.ERROR,
    "critical": logging.CRITICAL,
}

__SCREAMING_SNAKE_CASE								=logging.WARNING



def     lowercase__( ):
     lowercase_			:       List[Any]									=			os.getenv('DATASETS_VERBOSITY'  ,    __SCREAMING_SNAKE_CASE   )
     if env_level_str:
          if env_level_str in log_levels:
               return log_levels[env_level_str]
          else:
               logging.getLogger().warning(
                   F'''Unknown option DATASETS_VERBOSITY={env_level_str}, '''
                   F'''has to be one of: { ", ".join(log_levels.keys()   ) }'''   )
     return _default_log_level



def     lowercase__( ):
     return __name__.split('.'   )[0]



def     lowercase__( ):
     return logging.getLogger(_get_library_name()   )



def     lowercase__( ):
     # Apply our default configuration to the library root logger.
     lowercase_			:       Optional[int]									=			_get_library_root_logger()
     library_root_logger.setLevel(_get_default_logging_level()   )



def     lowercase__( ):
     lowercase_			:       int									=			_get_library_root_logger()
     library_root_logger.setLevel(logging.NOTSET   )



def     lowercase__( __SCREAMING_SNAKE_CASE							:  Optional[str] = None   ):
     if name is None:
          lowercase_			:       Union[str, Any]									=			_get_library_name()
     return logging.getLogger(__SCREAMING_SNAKE_CASE   )



def     lowercase__( ):
     return _get_library_root_logger().getEffectiveLevel()



def     lowercase__( __SCREAMING_SNAKE_CASE							:  int   ):
     _get_library_root_logger().setLevel(__SCREAMING_SNAKE_CASE   )



def     lowercase__( ):
     return set_verbosity(__SCREAMING_SNAKE_CASE   )



def     lowercase__( ):
     return set_verbosity(__SCREAMING_SNAKE_CASE   )



def     lowercase__( ):
     return set_verbosity(__SCREAMING_SNAKE_CASE   )



def     lowercase__( ):
     return set_verbosity(__SCREAMING_SNAKE_CASE   )



def     lowercase__( ):
     lowercase_			:       Tuple									=			False



def     lowercase__( ):
     lowercase_			:       Any									=			True


# Configure the library root logger at the module level (singleton-like)
_configure_library_root_logger()







class  UpperCamelCase	:
   def __init__(    self  ,*__UpperCamelCase  ,**__UpperCamelCase    )			->   int:  # pylint: disable=unused-argument


        '''simple docstring'''


        lowercase_			:       Optional[Any]									=			args[0] if args else None
   def __iter__(    self    )			->   Union[str, Any]:


        '''simple docstring'''


        return iter(self._iterator    )
   def __getattr__(    self  ,__UpperCamelCase    )			->   List[Any]:


        '''simple docstring'''


        def empty_fn(*__UpperCamelCase  ,**__UpperCamelCase    ):  # pylint: disable=unused-argument
             return

        return empty_fn
   def __enter__(    self    )			->   Optional[int]:


        '''simple docstring'''


        return self







   def __exit__(    self  ,__UpperCamelCase  ,__UpperCamelCase  ,__UpperCamelCase    )			->   Dict:


        '''simple docstring'''


        return






__SCREAMING_SNAKE_CASE								=True







class  UpperCamelCase	:
   def __call__(    self  ,*__UpperCamelCase  ,__UpperCamelCase=False  ,**__UpperCamelCase    )			->   Tuple:


        '''simple docstring'''


        if _tqdm_active and not disable:
             return tqdm_lib.tqdm(*__UpperCamelCase  ,**__UpperCamelCase    )
        else:
             return EmptyTqdm(*__UpperCamelCase  ,**__UpperCamelCase    )
   def     _UpperCAmelCase     (    self  ,*__UpperCamelCase  ,**__UpperCamelCase    )			->   str:


        '''simple docstring'''


        lowercase_			:       Tuple									=			None
        if _tqdm_active:
             return tqdm_lib.tqdm.set_lock(*__UpperCamelCase  ,**__UpperCamelCase    )







   def     _UpperCAmelCase     (    self    )			->   Any:


        '''simple docstring'''


        if _tqdm_active:
             return tqdm_lib.tqdm.get_lock()






__SCREAMING_SNAKE_CASE								=_tqdm_cls()



def     lowercase__( ):
     global _tqdm_active
     return bool(_tqdm_active   )



def     lowercase__( ):
     global _tqdm_active
     lowercase_			:       Union[str, Any]									=			True







def     lowercase__( ):
     global _tqdm_active
     lowercase_			:       Optional[int]									=			False

