1. Model Introduction
GLM-4.5 is Zhipu AI’s flagship MoE language model with advanced capabilities in reasoning, function calling, and multi-modal understanding. Key highlights:- Sparse MoE architecture: 355 B / 32 B-active for frontier runs and 106 B / 12 B-active for two-node experimentation.
- Strong reasoning: built-in step-by-step reasoning, with FP8 rollout supported on Blackwell hardware.
- Speculative decoding: EAGLE/MTP rollout is always on in the 8-node launcher;
run_glm45_355b_a32b.pyexposes--enable-mtp. - R3 / MIS opt-in: routing-stability extensions available behind a flag (
--enable-mis) onrun_glm45_355b_a32b.py.
2. Supported Variants
The 106B-A12B variant has no launcher under
scripts/; the canonical recipe is examples/infra_features/p2p_weight_transfer/GLM-4.5-Air.sh (8-node, P2P weight transfer).
3. Environment Setup
3.1 Required env vars
The 8-node launcher (run_glm45_355b_a32b_8node.py) requires:
--model-dir (default /root/models), --data-dir (default /root/datasets), --output-dir (default /root/shared_data) — all three must live on a shared FS reachable from every node. run_glm45_355b_a32b.py reads no env vars either.
3.2 Download model + datasets
3.3 HF → Megatron torch_dist conversion
The 8-node launcher does not convert for you — produce /root/models/GLM-4.5-355B-A32B_torch_dist/ ahead of time:
run_glm45_355b_a32b.py automates the full flow (download → optional tools/convert_hf_to_fp8.py → convert_checkpoint → rsync to model_local_dir → submit).
4. Launch
4.1 Quick start
4.2 Multi-node fan-out
run_glm45_355b_a32b_8node.py performs Ray fan-out internally, ssh-ing every host of --ray-hostfile (default /root/mpi_rack_hostfile) into the cluster. Pass --no-join-ray-workers when the cluster is already joined.
5. Recipe Configuration
5.1 Parallelism
5.2 Algorithm
Neither launcher enables
--use-rollout-routing-replay by default. run_glm45_355b_a32b.py exposes --enable-mis (TIS/RS config) as an opt-in.
5.3 Rollout & SGLang
--moe-token-dispatcher-type flex, --moe-enable-deepep.
5.4 Optimizer
CPU Adam on:5.5 Notable quirks
- The 8-node launcher passes neither
--loadnor--save, so--loaddefaults to the value of--ref-load.--saveturns checkpointing to<output-dir>/checkpointsback on, every 20 steps. run_glm45_355b_a32b.pyis Blackwell-only:_execute_trainassertsargs.hardware != "H100".
6. Pairs Well With
- Low Precision RL
- INT4 QAT
- Rollout Routing Replay (R3) — opt-in via
--enable-misonrun_glm45_355b_a32b.py.

