The vision encoder of a VLM usually reuses CLIP's ViT (CLIP-ViT-L/14 is the LLaVA-1.5 default) or SigLIP (the LLaVA-1.6 upgrade): the image is split into
p×p patches, position-encoded, and passed through a Transformer, with token count
T=(H/p)×(W/p) — e.g. a 336×336 input with 14×14 patches yields
24×24=576 visual tokens. SigLIP replaces the softmax contrastive loss with a sigmoid loss, removing the dependence on in-batch negatives and temperature, so training uses less memory and smaller batches.