



'''simple docstring'''


from typing import TYPE_CHECKING

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


lowercase_   :					int        =     {"configuration_xglm": ["XGLM_PRETRAINED_CONFIG_ARCHIVE_MAP", "XGLMConfig"]}

try:
						if not is_sentencepiece_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowercase_   :					int        =     ["XGLMTokenizer"]

try:
						if not is_tokenizers_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowercase_   :					List[str]        =     ["XGLMTokenizerFast"]

try:
						if not is_torch_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowercase_   :					str        =     [
						    "XGLM_PRETRAINED_MODEL_ARCHIVE_LIST",
						    "XGLMForCausalLM",
						    "XGLMModel",
						    "XGLMPreTrainedModel",
						]


try:
						if not is_flax_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowercase_   :					List[Any]        =     [
						    "FlaxXGLMForCausalLM",
						    "FlaxXGLMModel",
						    "FlaxXGLMPreTrainedModel",
						]


try:
						if not is_tf_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowercase_   :					Union[str, Any]        =     [
						    "TF_XGLM_PRETRAINED_MODEL_ARCHIVE_LIST",
						    "TFXGLMForCausalLM",
						    "TFXGLMModel",
						    "TFXGLMPreTrainedModel",
						]


if TYPE_CHECKING:
						from .configuration_xglm import XGLM_PRETRAINED_CONFIG_ARCHIVE_MAP, XGLMConfig

						try:
												if not is_sentencepiece_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .tokenization_xglm import XGLMTokenizer

						try:
												if not is_tokenizers_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .tokenization_xglm_fast import XGLMTokenizerFast

						try:
												if not is_torch_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_xglm import XGLM_PRETRAINED_MODEL_ARCHIVE_LIST, XGLMForCausalLM, XGLMModel, XGLMPreTrainedModel

						try:
												if not is_flax_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_flax_xglm import FlaxXGLMForCausalLM, FlaxXGLMModel, FlaxXGLMPreTrainedModel

						try:
												if not is_tf_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_tf_xglm import (
												    TF_XGLM_PRETRAINED_MODEL_ARCHIVE_LIST,
												    TFXGLMForCausalLM,
												    TFXGLMModel,
												    TFXGLMPreTrainedModel,
												)


else:
						import sys

						lowercase_   :					Dict        =     _LazyModule(__name__, globals()['''__file__'''], _import_structure)





'''simple docstring'''



from ..utils import DummyObject, requires_backends



class 				_snake_case					(   metaclass=a_			):
  SCREAMING_SNAKE_CASE			:       int				=     ['''torch''', '''transformers''', '''onnx''']

  def __init__(				self      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(self      , ['torch', 'transformers', 'onnx']	)

  @classmethod
  def   _SCREAMING_SNAKE_CASE				(				cls      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(cls      , ['torch', 'transformers', 'onnx']	)


  @classmethod
  def   _SCREAMING_SNAKE_CASE				(				cls      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(cls      , ['torch', 'transformers', 'onnx']	)



class 				_snake_case					(   metaclass=a_			):
  SCREAMING_SNAKE_CASE			:       List[Any]				=     ['''torch''', '''transformers''', '''onnx''']

  def __init__(				self      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(self      , ['torch', 'transformers', 'onnx']	)

  @classmethod
  def   _SCREAMING_SNAKE_CASE				(				cls      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(cls      , ['torch', 'transformers', 'onnx']	)


  @classmethod
  def   _SCREAMING_SNAKE_CASE				(				cls      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(cls      , ['torch', 'transformers', 'onnx']	)



class 				_snake_case					(   metaclass=a_			):
  SCREAMING_SNAKE_CASE			:       int				=     ['''torch''', '''transformers''', '''onnx''']

  def __init__(				self      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(self      , ['torch', 'transformers', 'onnx']	)

  @classmethod
  def   _SCREAMING_SNAKE_CASE				(				cls      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(cls      , ['torch', 'transformers', 'onnx']	)


  @classmethod
  def   _SCREAMING_SNAKE_CASE				(				cls      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(cls      , ['torch', 'transformers', 'onnx']	)



class 				_snake_case					(   metaclass=a_			):
  SCREAMING_SNAKE_CASE			:       Dict				=     ['''torch''', '''transformers''', '''onnx''']

  def __init__(				self      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(self      , ['torch', 'transformers', 'onnx']	)

  @classmethod
  def   _SCREAMING_SNAKE_CASE				(				cls      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(cls      , ['torch', 'transformers', 'onnx']	)


  @classmethod
  def   _SCREAMING_SNAKE_CASE				(				cls      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(cls      , ['torch', 'transformers', 'onnx']	)



class 				_snake_case					(   metaclass=a_			):
  SCREAMING_SNAKE_CASE			:       List[Any]				=     ['''torch''', '''transformers''', '''onnx''']

  def __init__(				self      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(self      , ['torch', 'transformers', 'onnx']	)

  @classmethod
  def   _SCREAMING_SNAKE_CASE				(				cls      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(cls      , ['torch', 'transformers', 'onnx']	)


  @classmethod
  def   _SCREAMING_SNAKE_CASE				(				cls      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(cls      , ['torch', 'transformers', 'onnx']	)



class 				_snake_case					(   metaclass=a_			):
  SCREAMING_SNAKE_CASE			:       Optional[Any]				=     ['''torch''', '''transformers''', '''onnx''']

  def __init__(				self      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(self      , ['torch', 'transformers', 'onnx']	)

  @classmethod
  def   _SCREAMING_SNAKE_CASE				(				cls      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(cls      , ['torch', 'transformers', 'onnx']	)


  @classmethod
  def   _SCREAMING_SNAKE_CASE				(				cls      , *_SCREAMING_SNAKE_CASE      , **_SCREAMING_SNAKE_CASE	):





      '''simple docstring'''

      requires_backends(cls      , ['torch', 'transformers', 'onnx']	)





