






"""simple docstring"""


from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


_UpperCamelCase :    str      =			{
    """configuration_prophetnet""": ["""PROPHETNET_PRETRAINED_CONFIG_ARCHIVE_MAP""", """ProphetNetConfig"""],
    """tokenization_prophetnet""": ["""ProphetNetTokenizer"""],
}

try:
   if not is_torch_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   _UpperCamelCase :    Optional[int]      =			[
       """PROPHETNET_PRETRAINED_MODEL_ARCHIVE_LIST""",
       """ProphetNetDecoder""",
       """ProphetNetEncoder""",
       """ProphetNetForCausalLM""",
       """ProphetNetForConditionalGeneration""",
       """ProphetNetModel""",
       """ProphetNetPreTrainedModel""",
   ]


if TYPE_CHECKING:
   from .configuration_prophetnet import PROPHETNET_PRETRAINED_CONFIG_ARCHIVE_MAP, ProphetNetConfig
   from .tokenization_prophetnet import ProphetNetTokenizer

   try:
      if not is_torch_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .modeling_prophetnet import (
          PROPHETNET_PRETRAINED_MODEL_ARCHIVE_LIST,
          ProphetNetDecoder,
          ProphetNetEncoder,
          ProphetNetForCausalLM,
          ProphetNetForConditionalGeneration,
          ProphetNetModel,
          ProphetNetPreTrainedModel,
      )

else:
   import sys

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













"""simple docstring"""


import importlib.metadata
import subprocess
import sys




def 					a			(  UpperCamelCase_				:					bool = False		)	->		Optional[Any]:
 __A						:							List[Any]      =						False
 if "IPython" in sys.modules:
  __A						:							List[Any]      =						'google.colab' in str(sys.modules['IPython'].get_ipython()		)

 if in_colab:
  if upgrade:
   __A						:							Dict      =						['pip', 'install', '-U', 'torch']
   subprocess.run(UpperCamelCase_  ,						check=UpperCamelCase_		)
  # get the current version of torch
  __A						:							int      =						importlib.metadata.version('torch'		)
  __A						:							int      =						torch_version[: torch_version.rindex('.'		)]
  __A						:							Any      =						F"https://storage.googleapis.com/tpu-pytorch/wheels/colab/torch_xla-{torch_version_trunc}-cp37-cp37m-linux_x86_64.whl"
  __A						:							int      =						['pip', 'install', xla_wheel]
  subprocess.run(UpperCamelCase_  ,						check=UpperCamelCase_		)
 else:
  raise RuntimeError('`install_xla` utility works only on google colab.'		)





