Skip to content

chore(configs): drop recipe lines that repeat defaults - #3982

Merged
faresobeid merged 1 commit into
mainfrom
chore/drop-default-recipe-overrides
Oct 10, 2026
Merged

faresobeid merged 1 commit into
mainfrom
chore/drop-default-recipe-overrides

Conversation

@faresobeid

@faresobeid faresobeid commented Oct 10, 2026 •

Copy link
Copy Markdown
Contributor

What

Drop recipe lines that only repeat what the config already resolves to. The resolved configs do not change, except for skip_optimizer (see below).

  • [weight_broadcast] type = "nccl": rl already picks NCCL when inference is managed and LoRA is off. Removed from minimax-m2.5 swe, intellect-3.1 rl, and qwen3-30b-a3b swe/math. The block stays in examples/extra/dynamo/rl.toml (no managed inference, so the default there is filesystem) and in glm-5.3 (it also sets port and timeout).
  • ac.freq = 1 (the default) is removed from 8 recipes. The [*.model.ac] table header stays, matching the GLM-4.5-Air recipes.
  • trainer.dist_timeout_seconds = 3600 / dist_timeout_seconds = 3600 (the default) is removed from 5 RL recipes and vlm/sft-moe.
  • inference.vllm.enable_return_routed_experts = true is removed where trainer.enable_router_replay = true already sets it (glm-4.5-air ×4, nemotron-3-super).
  • [trainer.ckpt] skip_optimizer = true is removed from glm-4.5-air swe-budget/search/terminal and nemotron-3-super swe.
    • It only affects loading: on resume, it drops the AdamW/Muon state.
    • It came from the exp: scaleswe ablation #2862/exp: search + terminal ablations #2915 ablation configs. None of these recipes warm-starts from another run's checkpoint. They train from the HF model and resume their own checkpoints, which include optimizer state.
    • configs/ci/integration/reverse-text-sft/full-offload-resume.toml keeps it on purpose: it tests that path.
  • docs/scaling.md: the fused_lm_head_token_chunk_size default is 8192 (since Increase chunk size to 8k #3302), not 1024.

Not touched

  • fused_lm_head_token_chunk_size = 1024 pins (7 recipes) and attn = "flash_attention_3" pins (10). Should they stay as memory/hardware choices?
  • [ac_offloading] max_inflight_activations lines (a separate PR removes the field).
  • The [weight_broadcast] blocks of the GLM-4.5-Air and nemotron recipes (handled in the weight_broadcast.timeout PR, to avoid a conflict).

Test plan

  • pytest tests/unit/orchestrator tests/unit/test_configs.py -m "not gpu": 334 passed (validates every TOML under configs/ and examples/).
  • Resolved configs of all 14 edited recipes, main vs this branch (RLConfig/SFTConfig model_dump):
    • identical, except trainer.ckpt.skip_optimizer True → False in the 4 recipes above;
    • the checkout path in template_path also differs (main checkout vs this worktree), which is not a recipe change.

Note

Low Risk
Mostly documentation and deduplication; the only resolved-config change is skip_optimizer false on four recipes that resume with full optimizer state, which matches their intended training flow.

Overview
Trims RL/SFT example and advanced recipe TOMLs by deleting settings that already match framework defaults, so recipes only spell out non-default choices.

Removed redundant [weight_broadcast] type = "nccl", trainer.model.ac freq = 1, dist_timeout_seconds = 3600, and inference.vllm.enable_return_routed_experts where NCCL broadcast, AC frequency, dist timeout, and routed-expert return are implied (e.g. managed inference + enable_router_replay). Dropped [trainer.ckpt] skip_optimizer = true from four GLM-4.5-Air and Nemotron SWE/search/terminal recipes so resume loads optimizer state from their own checkpoints instead of discarding it.

docs/scaling.md now documents fused_lm_head_token_chunk_size default 8192 (was incorrectly 1024). Explicit pins like fused_lm_head_token_chunk_size = 1024 in memory-tight recipes are unchanged.

Reviewed by Cursor Bugbot for commit c87c43d. Bugbot is set up for automated code reviews on this repo. Configure here.

Remove weight_broadcast.type = nccl, ac.freq = 1, dist_timeout_seconds = 3600, enable_return_routed_experts = true next to enable_router_replay, and stale skip_optimizer = true. Fix the fused_lm_head_token_chunk_size default in docs/scaling.md (8192).
@faresobeid
faresobeid marked this pull request as ready for review October 10, 2026 17:36

@mikasenghaas mikasenghaas left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah ya nice

@faresobeid
faresobeid merged commit 9570bcc into main Oct 10, 2026
18 of 19 checks passed
@faresobeid
faresobeid deleted the chore/drop-default-recipe-overrides branch October 10, 2026 17:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants