Train on SPECTER or Triplet JSONL
Register an existing embedding dataset as a platform fileset so Stage 2 Automodel can train on it. This replaces the NVDocs data, not the Nemotron 3 Embed model entity.
The default recipe is Embedding Model Customization, which mines hard negatives from NVDocs. SPECTER negatives are papers that the positive does not cite, not passages mined for proximity to the positive, so expect a smaller nDCG gain. SPECTER carries no retrieval evaluation split (eval_beir): keep a frozen NVDocs eval_beir fileset for Stage 4, or skip retrieval evaluation. The validation.jsonl created below is only for validation loss and checkpoint selection during training.
What this notebook registers
Rows use the triplet schema described in dataset format:
neg_doc is a non-empty JSON list. The cells below convert SPECTER locally and upload the result. At the fileset root, Automodel discovers train*.jsonl or training*.jsonl as training data and val*.jsonl, validation*.jsonl, or dev*.jsonl as optional validation data. If no validation file is present, Automodel creates a deterministic holdout from the training rows using schedule.validation_split, which defaults to 10%.
Equivalent CLI for the upload, once the files exist on disk:
This notebook uses the default workspace. If your current CLI context uses a different workspace, run nemo config set --workspace default first.
Return to Stage 2
In Embedding Model Customization, keep model="default/nemotron-3-embed-1b" and set:
Equivalent CLI:
Each SPECTER row carries one negative, so train_n_passages is 2 rather than the 5 used with mined NVDocs negatives. Optimizer, batch, and GPU settings match the validated NVDocs recipe, except warmup. The default split keeps 2,850 of the 3,000 SPECTER rows for training. Two epochs at global batch size 128 are about 46 optimizer steps, so this command sets warmup_steps to 5, about 10% of the run. Scale warmup to about 10% of total training steps whenever the training-row count or the number of epochs changes. dataset.training points at the whole fileset, so Automodel reads both training.jsonl and the optional validation.jsonl; no separate dataset reference is needed. Automodel reads data from a fileset, not from a local path or a Hugging Face dataset URI.
For Stage 4, pass the NVDocs eval_beir artifacts fileset to retrieve-eval.