U Phj@slddlmZddlmZddlZddlmZddlmZddl m Z ddl m Z dgZ GdddejZdS) ) annotations)SequenceN)PatchEmbeddingBlockTransformerBlock)deprecated_argViTcsbeZdZdZedddddddddddddddddddddddddfdd ZddZZS)rz Vision Transformer (ViT), based on: "Dosovitskiy et al., An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale " ViT supports Torchscript but only works for Pytorch after 1.8. pos_embedz1.2z1.4 proj_typezplease use `proj_type` instead.)namesinceremovednew_name msg_suffix conv learnableFTanhintzSequence[int] | intstrboolfloatNone) in_channelsimg_size patch_size hidden_sizemlp_dim num_layers num_headsr r pos_embed_typeclassification num_classes dropout_rate spatial_dimsqkv_bias save_attnreturnc stdkrdks(ntddkr