



"""simple docstring"""


from argparse import ArgumentParser

from accelerate.commands.config import get_config_parser
from accelerate.commands.env import env_command_parser
from accelerate.commands.launch import launch_command_parser
from accelerate.commands.test import test_command_parser
from accelerate.commands.tpu import tpu_command_parser

def  _lowerCAmelCase      (   ):
						UpperCAmelCase             = ArgumentParser('Accelerate CLI tool'		,	usage='accelerate <command> [<args>]'		,	allow_abbrev=__UpperCAmelCase						)
						UpperCAmelCase             = parser.add_subparsers(help='accelerate command helpers'						)

						# Register commands
						get_config_parser(subparsers=__UpperCAmelCase						)
						env_command_parser(subparsers=__UpperCAmelCase						)
						launch_command_parser(subparsers=__UpperCAmelCase						)
						tpu_command_parser(subparsers=__UpperCAmelCase						)
						test_command_parser(subparsers=__UpperCAmelCase						)

						# Let's go
						UpperCAmelCase             = parser.parse_args()

						if not hasattr(__UpperCAmelCase		,	'func'						):
												parser.print_help()
												exit(1						)

						# Run
						args.func(__UpperCAmelCase						)


if __name__ == "__main__":
				main()











'''simple docstring'''

from typing import TYPE_CHECKING

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


a  :				Tuple									=  {
    'configuration_llama': ['LLAMA_PRETRAINED_CONFIG_ARCHIVE_MAP', 'LlamaConfig'],
}

try:
							if not is_sentencepiece_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							a  :				Optional[Any]									=  ['LlamaTokenizer']

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

try:
							if not is_torch_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							a  :				Optional[Any]									=  [
							    'LlamaForCausalLM',
							    'LlamaModel',
							    'LlamaPreTrainedModel',
							    'LlamaForSequenceClassification',
							]


if TYPE_CHECKING:
							from .configuration_llama import LLAMA_PRETRAINED_CONFIG_ARCHIVE_MAP, LlamaConfig

							try:
														if not is_sentencepiece_available():
																					raise OptionalDependencyNotAvailable()
							except OptionalDependencyNotAvailable:
														pass
							else:
														from .tokenization_llama import LlamaTokenizer

							try:
														if not is_tokenizers_available():
																					raise OptionalDependencyNotAvailable()
							except OptionalDependencyNotAvailable:
														pass
							else:
														from .tokenization_llama_fast import LlamaTokenizerFast

							try:
														if not is_torch_available():
																					raise OptionalDependencyNotAvailable()
							except OptionalDependencyNotAvailable:
														pass
							else:
														from .modeling_llama import LlamaForCausalLM, LlamaForSequenceClassification, LlamaModel, LlamaPreTrainedModel


else:
							import sys

							a  :				str									=  _LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)

