



'''simple docstring'''



from abc import ABC, abstractmethod
from typing import Optional, Union

from .. import Dataset, DatasetDict, Features, IterableDataset, IterableDatasetDict, NamedSplit
from ..utils.typing import NestedDataStructureLike, PathLike
class 	lowerCamelCase_							(					snake_case_			):







						def __init__(  self   :      Optional[int]				,    lowerCAmelCase__   :      Optional[NestedDataStructureLike[PathLike]] = None				,    lowerCAmelCase__   :      Optional[NamedSplit] = None				,    lowerCAmelCase__   :      Optional[Features] = None				,    lowerCAmelCase__   :      str = None				,    lowerCAmelCase__   :      bool = False				,    lowerCAmelCase__   :      bool = False				,    lowerCAmelCase__   :      Optional[int] = None				,    **lowerCAmelCase__   :      Optional[int]				,    ):

													"""simple docstring"""
													SCREAMING_SNAKE_CASE					:      List[Any]     					=			path_or_paths
													SCREAMING_SNAKE_CASE					:      Any     					=			split if split or isinstance(lowerCAmelCase__				,    lowerCAmelCase__				) else '''train'''
													SCREAMING_SNAKE_CASE					:      Dict     					=			features
													SCREAMING_SNAKE_CASE					:      Optional[Any]     					=			cache_dir
													SCREAMING_SNAKE_CASE					:      int     					=			keep_in_memory
													SCREAMING_SNAKE_CASE					:      str     					=			streaming
													SCREAMING_SNAKE_CASE					:      Tuple     					=			num_proc
													SCREAMING_SNAKE_CASE					:      Optional[Any]     					=			kwargs







						@abstractmethod
						def 					__lowercase    (  self   :      List[str]				):

													"""simple docstring"""
													pass


class 	lowerCamelCase_							(					snake_case_			):







						def __init__(  self   :      Union[str, Any]				,    lowerCAmelCase__   :      Optional[Features] = None				,    lowerCAmelCase__   :      str = None				,    lowerCAmelCase__   :      bool = False				,    lowerCAmelCase__   :      bool = False				,    lowerCAmelCase__   :      Optional[int] = None				,    **lowerCAmelCase__   :      str				,    ):

													"""simple docstring"""
													SCREAMING_SNAKE_CASE					:      int     					=			features
													SCREAMING_SNAKE_CASE					:      Union[str, Any]     					=			cache_dir
													SCREAMING_SNAKE_CASE					:      Optional[int]     					=			keep_in_memory
													SCREAMING_SNAKE_CASE					:      int     					=			streaming
													SCREAMING_SNAKE_CASE					:      str     					=			num_proc
													SCREAMING_SNAKE_CASE					:      Optional[int]     					=			kwargs







						@abstractmethod
						def 					__lowercase    (  self   :      List[Any]				):

													"""simple docstring"""
													pass









'''simple docstring'''



from typing import TYPE_CHECKING

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


lowerCAmelCase_     :       str								=						{
    'configuration_llama': ['LLAMA_PRETRAINED_CONFIG_ARCHIVE_MAP', 'LlamaConfig'],
}

try:
							if not is_sentencepiece_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							lowerCAmelCase_     :       Dict								=						['LlamaTokenizer']

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

try:
							if not is_torch_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							lowerCAmelCase_     :       Optional[int]								=						[
							    '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

							lowerCAmelCase_     :       Optional[Any]								=						_LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)




