KEMBAR78
Add calculate_per_token_loss support for Context Parallel by BoxiangW · Pull Request #14065 · NVIDIA-NeMo/NeMo · GitHub
Skip to content

Conversation

@BoxiangW
Copy link
Collaborator

Important

The Update branch button must only be pressed in very rare occassions.
An outdated branch is never blocking the merge of a PR.
Please reach out to the automation team before pressing that button.

What does this PR do ?

Add a one line overview of what this PR aims to accomplish.

Collection: [Note which collection this PR will affect]

Changelog

  • Add specific line by line info of high level changes in this PR.

Usage

  • You can potentially add a usage example below
# Add a code snippet demonstrating how to use this 

GitHub Actions CI

The Jenkins CI system has been replaced by GitHub Actions self-hosted runners.

The GitHub Actions CI will run automatically when the "Run CICD" label is added to the PR.
To re-run CI remove and add the label again.
To run CI on an untrusted fork, a NeMo user with write access must first click "Approve and run".

Before your PR is "Ready for review"

Pre checks:

  • Make sure you read and followed Contributor guidelines
  • Did you write any new necessary tests?
  • Did you add or update any necessary documentation?
  • Does the PR affect components that are optional to install? (Ex: Numba, Pynini, Apex etc)
    • Reviewer: Does the PR have correct import guards for all optional libraries?

PR Type:

  • New Feature
  • Bugfix
  • Documentation

If you haven't finished some of the above items you can still open "Draft" PR.

Who can review?

Anyone in the community is free to review the PR once the checks have passed.
Contributor guidelines contains specific people who can review PRs to various areas.

Additional Information

  • Related to # (issue)

BoxiangW added 2 commits June 29, 2025 17:18
Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>
Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>
@BoxiangW BoxiangW self-assigned this Jun 30, 2025
Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>
akoumpa
akoumpa previously approved these changes Jun 30, 2025
Copy link
Collaborator

@akoumpa akoumpa left a comment

Choose a reason for hiding this comment

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

LGTM, thanks.

@github-actions github-actions bot removed the Run CICD label Jul 1, 2025
@github-actions
Copy link
Contributor

This PR is stale because it has been open for 14 days with no activity. Remove stale label or comment or update or this will be closed in 7 days.

@github-actions github-actions bot added the stale label Jul 16, 2025
@github-actions
Copy link
Contributor

This PR was closed because it has been inactive for 7 days since being marked as stale.

@github-actions github-actions bot closed this Jul 23, 2025
auto-merge was automatically disabled July 23, 2025 02:12

Pull request was closed

@BoxiangW BoxiangW reopened this Jul 29, 2025
@BoxiangW BoxiangW removed the stale label Jul 29, 2025
Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>
@BoxiangW
Copy link
Collaborator Author

/ok to test 843bc58

@yspMing
Copy link

yspMing commented Jul 30, 2025

This works after setting below configuraton for ddp_config and model config for sft training with CP, thanks a lot~

setattr(trainer.strategy.ddp_config, 'average_in_collective', False)
setattr(model.config, 'calculate_per_token_loss', True)

@github-actions github-actions bot removed the Run CICD label Jul 30, 2025
@github-actions
Copy link
Contributor

[🤖]: Hi @BoxiangW 👋,

We wanted to let you know that a CICD pipeline for this PR just finished successfully.

So it might be time to merge this PR or get some approvals.

//cc @chtruong814 @ko3n1g @pablo-garay @thomasdhc

@chtruong814 chtruong814 added the r2.4.0 Pick this label for auto-cherry-picking into r2.4.0 label Jul 31, 2025
@chtruong814
Copy link
Collaborator

Moving forward with merging to ensure this important fix is included.

@chtruong814 chtruong814 merged commit 681601e into main Jul 31, 2025
259 of 266 checks passed
@chtruong814 chtruong814 deleted the boxiangw/cp-per-token-loss branch July 31, 2025 21:36
nasretdinovr pushed a commit to nasretdinovr/NeMo that referenced this pull request Aug 8, 2025
…o#14065)

* Add calculate_per_token_loss for CP

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>

* Add check for average_in_collective

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>

* Apply isort and black reformatting

Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>

* Fix CP issue by adding check on trainer.strategy.ddp_config.average_in_collective

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>

* Apply isort and black reformatting

Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>

---------

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>
Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>
Co-authored-by: BoxiangW <BoxiangW@users.noreply.github.com>
chtruong814 pushed a commit that referenced this pull request Aug 10, 2025
* Add calculate_per_token_loss for CP

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>

* Add check for average_in_collective

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>

* Apply isort and black reformatting

Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>

* Fix CP issue by adding check on trainer.strategy.ddp_config.average_in_collective

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>

* Apply isort and black reformatting

Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>

---------

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>
Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>
Co-authored-by: BoxiangW <BoxiangW@users.noreply.github.com>
Signed-off-by: Charlie Truong <chtruong@nvidia.com>
chtruong814 added a commit that referenced this pull request Aug 13, 2025
#14065) (#14282) into `r2.4.0` (#14448)

* Add cp per token loss check (#14282)

* add cp per token loss check

Signed-off-by: Chen Cui <chcui@nvidia.com>

* Apply isort and black reformatting

Signed-off-by: cuichenx <cuichenx@users.noreply.github.com>

---------

Signed-off-by: Chen Cui <chcui@nvidia.com>
Signed-off-by: cuichenx <cuichenx@users.noreply.github.com>
Co-authored-by: cuichenx <cuichenx@users.noreply.github.com>
Signed-off-by: Charlie Truong <chtruong@nvidia.com>

* Add calculate_per_token_loss support for Context Parallel (#14065)

* Add calculate_per_token_loss for CP

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>

* Add check for average_in_collective

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>

* Apply isort and black reformatting

Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>

* Fix CP issue by adding check on trainer.strategy.ddp_config.average_in_collective

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>

* Apply isort and black reformatting

Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>

---------

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>
Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>
Co-authored-by: BoxiangW <BoxiangW@users.noreply.github.com>
Signed-off-by: Charlie Truong <chtruong@nvidia.com>

---------

Signed-off-by: Chen Cui <chcui@nvidia.com>
Signed-off-by: cuichenx <cuichenx@users.noreply.github.com>
Signed-off-by: Charlie Truong <chtruong@nvidia.com>
Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>
Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>
Co-authored-by: Chen Cui <chcui@nvidia.com>
Co-authored-by: cuichenx <cuichenx@users.noreply.github.com>
Co-authored-by: Boxiang Wang <boxiangw@nvidia.com>
Co-authored-by: BoxiangW <BoxiangW@users.noreply.github.com>
guyueh1 pushed a commit to guyueh1/NeMo that referenced this pull request Aug 25, 2025
…o#14065)

* Add calculate_per_token_loss for CP

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>

* Add check for average_in_collective

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>

* Apply isort and black reformatting

Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>

* Fix CP issue by adding check on trainer.strategy.ddp_config.average_in_collective

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>

* Apply isort and black reformatting

Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>

---------

Signed-off-by: Boxiang Wang <boxiangw@nvidia.com>
Signed-off-by: BoxiangW <BoxiangW@users.noreply.github.com>
Co-authored-by: BoxiangW <BoxiangW@users.noreply.github.com>
Signed-off-by: Guyue Huang <guyueh@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

r2.4.0 Pick this label for auto-cherry-picking into r2.4.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants