Module vision_tower

Module vision_tower 

Source
Expand description

2026-09-25: The vision tower a built model holds, whichever family bound it.

Owner: model-layers (vision). Invariants: none beyond the types.

Two towers exist: the Qwen3-VL-shaped VisionEncoder and GLM-5.3’s GlmVit. The engine uses them only through this enum:

  • forward_batched(images) -> per-image (post_h, post_w, merged_p),
  • a packed [Σmerged_p, out_hidden_size] BF16 output, image-ordered, read through out_row,
  • out_hidden_size,
  • ensure_scratch, for a tensor-parallel worker that receives rows instead of encoding.

An enum rather than a trait object, so adding a tower means adding a variant to every match here.

Enums§

VisionTower