
from typing import TYPE_CHECKING

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


_A   =			{
    "configuration_gpt_neo": ["GPT_NEO_PRETRAINED_CONFIG_ARCHIVE_MAP", "GPTNeoConfig", "GPTNeoOnnxConfig"],
}

try:
   if not is_torch_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   _A   =			[
       "GPT_NEO_PRETRAINED_MODEL_ARCHIVE_LIST",
       "GPTNeoForCausalLM",
       "GPTNeoForQuestionAnswering",
       "GPTNeoForSequenceClassification",
       "GPTNeoForTokenClassification",
       "GPTNeoModel",
       "GPTNeoPreTrainedModel",
       "load_tf_weights_in_gpt_neo",
   ]

try:
   if not is_flax_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   _A   =			[
       "FlaxGPTNeoForCausalLM",
       "FlaxGPTNeoModel",
       "FlaxGPTNeoPreTrainedModel",
   ]


if TYPE_CHECKING:
   from .configuration_gpt_neo import GPT_NEO_PRETRAINED_CONFIG_ARCHIVE_MAP, GPTNeoConfig, GPTNeoOnnxConfig

   try:
      if not is_torch_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .modeling_gpt_neo import (
          GPT_NEO_PRETRAINED_MODEL_ARCHIVE_LIST,
          GPTNeoForCausalLM,
          GPTNeoForQuestionAnswering,
          GPTNeoForSequenceClassification,
          GPTNeoForTokenClassification,
          GPTNeoModel,
          GPTNeoPreTrainedModel,
          load_tf_weights_in_gpt_neo,
      )

   try:
      if not is_flax_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .modeling_flax_gpt_neo import FlaxGPTNeoForCausalLM, FlaxGPTNeoModel, FlaxGPTNeoPreTrainedModel


else:
   import sys

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



from ....utils import logging


_A   =			logging.get_logger(__name__)







class 					lowerCamelCase		(  A_  ):





     def __init__(self				:   Tuple    ,   _A				:   Optional[int]    ,   _A				:   Tuple=None    ,   _A				:   Union[str, Any]=2_0_4_8       )						->						List[Any]:
         snake_case								= config.__dict__
         snake_case								= modal_hidden_size
         if num_labels:
             snake_case								= num_labels

