






"""simple docstring"""





from typing import TYPE_CHECKING

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


A__					: Tuple=	{'configuration_gpt_neox': ['GPT_NEOX_PRETRAINED_CONFIG_ARCHIVE_MAP', 'GPTNeoXConfig']}

try:
  if not is_tokenizers_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  A__					: str=	['GPTNeoXTokenizerFast']

try:
  if not is_torch_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  A__					: Union[str, Any]=	[
      'GPT_NEOX_PRETRAINED_MODEL_ARCHIVE_LIST',
      'GPTNeoXForCausalLM',
      'GPTNeoXForQuestionAnswering',
      'GPTNeoXForSequenceClassification',
      'GPTNeoXForTokenClassification',
      'GPTNeoXLayer',
      'GPTNeoXModel',
      'GPTNeoXPreTrainedModel',
  ]


if TYPE_CHECKING:
  from .configuration_gpt_neox import GPT_NEOX_PRETRAINED_CONFIG_ARCHIVE_MAP, GPTNeoXConfig

  try:
    if not is_tokenizers_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .tokenization_gpt_neox_fast import GPTNeoXTokenizerFast

  try:
    if not is_torch_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_gpt_neox import (
        GPT_NEOX_PRETRAINED_MODEL_ARCHIVE_LIST,
        GPTNeoXForCausalLM,
        GPTNeoXForQuestionAnswering,
        GPTNeoXForSequenceClassification,
        GPTNeoXForTokenClassification,
        GPTNeoXLayer,
        GPTNeoXModel,
        GPTNeoXPreTrainedModel,
    )


else:
  import sys

  A__					: Any=	_LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)







"""simple docstring"""





from ...configuration_utils import PretrainedConfig
from ...utils import logging


A__					: List[str]=	logging.get_logger(__name__)
class    __lowerCamelCase    (  _a  ):
   a      :				Optional[int] 						="""timm_backbone"""

   def __init__(					self ,				snake_case_=None ,				snake_case_=3 ,				snake_case_=True ,				snake_case_=True ,				snake_case_=None ,				**snake_case_ ,				)		->       Dict:
       super().__init__(**snake_case_      )
       UpperCamelCase__         =    backbone
       UpperCamelCase__         =    num_channels
       UpperCamelCase__         =    features_only
       UpperCamelCase__         =    use_pretrained_backbone
       UpperCamelCase__         =    True
       UpperCamelCase__         =    out_indices if out_indices is not None else (-1,)




