




"""simple docstring"""




from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_tf_available,
    is_torch_available,
    is_vision_available,
)


lowerCAmelCase				:     int					=				{
    """configuration_convnext""": ["""CONVNEXT_PRETRAINED_CONFIG_ARCHIVE_MAP""", """ConvNextConfig""", """ConvNextOnnxConfig"""]
}

try:
					if not is_vision_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					lowerCAmelCase				:     str					=				["""ConvNextFeatureExtractor"""]
					lowerCAmelCase				:     Tuple					=				["""ConvNextImageProcessor"""]

try:
					if not is_torch_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					lowerCAmelCase				:     str					=				[
					    """CONVNEXT_PRETRAINED_MODEL_ARCHIVE_LIST""",
					    """ConvNextForImageClassification""",
					    """ConvNextModel""",
					    """ConvNextPreTrainedModel""",
					    """ConvNextBackbone""",
					]

try:
					if not is_tf_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					lowerCAmelCase				:     List[str]					=				[
					    """TFConvNextForImageClassification""",
					    """TFConvNextModel""",
					    """TFConvNextPreTrainedModel""",
					]

if TYPE_CHECKING:
					from .configuration_convnext import CONVNEXT_PRETRAINED_CONFIG_ARCHIVE_MAP, ConvNextConfig, ConvNextOnnxConfig

					try:
										if not is_vision_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .feature_extraction_convnext import ConvNextFeatureExtractor
										from .image_processing_convnext import ConvNextImageProcessor

					try:
										if not is_torch_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .modeling_convnext import (
										    CONVNEXT_PRETRAINED_MODEL_ARCHIVE_LIST,
										    ConvNextBackbone,
										    ConvNextForImageClassification,
										    ConvNextModel,
										    ConvNextPreTrainedModel,
										)

					try:
										if not is_tf_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .modeling_tf_convnext import TFConvNextForImageClassification, TFConvNextModel, TFConvNextPreTrainedModel


else:
					import sys

					lowerCAmelCase				:     Tuple					=				_LazyModule(__name__, globals()["""__file__"""], _import_structure)









"""simple docstring"""




import unittest

from transformers import load_tool

from .test_tools_common import ToolTesterMixin






class        __magic_name__				(			unittest.TestCase		,   UpperCAmelCase__							):






				'''simple docstring'''





				def   _lowerCAmelCase							(			self					):





							"""simple docstring"""
							lowerCamelCase      =   load_tool("""text-classification"""					)
							self.tool.setup()
							lowerCamelCase      =   load_tool("""text-classification"""						,					remote=_a					)





				def   _lowerCAmelCase							(			self					):





							"""simple docstring"""
							lowerCamelCase      =   self.tool("""That's quite cool"""						,					["""positive""", """negative"""]					)
							self.assertEqual(_a						,					"""positive"""					)





				def   _lowerCAmelCase							(			self					):





							"""simple docstring"""
							lowerCamelCase      =   self.remote_tool("""That's quite cool"""						,					["""positive""", """negative"""]					)
							self.assertEqual(_a						,					"""positive"""					)





				def   _lowerCAmelCase							(			self					):





							"""simple docstring"""
							lowerCamelCase      =   self.tool(text="""That's quite cool"""						,					labels=["""positive""", """negative"""]					)
							self.assertEqual(_a						,					"""positive"""					)





				def   _lowerCAmelCase							(			self					):





							"""simple docstring"""
							lowerCamelCase      =   self.remote_tool(text="""That's quite cool"""						,					labels=["""positive""", """negative"""]					)
							self.assertEqual(_a						,					"""positive"""					)



