"""simple docstring"""



from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tf_available, is_torch_available


_UpperCamelCase								=		{
    "configuration_groupvit": [
        "GROUPVIT_PRETRAINED_CONFIG_ARCHIVE_MAP",
        "GroupViTConfig",
        "GroupViTOnnxConfig",
        "GroupViTTextConfig",
        "GroupViTVisionConfig",
    ],
}

try:
				if not is_torch_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_UpperCamelCase								=		[
				    "GROUPVIT_PRETRAINED_MODEL_ARCHIVE_LIST",
				    "GroupViTModel",
				    "GroupViTPreTrainedModel",
				    "GroupViTTextModel",
				    "GroupViTVisionModel",
				]

try:
				if not is_tf_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_UpperCamelCase								=		[
				    "TF_GROUPVIT_PRETRAINED_MODEL_ARCHIVE_LIST",
				    "TFGroupViTModel",
				    "TFGroupViTPreTrainedModel",
				    "TFGroupViTTextModel",
				    "TFGroupViTVisionModel",
				]

if TYPE_CHECKING:
				from .configuration_groupvit import (
				    GROUPVIT_PRETRAINED_CONFIG_ARCHIVE_MAP,
				    GroupViTConfig,
				    GroupViTOnnxConfig,
				    GroupViTTextConfig,
				    GroupViTVisionConfig,
				)

				try:
								if not is_torch_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_groupvit import (
								    GROUPVIT_PRETRAINED_MODEL_ARCHIVE_LIST,
								    GroupViTModel,
								    GroupViTPreTrainedModel,
								    GroupViTTextModel,
								    GroupViTVisionModel,
								)

				try:
								if not is_tf_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_tf_groupvit import (
								    TF_GROUPVIT_PRETRAINED_MODEL_ARCHIVE_LIST,
								    TFGroupViTModel,
								    TFGroupViTPreTrainedModel,
								    TFGroupViTTextModel,
								    TFGroupViTVisionModel,
								)

else:
				import sys

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






"""simple docstring"""



import unittest

from transformers import load_tool

from .test_tools_common import ToolTesterMixin
class 						__UpperCAmelCase    (unittest.TestCase							,   __A     ):







			'''simple docstring'''





			def 		lowerCamelCase					(			self							):







										'''simple docstring'''


										A__       :     List[Any]								=			load_tool("""text-classification"""							)
										self.tool.setup()
										A__       :     Any								=			load_tool("""text-classification"""   ,      remote=snake_case_							)





			def 		lowerCamelCase					(			self							):







										'''simple docstring'''


										A__       :     int								=			self.tool("""That's quite cool"""   ,      ["""positive""", """negative"""]							)
										self.assertEqual(snake_case_   ,      """positive"""							)





			def 		lowerCamelCase					(			self							):







										'''simple docstring'''


										A__       :     Optional[Any]								=			self.remote_tool("""That's quite cool"""   ,      ["""positive""", """negative"""]							)
										self.assertEqual(snake_case_   ,      """positive"""							)





			def 		lowerCamelCase					(			self							):







										'''simple docstring'''


										A__       :     str								=			self.tool(text="""That's quite cool"""   ,      labels=["""positive""", """negative"""]							)
										self.assertEqual(snake_case_   ,      """positive"""							)





			def 		lowerCamelCase					(			self							):







										'''simple docstring'''


										A__       :     int								=			self.remote_tool(text="""That's quite cool"""   ,      labels=["""positive""", """negative"""]							)
										self.assertEqual(snake_case_   ,      """positive"""							)





