timm documentation

Gemma 4 ViT

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v1.0.30).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Gemma 4 ViT

Category: Encoder · Code: timm/models/gemma4_vit.py · Architectures: 4 · Pretrained weights: 4 (0 with ImageNet-1k results)

The vision encoder of Google’s Gemma 4 multimodal models, a ViT with 2D RoPE, gated MLPs, QK normalization and sandwich normalization blocks.

Papers

Usage

See the Quickstart for loading pretrained weights, image preprocessing and fine-tuning, and Feature Extraction for using the models as backbones.

>>> import timm
>>> model = timm.create_model('gemma4_vit_167m.gemma4_e4b_it', pretrained=True)
>>> data_config = timm.data.resolve_model_data_config(model)

Model API support

FeatureGemma4VitClassifierGemma4VitEncoder
features_only=True feature maps✓ (strides 16, 16, 16)✓ (strides 16, 16, 16)
forward_intermediates()✓✓
prune_intermediate_layers()✓✓
Any input size, no changes needed✓✗
set_input_size()–✗
dynamic_img_size=True–✗
set_grad_checkpointing()✓✓
Layer-wise LR decay (group_matcher())✓✓
reset_classifier()✓✗

✓ supported, ✓ (square) works for square sizes only, ✗ not supported, – not needed (the model already accepts any input size). Checked by running each feature on a randomly initialized model (Gemma4VitClassifier with gemma4_vit_167m at 256, Gemma4VitEncoder with gemma4_vit_167m_enc at 768), other architectures of the same class are expected to behave the same. See the Model API page for details.

Architectures

ArchitectureClassParams (M)GMACsInput sizePretrained weights
gemma4_vit_167mGemma4VitClassifier167.36-7681
gemma4_vit_167m_encGemma4VitEncoder167.36-7681
gemma4_vit_570mGemma4VitClassifier569.55-7681
gemma4_vit_570m_encGemma4VitEncoder569.55-7681

GMACs and parameter counts are for the default input size and classifier of each architecture, from the benchmark results.

Pretrained weights

Top-1 is ImageNet-1k validation accuracy from results-imagenet.csv at the listed eval size, - if the weight has no ImageNet-1k result (e.g. pretraining or image-text weights). Classes is the size of the pretrained classifier, none for weights without one.

WeightInput sizeTop-1 (%)Eval sizeClassesLicenseHub
gemma4_vit_167m.gemma4_e4b_it768--noneapache-2.0timm
gemma4_vit_167m_enc.gemma4_e4b_it768--noneapache-2.0timm
gemma4_vit_570m.gemma4_31b_it768--noneapache-2.0timm
gemma4_vit_570m_enc.gemma4_31b_it768--noneapache-2.0timm
Update on GitHub