Generated banner for Nemotron Customize
Generated logo for Nemotron Customize

Nemotron Customize

NVIDIAOfficialCreated by NVIDIA Nemotron Team

  • Skill
  • Tool integration
  • Agent tooling
  • Apache-2.0
  • Medium risk

From the author

Plan, configure, and chain repo-native Nemotron customization steps into single-step or multi-step pipelines: curation, translation, SFT/PEFT (AutoModel or Megatron-Bridge), pretraining/CPT, RL alignment (DPO/RLVR/GRPO/RLHF), BYOB/MCQ benchmarks, checkpoint conversion, ModelOpt optimization, env profiles, and evaluation of trained checkpoints or existing/hosted endpoints. Use when a request names a Nemotron step or workflow, or asks to clean, translate, train, fine-tune, align, convert, optimize, evaluate, or compose these into a pipeline. Do NOT use for frontend/dashboard/visualization work, generic ML advice, billing/access, or non-Nemotron coding tasks.
— the description by NVIDIA Nemotron Team

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

The nemotron-customize skill provides a structured approach to planning and executing model customization pipelines within the Nemotron repository. It enables users to chain specific steps such as curation, translation, SFT/PEFT, pretraining, RL alignment, and evaluation. The skill emphasizes artifact-based composition, ensuring that data outputs from one step correctly feed into the next. It requires users to provide concrete values like model paths and hardware configurations, and it enforces safety by requiring environment profiles for remote execution and preventing the exposure of sensitive credentials.

What it does

  • Plans multi-step DAGs for model customization based on artifact compatibility.
  • Configures existing Nemotron steps by creating new YAML files in the step's config directory.
  • Validates artifact wiring between pipeline stages.
  • Provides commands for running single-step or multi-step training and evaluation workflows.
  • Enforces safety by requiring environment profiles and redacting sensitive information.
  • Routes requests to appropriate catalog steps based on the user's end goal.

When to use it

  • When you need to fine-tune, pretrain, or align a Nemotron model.
  • When you need to curate or translate training data using repository-native tools.
  • When you need to evaluate or benchmark a model endpoint.
  • When you need to convert checkpoints between Hugging Face and Megatron formats.
  • When you need to compose multiple customization steps into a single pipeline.

Advantages

  • Ensures pipeline consistency by using artifact-based composition.
  • Maintains repository integrity by requiring new configs instead of modifying existing ones.
  • Provides a clear, reproducible workflow for complex training tasks.
  • Reduces errors by validating hardware and configuration constraints before execution.

Usage examples

“I need to fine-tune a Hugging Face model using LoRA on 2 GPUs.”
The agent will route the request to peft/automodel, collect the necessary paths and parameters, and provide a command to run the fine-tuning process.
“Create a pipeline for data preparation and SFT for a Super3 model.”
The agent will plan a DAG consisting of data_prep/sft_packing followed by sft/megatron_bridge, verify the artifact chain, and guide you through creating the required configs.

Install

  1. Download the skill as a ZIP:

    https://mp-staging.autogineer.com/agent-skills/nvidia/nemotron-customize/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip nemotron-customize.zip -d .agents/skills

Documentation by NVIDIA Nemotron Team

nemotron-customize

IMPORTANT: Read this file before answering any nemotron-customize, Nemotron customization, Curator curation, translation, SFT, PEFT, RL, conversion, optimization, checkpoint or existing/hosted-endpoint evaluation, or multi-step pipeline request. This applies whether the user names one step or asks you to compose several steps into a pipeline.

Evaluation requests count even when no training is involved: "evaluate", "benchmark", "smoke test", or "score" an existing/hosted endpoint, an API/model ID, or a deployed model all route to eval/model_eval. Read this skill for those too.

Purpose

Turn a model-customization request into a repo-native Nemotron step pipeline. Plan the DAG, validate artifact wiring, and create only the YAML/config files needed to run existing steps.

Use this skill only for inspecting, configuring, validating, running, or submitting existing Nemotron steps or multi-step training/customization pipelines. For frontend, dashboard, visualization, generic ML advice, billing/access, or unrelated coding tasks, stop with a short scope note and do not inspect the step catalog or edit files in that turn.

Prerequisites

  • A checkout of the Nemotron repo with src/nemotron/steps/ present; run from the repo root.

  • uv available to invoke uv run nemotron steps ....

  • For remote execution: an env profile TOML (NEMOTRON_ENV_FILE or env*.toml) with a section matching the selected step.

  • For hosted services (translation, hosted eval): the auth environment variable expected by the step (for example NVIDIA_API_KEY), exported in the environment — never inlined or committed.

  • User-provided concrete values (model/checkpoint, data paths, output dir, hardware/GPU count) before any command is presented as runnable.

Limitations

  • Does not invent new catalog steps. When no existing step, runner, recipe, CLI, or config can satisfy the request, it names the gap (Explorer mode) instead of fabricating a step.

  • Produces YAML/config for existing steps; new Python/shell is out of scope except in Explorer mode after the gap is approved.

  • Not for deployment-only/serving, frontend, dashboards, generic ML advice, or non-Nemotron tasks.

  • Does not guess concrete values (paths, model IDs, GPU counts, profiles); it asks or returns Blocked when they are missing.

Core Rule

Use bundled references first. The references/ folder is the first decision surface for routing, artifacts, patterns, hardware heuristics, and command shape. Use src/nemotron/steps/... only as a live verification/fallback source when you need exact current config fields, manifests, runner imports, or details missing from bundled references.

If sources disagree:

  1. Checked live repo files win for exact execution.

  2. Bundled references win for initial routing and planning.

  3. Upstream docs/context packs are used only for exceptional code generation or library API details.

Before You Begin

  • Read this SKILL.md workflow and the relevant bundled reference before opening repo source files.

  • Route from references/CATALOG.md and references/ARTIFACTS.md before any broad repo exploration. Once a route is determined, verify only the selected live step/config/env files needed for the answer.

  • Do not emit commands with fake paths, placeholder model IDs, guessed task IDs, guessed batch profiles, or default auth variable names presented as facts. Ask for missing concrete values or return a Blocked handoff.

  • Use references/COMMANDS.md as the authoritative checklist before finalizing configs or execution commands.

  • For pipeline requests, plan before editing. Do not create or modify files until the DAG, artifact edges, required inputs, and validation checks are stated and approved.

  • For one-shot command requests, prefer a complete parameterized command in one response over exploratory prose, but only after required inputs are known. If the user already provides the needed values and asks for only a command, answer with the command first and keep explanation minimal.

  • Output discipline (keeps responses tight): emit one command block per step, include only flags the step actually defines, and add no speculative or invented flags. Keep narrative to a few lines — the command plus the required safety/profile callouts, not a tutorial. Do not restate reference content the user did not ask for.

  • Do not spawn subagents for one-shot command lookup. Use the bundled command reference directly; verify only the selected step if needed.

Safety

Keep Bash scoped to repo-safe commands such as uv run nemotron steps ..., targeted tests, git status/diff, and config validation. Never run environment dumps (env, printenv, broad export) or commands that expose secret values. For remote submissions, destructive changes, or expensive launches, confirm before execution.

When inspecting env/config files, avoid printing whole files that may contain secrets. Use targeted reads, report only section names and env-var names, and redact values for fields containing token, key, secret, password, credential, or auth.

Reference Map

QuestionRead firstLive fallback / verification
Which step or category fits?references/CATALOG.mduv run nemotron steps list/show, then selected step.toml
Do artifacts chain?references/ARTIFACTS.mdsrc/nemotron/steps/types.toml
What run shape should I emit?references/COMMANDS.mdchecked-in config YAML plus active profile TOML
Remote profile generation or selectionreferences/COMMANDS.mdactive NEMOTRON_ENV_FILE, env.toml, or env.*.toml
What hardware/backend should I recommend?references/HARDWARE.mdselected step [[models]] and [[strategies]]
Which cross-step guardrails apply?references/PATTERNS.mdsrc/nemotron/steps/patterns/<id>.md
How do I run the full workflow?references/WORKFLOW.mdselected step configs, step.py, and runners
Which upstream library API should generated code use?references/context/index.toml -> matching packselected step.py, _runners/, upstream docs
New project scaffold, only when existing repo code cannot support the requestreferences/act/PROJECT.mdexisting repo project/recipe shape
Per-stage code rules, only when existing repo code cannot support the requestreferences/act/STAGE.mdselected step.py and shared runner

Do not start by reading category READMEs or step.toml for ordinary decisions. Select candidates from bundled references, then verify exact live details before writing configs or final commands.

Routing

Use references/CATALOG.md as the authoritative home for step selection and route-specific fast paths. Use ARTIFACTS.md, PATTERNS.md, and HARDWARE.md only to resolve artifact, cross-step, or hardware constraints after the catalog narrows the route.

Each step is independent and stitching steps together is your job. Compose any pipeline by artifact matching from the user's end goal: chain a step only when the next step consumes an artifact type nothing upstream already produces. Do not rely on fixed, named step combinations.

Instructions

Follow the flow that matches the request: a recommendation/plan, a single-step command, or a multi-step pipeline. In all cases, route from the bundled references first, gather required inputs, and verify the selected live step before presenting anything as runnable.

Recommendation Response

Use this shape for planning answers:

Decision, Why, Required inputs, Config/command, Avoid, and Next step. Call out the stack to avoid when the user's constraints make it a poor fit.

Whenever the answer includes a command that touches a hosted service or remote execution, also state, in the answer:

  • The auth env-var name and that its value must be exported in the environment, never inlined or committed (never print the value).

  • For --batch/--run, the env TOML profile prerequisite; if no profile exists, mark the command Blocked or give the local --dry-run shape.

Single-Step Command Flow
  1. Confirm repo root has pyproject.toml and src/nemotron/steps/.

  2. Read references/CATALOG.md and the selected section of references/COMMANDS.md.

  3. Verify the selected live step with uv run nemotron steps show <step_id> when available, or the selected step.toml when the CLI is unavailable.

  4. Read the requested checked-in config or user overlay before emitting the command.

  5. For remote execution, read NEMOTRON_ENV_FILE or repo-root env*.toml and pick an actual section whose profile matches the step.

  6. Emit the full command in one reply with the source tier: Verified, Repo-grounded, Reference-grounded, or Blocked.

Canonical command shapes live in references/COMMANDS.md.

Pipeline Workflow

For pipelines with two or more stages, use Orient -> Plan -> Act -> Verify. Read references/WORKFLOW.md for the phase checklist.

  • Orient from bundled references and user constraints.

  • Plan a DAG with artifact types, configs, patterns, and validation checks.

  • Wait for approval before writing configs or code.

  • Act with YAML/config-only changes whenever an existing step can satisfy the request.

  • Verify every generated YAML, artifact edge, command, and README command before reporting completion.

Catalog Mode

Use when the request maps to existing steps. Fast path:

references/CATALOG.md -> references/ARTIFACTS.md -> references/COMMANDS.md -> verify selected live manifest/config/profile -> add a new named config under the selected step's config/ directory.

Customization Surface

  • Always customize through the step catalog under src/nemotron/steps/. Never divert to alternate recipe CLIs such as src/nemotron/cli/commands/super3/ or .../nano3/, even for Super3/Nano3 work. If a request seems to need those, map it back to the equivalent catalog step (e.g. sft/megatron_bridge).

  • Make customizations as NEW config files inside the selected step's src/nemotron/steps/<cat>/<step>/config/ directory, for example src/nemotron/steps/sft/megatron_bridge/config/my_super3.yaml.

  • Never edit the checked-in default.yaml, tiny.yaml, other shipped configs, step.toml, step.py, or shared runners. Adding a new config file beside them is the expected and only customization write.

  • Base new configs on the checked-in default.yaml schema (read it, copy the needed fields), then override only what the request requires.

Explorer Mode

Use only after confirming no existing step, runner, recipe, CLI, or YAML config surface can satisfy the request. Full procedure lives in references/WORKFLOW.md.

Configuration Alignment

Surface these constraints before commands or config writes:

  • SFT packing pack_size, Megatron-Bridge seq_length, packed sequence size, tokenizer, and chat template must match.

  • Prepared packed_parquet and binidx are tokenizer-locked; rebuild after tokenizer, chat-template, sequence-length, split, or blend changes.

  • Megatron-Bridge global batch size must be divisible by data-parallel size; start distributed validation with micro batch size 1.

  • TP/PP/CP/EP choices must fit GPU count, memory, topology, and model divisibility.

  • LoRA merge requires the exact base checkpoint/model and tokenizer used during adapter training.

  • Conversion/eval of Megatron checkpoints should point at a concrete iter_* checkpoint, not a parent run directory.

  • Hosted eval and translation configs store auth env-var names only, not values.

Operational Nuances

  • Smoke configs (tiny.yaml, tiny_chat.yaml) are wiring tests, not quality evidence.

  • ${art:...} references belong in recipe-backed configs; standalone YAML uses plain paths.

  • Keep pretraining bin/idx data and blend.json from the same run/release.

  • Write customized configs as new files in the step's src/nemotron/steps/<cat>/<step>/config/ directory; never modify the checked-in default.yaml or other shipped configs.

  • For LoRA, preserve the exact base checkpoint and tokenizer/template metadata needed by later merge/eval.

  • For translation and hosted eval, mention auth environment variable names only, never values.

Boundaries

Do:

  • Always route through the step catalog under src/nemotron/steps/; never use alternate recipe CLIs (src/nemotron/cli/commands/super3|nano3/...).

  • Reuse repo CLIs, runners, recipes, steps, and checked-in configs first.

  • Customize by adding a new config under the step's config/ directory; base it on default.yaml rather than copying it blindly.

  • Validate artifact edges and cite patterns that changed the plan.

  • Ask about hardware/data/backend/output path when missing.

  • Surface tradeoffs such as AutoModel vs Megatron-Bridge and full SFT vs LoRA.

Do not:

  • Invent steps when a catalog step fits.

  • Skip Plan for pipelines with two or more stages.

  • Generate Python or shell when YAML is enough.

  • Add monitoring/W&B unless asked.

  • Assume GPU count, env profile, endpoint type, task ID, or auth value.

  • Generate Slurm/Airflow/Kubeflow wrappers unless the request explicitly needs deployment scaffolding.

  • Edit checked-in step files (default.yaml/tiny.yaml, other shipped configs, step.toml, step.py, runners); only add a new config beside them.

  • Restate all per-step rules in SKILL.md; use bundled references and source fallback.

Examples

Single-step routing (LoRA on a small box). User: "LoRA fine-tune a HF model on 2 GPUs." Route per CATALOG.md -> peft/automodel (HF base + small GPU count); do not offer Megatron-Bridge. Collect base model, JSONL data path, output dir, LoRA rank/alpha, then emit one uv run nemotron steps run peft/automodel -c <config> --dry-run ... command.

Multi-step pipeline (Super3 SFT). User: "data prep + SFT for Super3." This is two stages, so plan first: SFT on Super3 -> Megatron-Bridge, which consumes packed_parquet, so data_prep/sft_packing is required upstream. Present the DAG (sft_packing -> sft/megatron_bridge), align pack_size/seq_length/ tokenizer, wait for approval, then add new configs under src/nemotron/steps/<step>/config/<name>.yaml. Super3 needs a remote profile; state the env TOML prerequisite or mark Blocked.

Hosted-endpoint evaluation (no training). User: "benchmark my hosted model endpoint." Route to eval/model_eval with -c tiny_chat. Collect endpoint URL, model id, task IDs, and the auth env-var name (value exported, never inlined). See references/COMMANDS.md Evaluation Examples.

Troubleshooting

SituationAction
Artifact types do not chainRecheck references/ARTIFACTS.md; insert a converter or change the DAG before writing configs.
Remote profile or --batch is unclearRead active env TOML; do not guess profile names.
Config key is unclearVerify selected checked-in config, step.py, and shared runner before editing.
Strategy points to a missing context packSkip the pack, use catalog/pattern text, and flag the plan with WARNING: <topic> docs unavailable.
Hardware looks too smallUse references/HARDWARE.md; suggest smaller model, AutoModel, then LoRA before full Megatron-Bridge.
Two Act attempts failStop, explain what was tried and failed, and ask how to proceed.
No existing repo path matchesCheck references/context/index.toml and selected source fallback; use Explorer mode only after naming the gap.

Files

references/WORKFLOW.md

Nemotron Customize Workflow

Use this reference when SKILL.md says to run the full pipeline workflow or Explorer mode. Start from bundled references; use src/nemotron/steps/... only to verify exact live manifests, checked-in configs, runner imports, or details missing from the references.

Table Of Contents

  • Phase 1: Orient

  • Phase 2: Plan

  • Phase 3: Act

  • Explorer Mode

  • Phase 4: Verify

Phase 1: Orient

Goal: enumerate candidate steps and gather constraints in one pass.

Read these first:

  • CATALOG.md

  • ARTIFACTS.md

  • PATTERNS.md

  • HARDWARE.md when hardware is in scope

  • COMMANDS.md when the user asks for runnable commands

Verify via the CLI when available. If CATALOG.md already identifies a single step, skip broad list calls and go straight to steps show <step_id>.

uv run nemotron steps list --json
uv run nemotron steps list --json --category sft
uv run nemotron steps list --json --consumes training_jsonl
uv run nemotron steps list --json --produces checkpoint_megatron
uv run nemotron steps show <step_id>

For each candidate step, verify the live step.toml only when you are about to write YAML, emit a final command, or resolve a field missing from CATALOG.md. Focus on [[consumes]], [[produces]], [[parameters]], [[strategies]], [[errors]], and [reference]. Read category/step READMEs only as fallback for nuance not already captured in bundled references.

Before planning, collect the selected-step constraints from COMMANDS.md and the user's goal. Ask for missing values instead of assuming them.

Phase 2: Plan

Produce a markdown plan the user reviews before code or config changes.

Include:

  • Intent

  • Stages

  • Validation

  • Infrastructure

For each stage, list the step id, input source, output artifact, 2-3 key parameters, matched step.toml strategies, and matched patterns. Use a Mermaid graph for artifact flow.

Hard checks:

  • Artifact types chain via ARTIFACTS.md; verify with types.toml before execution-sensitive changes.

  • Tokenizer, chat template, and sequence length align across prep and train.

  • RL stages warm-start from an SFT-compatible checkpoint.

  • GPU count satisfies the selected model and training stack.

  • Applicable patterns from PATTERNS.md are cited.

If a check fails, surface it as WARNING: and propose a fix. For too-small hardware, suggest smaller model, then AutoModel, then LoRA, before full Megatron-Bridge fine-tuning.

Wait for user approval before Act. If new code is necessary, name the missing repo capability and get approval for Explorer mode.

Phase 3: Act

Prefer YAML-only changes for existing steps. No placeholders or TODOs.

Before creating code, identify the existing execution path:

  • CLI commands under src/nemotron/cli/

  • Step entrypoints in src/nemotron/steps/<cat>/<step>/step.py

  • Shared runners in src/nemotron/steps/_runners/

  • Existing configs under the selected step, recipe, or runner directory

For Catalog-mode customization, write each stage's config as a NEW file inside that step's own config/ directory:

src/nemotron/steps/<cat>/<step>/config/<descriptive-name>.yaml

For example a Super3 SFT run adds src/nemotron/steps/sft/megatron_bridge/config/my_super3.yaml. Never edit the checked-in default.yaml/tiny.yaml or other shipped step files; only add new config files beside them. Always stay within the step catalog under src/nemotron/steps/; do not route to alternate recipe CLIs such as src/nemotron/cli/commands/super3/.

YAML must match fields read by the existing step.py and runner, base on the checked-in default.yaml schema rather than inventing keys, use user-provided paths and environment choices, and preserve artifact compatibility from the approved plan.

Explorer Mode

Use Explorer mode only when no existing callable step, runner, CLI, recipe, or YAML config surface can satisfy the request.

Load:

  • references/act/PROJECT.md

  • references/act/STAGE.md

  • The relevant context pack from references/context/index.toml, if mapped

  • The closest src/nemotron/steps/<cat>/<step>/step.py

  • The relevant shared runner, if the step imports one

Implement the narrowest missing stage. Mirror existing step.py shape, type consumes/produces with ARTIFACTS.md plus live types.toml verification, and report files written, exposed knobs, UPSTREAM notes, and followed strategies. If the same Explorer build keeps appearing, suggest contributing a catalog step under src/nemotron/steps/.

Phase 4: Verify

Check before reporting completion:

  • Every generated YAML file parses and uses fields supported by the step/runner.

  • Stage output artifact types match the next stage's input types.

  • Existing CLI or runner commands can consume the generated configs.

  • Exceptional code has valid Python syntax and imports real repo modules.

  • README commands, if written, match actual configs.

  • Smoke configs use reduced iters, batch sizes, or max steps.

  • Tokenizer and sequence length align across prep and training configs.

  • Standalone YAML does not leak ${art:...} references unless a recipe path explicitly requires them.

Fix verification issues before reporting completion.

Requirements and compatibility

Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Needs: Needs an API key, Needs Python

Security

What our scanner noticed· Medium risk

  • Large base64-encoded blobs
  • Instructions that use the network

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

Created by
NVIDIA Nemotron Team
Publisher
NVIDIA (Official)
Source
NVIDIA/skills · skills/nemotron-customize · commit fce3cca
Licence
Apache License 2.0 (redistribution allowed)
  • LICENSE (added by AutoGineer from LICENSE-APACHE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced

AutoGineer is not affiliated with or endorsed by NVIDIA Nemotron Team or NVIDIA.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download nemotron-customize.zip