





'''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 					__snake_case  (					__SCREAMING_SNAKE_CASE							):






   '''simple docstring'''





   def __init__(							self	,		__SCREAMING_SNAKE_CASE = None	,		__SCREAMING_SNAKE_CASE = None	,		__SCREAMING_SNAKE_CASE = None	,		__SCREAMING_SNAKE_CASE = None	,		__SCREAMING_SNAKE_CASE = False	,		__SCREAMING_SNAKE_CASE = False	,		__SCREAMING_SNAKE_CASE = None	,		**__SCREAMING_SNAKE_CASE	,		):
    snake_case__     :					str    =  path_or_paths
    snake_case__     :					Any    =  split if split or isinstance(__SCREAMING_SNAKE_CASE	,		__SCREAMING_SNAKE_CASE       ) else """train"""
    snake_case__     :					int    =  features
    snake_case__     :					Optional[Any]    =  cache_dir
    snake_case__     :					List[str]    =  keep_in_memory
    snake_case__     :					Optional[Any]    =  streaming
    snake_case__     :					Optional[int]    =  num_proc
    snake_case__     :					List[str]    =  kwargs


   @abstractmethod
   def 		__UpperCamelCase						(							self       ):
    pass



class 					__snake_case  (					__SCREAMING_SNAKE_CASE							):






   '''simple docstring'''





   def __init__(							self	,		__SCREAMING_SNAKE_CASE = None	,		__SCREAMING_SNAKE_CASE = None	,		__SCREAMING_SNAKE_CASE = False	,		__SCREAMING_SNAKE_CASE = False	,		__SCREAMING_SNAKE_CASE = None	,		**__SCREAMING_SNAKE_CASE	,		):
    snake_case__     :					str    =  features
    snake_case__     :					Tuple    =  cache_dir
    snake_case__     :					List[Any]    =  keep_in_memory
    snake_case__     :					Optional[int]    =  streaming
    snake_case__     :					str    =  num_proc
    snake_case__     :					Tuple    =  kwargs


   @abstractmethod
   def 		__UpperCamelCase						(							self       ):
    pass











"""simple docstring"""





# Copyright 2023 The HuggingFace Team. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


__A											=						{
    """configuration_mgp_str""": ["""MGP_STR_PRETRAINED_CONFIG_ARCHIVE_MAP""", """MgpstrConfig"""],
    """processing_mgp_str""": ["""MgpstrProcessor"""],
    """tokenization_mgp_str""": ["""MgpstrTokenizer"""],
}

try:
  if not is_torch_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  __A											=						[
      """MGP_STR_PRETRAINED_MODEL_ARCHIVE_LIST""",
      """MgpstrModel""",
      """MgpstrPreTrainedModel""",
      """MgpstrForSceneTextRecognition""",
  ]

if TYPE_CHECKING:
  from .configuration_mgp_str import MGP_STR_PRETRAINED_CONFIG_ARCHIVE_MAP, MgpstrConfig
  from .processing_mgp_str import MgpstrProcessor
  from .tokenization_mgp_str import MgpstrTokenizer

  try:
    if not is_torch_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_mgp_str import (
        MGP_STR_PRETRAINED_MODEL_ARCHIVE_LIST,
        MgpstrForSceneTextRecognition,
        MgpstrModel,
        MgpstrPreTrainedModel,
    )
else:
  import sys

  __A											=						_LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)
