Module glm5_next_vision

Module glm5_next_vision 

Source
Expand description

Bind GLM-5.3-Flash’s vision tower: 347 tensors under model.visual.*.

All 347 are BF16 even in nvidia/GLM-5.3-Flash-NVFP4 — only the text/MoE stack is quantised — so this is a pure pointer bind with no dequant path and no copy. Until this file existed the same 1.05 GiB was uploaded by the checkpoint loader and then freed again by factory::build, because that reclaim is keyed off “did any loader bind a tower”, and none did.

Layout notes that matter to the shapes below:

  • patch_embed.proj.weight is (1024, 3, 2, 14, 14) on disk. The Conv3d’s kernel equals its input block, so the convolution degenerates to one dot product per patch and the tensor is read as a [1024, 1176] GEMM weight over the SAME bytes — (in_channel, temporal, py, px), which is exactly the order the host preprocessor lays a patch out in.
  • downsample.weight is (4096, 1024, 2, 2), read as [4096, 4096] in (in_channel, kh, kw) order against the im2col the merger builds.

Functions§

load_glm5_next_vision
Glm5NextWeightLoader::load_vision_encoder.