Run Megatron-LM (MLM) and Megatron Bridge training with mock or real data. Covers correlation testing, available recipes, and multi-GPU examples.
Automate repetitive workflows and reduce manual effort
Example: Generate reports, summarize documents, draft communications
Save 3-5 hours per week on routine tasks
Learn new skills, understand complex topics, get expert guidance
Example: Explain concepts, provide examples, suggest learning resources
Accelerate learning and skill development by 2x
Enhance output quality through reviews, suggestions, and refinements
Example: Review drafts, suggest improvements, catch errors
Improve work quality by 30-40% with less effort
Time estimate: 15-45 minutes depending on use case complexity
Prerequisites
Submit your Claude Code skill and start earning
epx add nvidia/skills/nemo-mbridge-mlm-bridge-trainingCompatible with
Supported agents
| name | nemo-mbridge-mlm-bridge-training |
| description | Run Megatron-LM (MLM) and Megatron Bridge training with mock or real data. Covers correlation testing, available recipes, and multi-GPU examples. |
| license | Apache-2.0 |
| when_to_use | Running training, comparing MLM vs Bridge loss curves, translating MLM CLI args to Bridge config, or investigating why loss curves diverged after a commit; 'how do I run training', 'MLM vs Bridge', 'correlation test'. |
For how they differ, the arg mapping tables, gotchas, and translation script, see:
For MLM-vs-Bridge correlation questions, always name these items up front:
vanilla_gpt_pretrain_config.scripts/training/run_recipe.py.3rdparty/Megatron-LM/pretrain_gpt.py.uv run python -m torch.distributed.run.rm -rf nemo_experiments before the Bridge run.Also state that MLM needs
PYTHONPATH=3rdparty/Megatron-LM:$PYTHONPATH, matched Bridge and MLM losses
should agree within BF16 rounding, and files under 3rdparty/Megatron-LM/
should not be modified from this repo.
Use vanilla_gpt_pretrain_config for loss-correlation testing. This recipe uses
bare GPTModelProvider defaults (LayerNorm, GeLU, learned_absolute position
embeddings, vocab_size inherited from tokenizer) — matching MLM
pretrain_gpt.py defaults with no args.
PYTHONPATH=3rdparty/Megatron-LM:$PYTHONPATH \
uv run python -m torch.distributed.run --nproc_per_node=1 \
3rdparty/Megatron-LM/pretrain_gpt.py \
--num-layers 2 --hidden-size 256 --num-attention-heads 4 \
--ffn-hidden-size 1024 --seq-length 512 --max-position-embeddings 512 \
--micro-batch-size 4 --global-batch-size 32 \
--train-iters 10 --eval-iters 2 --eval-interval 10 \
--mock-data --bf16 --use-mcore-models \
--tokenizer-type NullTokenizer --vocab-size 32000 \
--lr 3e-4 --min-lr 3e-5 --seed 1234 --log-interval 1
rm -rf nemo_experiments && \
uv run python -m torch.distributed.run --nproc_per_node=1 \
scripts/training/run_recipe.py \
--recipe vanilla_gpt_pretrain_config \
model.num_layers=2 model.hidden_size=256 \
model.num_attention_heads=4 model.ffn_hidden_size=1024 \
model.seq_length=512 dataset.sequence_length=512 \
train.train_iters=10 train.global_batch_size=32 train.micro_batch_size=4 \
validation.eval_interval=10 validation.eval_iters=2 \
optimizer.lr=3e-4 optimizer.min_lr=3e-5 \
scheduler.lr_warmup_iters=1 scheduler.lr_decay_iters=10 \
rng.seed=1234 logger.log_interval=1
With matched parameters the LM losses should be nearly identical at each
iteration. Compare lm loss values from both logs — they should agree to
within BF16 rounding.
PYTHONPATH=3rdparty/Megatron-LM:$PYTHONPATH \
uv run python -m torch.distributed.run --nproc_per_node=2 \
3rdparty/Megatron-LM/pretrain_gpt.py \
--tensor-model-parallel-size 2 --sequence-parallel \
--num-layers 4 --hidden-size 256 --num-attention-heads 4 \
--seq-length 1024 --max-position-embeddings 1024 \
--micro-batch-size 2 --global-batch-size 16 \
--train-iters 10 --eval-iters 2 --eval-interval 10 \
--mock-data --bf16 --use-mcore-models \
--tokenizer-type NullTokenizer --vocab-size 1024 \
--lr 1e-4 --log-interval 1
rm -rf nemo_experiments && \
uv run python -m torch.distributed.run --nproc_per_node=2 \
scripts/training/run_recipe.py \
--recipe vanilla_gpt_pretrain_config \
model.tensor_model_parallel_size=2 model.sequence_parallel=true \
model.num_layers=4 model.hidden_size=256 \
model.num_attention_heads=4 model.ffn_hidden_size=1024 \
model.seq_length=1024 dataset.sequence_length=1024 \
train.train_iters=10 train.global_batch_size=16 train.micro_batch_size=2 \
validation.eval_interval=10 validation.eval_iters=2 \
scheduler.lr_warmup_iters=2 scheduler.lr_decay_iters=10 \
logger.log_interval=1
Common recipes (use with --recipe):
vanilla_gpt_pretrain_config — Minimal GPT (bare GPTModelProvider defaults,
ideal for correlation testing and custom configs)llama32_1b_pretrain_config — Llama 3.2 1B (16L, 2048H, GBS=512, seq=8192)llama3_8b_pretrain_config — Llama 3 8Bqwen3_8b_pretrain_config — Qwen3 8Bdeepseek_v2_lite_pretrain_config — DeepSeek-V2-Lite 16B MoESFT/PEFT variants use _sft_config / _peft_config suffix.
For what the submodule is and why two versions exist, see @docs/megatron-lm-to-megatron-bridge.md.
./scripts/switch_mcore.sh status
./scripts/switch_mcore.sh dev
# uv sync (without --locked) since lockfile is for main
uv sync
./scripts/switch_mcore.sh main
When you pull the latest Bridge main branch, the submodule pointer may have been updated. Re-sync the submodule:
git submodule update --init 3rdparty/Megatron-LM
Always rm -rf nemo_experiments before a fresh correlation run. Bridge
auto-resumes from stale checkpoints silently.
uv run required: Always use uv run python -m torch.distributed.run
(not bare torchrun or python).
MLM PYTHONPATH: Must include 3rdparty/Megatron-LM so gpt_builders.py
is importable.
Scheduler overrides: When overriding train.train_iters to a small
value, also set scheduler.lr_warmup_iters and scheduler.lr_decay_iters
or you get an assertion error.
Use dataset.sequence_length in CLI overrides, not dataset.seq_length.
MoE OOM: Large MoE models require full activation recomputation and typically multi-node EP. TP does NOT reduce per-GPU expert memory.
uv sync --locked fails after switching to dev: The lockfile is generated
against the main MCore commit. Use uv sync (without --locked) when on dev.
AI-first code editor with Composer
Before installing skills in Cursor, ensure your development environment meets these requirements:
node --versionnemo-mbridge-mlm-bridge-trainingExecute the skills CLI command in your project's root directory to begin installation:
epx add nvidia/skills/nemo-mbridge-mlm-bridge-trainingFetches nemo-mbridge-mlm-bridge-training from nvidia/skills and configures it for Cursor.
The CLI shows a list of agents. Use arrow keys and space to select Cursor:
Confirm successful installation by checking the skill directory location:
.cursor/skills/nemo-mbridge-mlm-bridge-training
Restart Cursor to activate nemo-mbridge-mlm-bridge-training. Access via /nemo-mbridge-mlm-bridge-trainingin your agent's command palette.
Learn more:View source on GitHubSkills CLI docsAbout CursorWhat are agent skills?
Steps
Common Pitfalls
✓ Do
✗ Don't
💡 Pro Tips
✓ Use when
Use when skill capabilities match your task, clear ROI on time saved, and you can validate outputs. Best for repetitive tasks, learning, and quality improvement.
✗ Avoid when
Avoid when task requires deep expertise you can't validate, involves sensitive decisions, or when learning process is more valuable than speed of completion.
nemo-rl-auto-research
nvidia/skills · nemo · same repo
rag-blueprint
nvidia/skills · rag · same repo
cuopt-numerical-optimization-api-cli
nvidia/skills · cuopt · same repo
nemoclaw-user-deploy-remote
nvidia/skills · nemoclaw · same repo
cupynumeric-parallel-data-load
nvidia/skills · cupynumeric · same repo
cuopt-numerical-optimization-api-python
nvidia/skills · cuopt · same repo
nemo-mbridge-mlm-bridge-training reduced setup friction for our internal harness; good balance of opinion and flexibility.
We added nemo-mbridge-mlm-bridge-training from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
nemo-mbridge-mlm-bridge-training reduced setup friction for our internal harness; good balance of opinion and flexibility.
Solid pick for teams standardizing on skills: nemo-mbridge-mlm-bridge-training is focused, and the summary matches what you get after install.
I recommend nemo-mbridge-mlm-bridge-training for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
Keeps context tight: nemo-mbridge-mlm-bridge-training is the kind of skill you can hand to a new teammate without a long onboarding doc.
I recommend nemo-mbridge-mlm-bridge-training for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
nemo-mbridge-mlm-bridge-training is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
Useful defaults in nemo-mbridge-mlm-bridge-training — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
nemo-mbridge-mlm-bridge-training has been reliable in day-to-day use. Documentation quality is above average for community skills.
showing 1-10 of 36