1. Model Introduction
Qwen3 MoE is the Mixture-of-Experts branch of the Qwen3 series, available in two sizes: 30 B-A3B (single-node) and 235 B-A22B (multi-node). Key highlights:- Sparse MoE architecture: 30 B / 3 B-active and 235 B / 22 B-active variants, scaling capacity without proportional compute cost.
- Strong reasoning and coding: shares the Qwen3 generation’s improvements in instruction following, math, and tool usage.
- Long-context capability: 256 K-token context inherited from the Qwen3 series.
- Flexible scaling: 30 B fits a single 8-GPU node; 235 B is the canonical multi-node target with FP8 rollout.
2. Supported Variants
3. Environment Setup
3.1 Required env vars
The 235 B launcher requires:--model-dir (default /root/models) for the checkpoints, --data-dir (default /root/datasets) for the datasets, --output-dir (default /root/shared_data) for what the run writes. Point them at a shared FS path reachable from every node. The 30 B launcher reads no env vars at all.
3.2 Download model + datasets
3.3 HF → Megatron torch_dist conversion
<model-dir>/Qwen3-235B-A22B_torch_dist as --ref-load.
4. Launch
4.1 Quick start
4.2 Multi-node fan-out
run_qwen3_235b_a22b.py ssh-fans-out to workers via --ray-hostfile (default /root/mpi_rack_hostfile) itself; you only need MASTER_ADDR set on the head node. Pass --no-join-ray-workers when the cluster is already joined. The 30 B launcher is single-node.
5. Recipe Configuration
5.1 Parallelism
run_qwen3_235b_a22b.py sets --decoder-last-pipeline-num-layers 22 to balance the layer count across PP=4. Its rollout is disaggregated, so it needs a further 64 GPUs (--rollout-num-gpus) on top of the actor pool.
5.2 Algorithm
- 30 B launcher: GRPO with
--eps-clip 0.2 --eps-clip-high 0.28. - 235 B launcher: GSPO (
--advantage-estimator gspo,--eps-clip 4e-4);--use-kl-lossis not passed.
5.3 Rollout & SGLang
run_qwen3_30b_a3b.py (H100, 1 node, BF16 rollout):
run_qwen3_235b_a22b.py:
5.4 Optimizer
Bothrun_qwen3_30b_a3b.py (H100, 1 node) and run_qwen3_235b_a22b.py enable CPU Adam:
run_qwen3_30b_a3b.py removes them when running on Blackwell (B200/B300/GB200/GB300) per the hardware match in the launcher.
5.5 Notable quirks
- 30 B launcher supports FP8 / MXFP8 / INT4 rollout, Blackwell hardware, Megatron-bridge mode, and MIS via Typer flags.
- 235 B defaults to the FP8 HF checkpoint — pass
--no-rollout-fp8to roll out from the BF16 directory instead. - R3 not on by default; opt-in via
run_qwen3_30b_a3b.py --enable-mis(TIS / RS) for routing-stability experiments.

