



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


UpperCAmelCase_									=							logging.get_logger(__name__)

UpperCAmelCase_									=							{
    "unc-nlp/lxmert-base-uncased": "https://huggingface.co/unc-nlp/lxmert-base-uncased/resolve/main/config.json",
}





class 		UpperCAmelCase						(						__lowerCamelCase				):
   SCREAMING_SNAKE_CASE__							=     'lxmert'
   SCREAMING_SNAKE_CASE__							=     {}





   def __init__(	self       ,     _lowerCAmelCase=30_522       ,     _lowerCAmelCase=768       ,     _lowerCAmelCase=12       ,     _lowerCAmelCase=9_500       ,     _lowerCAmelCase=1_600       ,     _lowerCAmelCase=400       ,     _lowerCAmelCase=3_072       ,     _lowerCAmelCase="gelu"       ,     _lowerCAmelCase=0.1       ,     _lowerCAmelCase=0.1       ,     _lowerCAmelCase=512       ,     _lowerCAmelCase=2       ,     _lowerCAmelCase=0.02       ,     _lowerCAmelCase=1E-12       ,     _lowerCAmelCase=9       ,     _lowerCAmelCase=5       ,     _lowerCAmelCase=5       ,     _lowerCAmelCase=2_048       ,     _lowerCAmelCase=4       ,     _lowerCAmelCase=6.67       ,     _lowerCAmelCase=True       ,     _lowerCAmelCase=True       ,     _lowerCAmelCase=True       ,     _lowerCAmelCase=True       ,     _lowerCAmelCase=True       ,     _lowerCAmelCase=True       ,     _lowerCAmelCase=True       ,     **_lowerCAmelCase       ,     ):
         _lowerCAmelCase 			=  vocab_size
         _lowerCAmelCase 			=  hidden_size
         _lowerCAmelCase 			=  num_attention_heads
         _lowerCAmelCase 			=  hidden_act
         _lowerCAmelCase 			=  intermediate_size
         _lowerCAmelCase 			=  hidden_dropout_prob
         _lowerCAmelCase 			=  attention_probs_dropout_prob
         _lowerCAmelCase 			=  max_position_embeddings
         _lowerCAmelCase 			=  type_vocab_size
         _lowerCAmelCase 			=  initializer_range
         _lowerCAmelCase 			=  layer_norm_eps
         _lowerCAmelCase 			=  num_qa_labels
         _lowerCAmelCase 			=  num_object_labels
         _lowerCAmelCase 			=  num_attr_labels
         _lowerCAmelCase 			=  l_layers
         _lowerCAmelCase 			=  x_layers
         _lowerCAmelCase 			=  r_layers
         _lowerCAmelCase 			=  visual_feat_dim
         _lowerCAmelCase 			=  visual_pos_dim
         _lowerCAmelCase 			=  visual_loss_normalizer
         _lowerCAmelCase 			=  task_matched
         _lowerCAmelCase 			=  task_mask_lm
         _lowerCAmelCase 			=  task_obj_predict
         _lowerCAmelCase 			=  task_qa
         _lowerCAmelCase 			=  visual_obj_loss
         _lowerCAmelCase 			=  visual_attr_loss
         _lowerCAmelCase 			=  visual_feat_loss
         _lowerCAmelCase 			=  {'''vision''': r_layers, '''cross_encoder''': x_layers, '''language''': l_layers}
         super().__init__(**UpperCamelCase_			)






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,
    )