
'''simple docstring'''






from ...configuration_utils import PretrainedConfig
from ...utils import logging


UpperCAmelCase_							: Any =							logging.get_logger(__name__)

UpperCAmelCase_							: Any =							{
    '''sayakpaul/vit-msn-base''': '''https://huggingface.co/sayakpaul/vit-msn-base/resolve/main/config.json''',
    # See all ViT MSN models at https://huggingface.co/models?filter=vit_msn
}

class 			UpperCAmelCase__    (							_a			):
    lowerCAmelCase_					     =		'''vit_msn'''



    def __init__(						self   :							Any,__A   :							Tuple=7_6_8,__A   :							int=1_2,__A   :							Union[str, Any]=1_2,__A   :							Dict=3_0_7_2,__A   :							List[str]="gelu",__A   :							Tuple=0.0,__A   :							Any=0.0,__A   :							str=0.02,__A   :							Union[str, Any]=1e-06,__A   :							List[Any]=2_2_4,__A   :							str=1_6,__A   :							Optional[int]=3,__A   :							Optional[int]=True,**__A   :							str,):
          super().__init__(**__UpperCamelCase  )

          _lowerCamelCase					: Union[str, Any]		    = hidden_size
          _lowerCamelCase					: int		    = num_hidden_layers
          _lowerCamelCase					: Any		    = num_attention_heads
          _lowerCamelCase					: List[Any]		    = intermediate_size
          _lowerCamelCase					: str		    = hidden_act
          _lowerCamelCase					: Tuple		    = hidden_dropout_prob
          _lowerCamelCase					: int		    = attention_probs_dropout_prob
          _lowerCamelCase					: Any		    = initializer_range
          _lowerCamelCase					: Tuple		    = layer_norm_eps
          _lowerCamelCase					: Dict		    = image_size
          _lowerCamelCase					: int		    = patch_size
          _lowerCamelCase					: Optional[int]		    = num_channels
          _lowerCamelCase					: Optional[Any]		    = qkv_bias

from ...utils import (
    OptionalDependencyNotAvailable,
    is_torch_available,
    is_transformers_available,
    is_transformers_version,
)


try:
		if not (is_transformers_available() and is_torch_available()):
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		from ...utils.dummy_torch_and_transformers_objects import ShapEPipeline
else:
		from .camera import create_pan_cameras
		from .pipeline_shap_e import ShapEPipeline
		from .pipeline_shap_e_img2img import ShapEImgaImgPipeline
		from .renderer import (
		    BoundingBoxVolume,
		    ImportanceRaySampler,
		    MLPNeRFModelOutput,
		    MLPNeRSTFModel,
		    ShapEParamsProjModel,
		    ShapERenderer,
		    StratifiedRaySampler,
		    VoidNeRFModel,
		)