


'''simple docstring'''




import sys

from .dependency_versions_table import deps
from .utils.versions import require_version, require_version_core


# define which module versions we always want to check at run time
# (usually the ones defined in `install_requires` in setup.py)
#
# order specific notes:
# - tqdm must be checked before tokenizers

_lowerCAmelCase  :		Union[str, Any]		     =	'python tqdm regex requests packaging filelock numpy tokenizers'.split()
if sys.version_info < (3, 7):
				pkgs_to_check_at_runtime.append('dataclasses')
if sys.version_info < (3, 8):
				pkgs_to_check_at_runtime.append('importlib_metadata')

for pkg in pkgs_to_check_at_runtime:
				if pkg in deps:
								if pkg == "tokenizers":
												# must be loaded here, or else tqdm check may fail
												from .utils import is_tokenizers_available

												if not is_tokenizers_available():
																continue  # not required, check version only if installed

								require_version_core(deps[pkg])
				else:
								raise ValueError(f"""can\'t find {pkg} in {deps.keys()}, check dependency_versions_table.py""")

def 			__UpperCamelCase    (    _A    :				List[str]					,   _A    :				Any=None				)    ->      List[Any]:




	"""simple docstring"""





	require_version(deps[pkg]					,   SCREAMING_SNAKE_CASE__				)




'''simple docstring'''




from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tokenizers_available, is_torch_available


_lowerCAmelCase  :		int		     =	{
    'configuration_nezha': ['NEZHA_PRETRAINED_CONFIG_ARCHIVE_MAP', 'NezhaConfig'],
}

try:
				if not is_torch_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_lowerCAmelCase  :		Tuple		     =	[
				    'NEZHA_PRETRAINED_MODEL_ARCHIVE_LIST',
				    'NezhaForNextSentencePrediction',
				    'NezhaForMaskedLM',
				    'NezhaForPreTraining',
				    'NezhaForMultipleChoice',
				    'NezhaForQuestionAnswering',
				    'NezhaForSequenceClassification',
				    'NezhaForTokenClassification',
				    'NezhaModel',
				    'NezhaPreTrainedModel',
				]


if TYPE_CHECKING:
				from .configuration_nezha import NEZHA_PRETRAINED_CONFIG_ARCHIVE_MAP, NezhaConfig

				try:
								if not is_torch_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_nezha import (
								    NEZHA_PRETRAINED_MODEL_ARCHIVE_LIST,
								    NezhaForMaskedLM,
								    NezhaForMultipleChoice,
								    NezhaForNextSentencePrediction,
								    NezhaForPreTraining,
								    NezhaForQuestionAnswering,
								    NezhaForSequenceClassification,
								    NezhaForTokenClassification,
								    NezhaModel,
								    NezhaPreTrainedModel,
								)


else:
				import sys

				_lowerCAmelCase  :		str		     =	_LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)
