'''simple docstring'''




from packaging import version

from .import_utils import is_accelerate_available


if is_accelerate_available():
 import accelerate

def _UpperCamelCase   (       SCREAMING_SNAKE_CASE_							):
     if not is_accelerate_available():
          return method
     lowercase_					:       List[Any]     				=					version.parse(accelerate.__version__							).base_version
     if version.parse(SCREAMING_SNAKE_CASE_							) < version.parse('0.17.0'							):
          return method

     def wrapper(self  ,       *SCREAMING_SNAKE_CASE_  ,       **SCREAMING_SNAKE_CASE_							):
          if hasattr(self  ,       '_hf_hook'							) and hasattr(self._hf_hook  ,       'pre_forward'							):
               self._hf_hook.pre_forward(self							)
          return method(self  ,       *SCREAMING_SNAKE_CASE_  ,       **SCREAMING_SNAKE_CASE_							)

     return wrapper





'''simple docstring'''




from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


_A								=   {
    'configuration_bigbird_pegasus': [
        'BIGBIRD_PEGASUS_PRETRAINED_CONFIG_ARCHIVE_MAP',
        'BigBirdPegasusConfig',
        'BigBirdPegasusOnnxConfig',
    ],
}

try:
 if not is_torch_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 _A								=   [
     'BIGBIRD_PEGASUS_PRETRAINED_MODEL_ARCHIVE_LIST',
     'BigBirdPegasusForCausalLM',
     'BigBirdPegasusForConditionalGeneration',
     'BigBirdPegasusForQuestionAnswering',
     'BigBirdPegasusForSequenceClassification',
     'BigBirdPegasusModel',
     'BigBirdPegasusPreTrainedModel',
 ]


if TYPE_CHECKING:
 from .configuration_bigbird_pegasus import (
     BIGBIRD_PEGASUS_PRETRAINED_CONFIG_ARCHIVE_MAP,
     BigBirdPegasusConfig,
     BigBirdPegasusOnnxConfig,
 )

 try:
  if not is_torch_available():
   raise OptionalDependencyNotAvailable()
 except OptionalDependencyNotAvailable:
  pass
 else:
  from .modeling_bigbird_pegasus import (
      BIGBIRD_PEGASUS_PRETRAINED_MODEL_ARCHIVE_LIST,
      BigBirdPegasusForCausalLM,
      BigBirdPegasusForConditionalGeneration,
      BigBirdPegasusForQuestionAnswering,
      BigBirdPegasusForSequenceClassification,
      BigBirdPegasusModel,
      BigBirdPegasusPreTrainedModel,
  )


else:
 import sys

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




