Skip to content

feat: nemotron Parse fine-tuning notebook and assets#1655

Merged
HuiyingLi merged 7 commits intomainfrom
nb
Apr 8, 2026
Merged

feat: nemotron Parse fine-tuning notebook and assets#1655
HuiyingLi merged 7 commits intomainfrom
nb

Conversation

@krishnakalyan3
Copy link
Copy Markdown
Contributor

What does this PR do ?

Adds a Nemotron Parse fine-tuning example. An end-to-end Jupyter notebook, matching YAML config, and a small dataset helper so users can reproduce fine-tuning with NeMo AutoModel. The notebooks README lists the notebook with Open in Colab and Launch on Brev links for quick starts.

@copy-pr-bot
Copy link
Copy Markdown

copy-pr-bot bot commented Apr 2, 2026

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Hi @krishnakalyan3 ,

Thanks for making this, do we need this file to be outside the ipynb? I can understand the yaml, but curious about this one.

Thanks

Copy link
Copy Markdown
Contributor Author

@krishnakalyan3 krishnakalyan3 Apr 7, 2026

Choose a reason for hiding this comment

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

The invoice_dataset.py is intentionally kept as an external file to demonstrate how you can bring your own custom dataset without relying on one that's already registered in datasets.py.

HuiyingLi
HuiyingLi previously approved these changes Apr 7, 2026
Copy link
Copy Markdown
Contributor

@HuiyingLi HuiyingLi left a comment

Choose a reason for hiding this comment

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

The launchable works fantastic TYSM!

@HuiyingLi
Copy link
Copy Markdown
Contributor

/ok to test 6c6072d

@HuiyingLi
Copy link
Copy Markdown
Contributor

/claude review

Comment thread tutorials/nemotron-parse/finetune.ipynb Outdated
"source": [
"ckpt_dirs = sorted(glob.glob(f\"{WORK_DIR}/invoice_checkpoints/epoch_*_step_*\"))\n",
"assert ckpt_dirs, f\"No checkpoints found in {WORK_DIR}/invoice_checkpoints/\"\n",
"WORK_DIR = str(Path.home())\n",
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Bug: WORK_DIR is hardcoded to Path.home(), but checkpoint_dir in the YAML config is nemotron_parse_checkpoints/ (a relative path resolved against CWD at training time). If the user's CWD during torchrun isn't their home directory, this glob will find nothing and the assert will fail.

Consider deriving it from the actual CWD (or using Path.cwd()) to stay consistent with how the YAML relative path resolves:

WORK_DIR = str(Path.cwd())

Or, alternatively, make the YAML checkpoint_dir an absolute path under Path.home() so both sides agree.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Changes made :)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Krishna Kalyan <krkalyan@nvidia.com>
@krishnakalyan3
Copy link
Copy Markdown
Contributor Author

/ok to test 665da0d

@copy-pr-bot
Copy link
Copy Markdown

copy-pr-bot bot commented Apr 8, 2026

/ok to test 665da0d

@krishnakalyan3, there was an error processing your request: E2

See the following link for more information: https://docs.gha-runners.nvidia.com/cpr/e/2/

@krishnakalyan3
Copy link
Copy Markdown
Contributor Author

/ok to test 1bf05a7

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Krishna Kalyan <krkalyan@nvidia.com>
@krishnakalyan3
Copy link
Copy Markdown
Contributor Author

/ok to test 8b1eb20

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.

3 participants