Skip to content

feat(osworld): OSWorld v2 training stack - #4581

Open
jinglinglingling wants to merge 34 commits into
NVIDIA-NeMo:mainfrom
jinglinglingling:linglinj/flashreinforce-agentenv-osworld
Open

jinglinglingling wants to merge 34 commits into
NVIDIA-NeMo:mainfrom
jinglinglingling:linglinj/flashreinforce-agentenv-osworld

Conversation

@jinglinglingling

Copy link
Copy Markdown
Contributor

Summary

  • add the logical-owner SingleController/context-compaction foundation and portable OSWorld v2 launcher
  • add FlashREINFORCE binary-KL gating at threshold 0.01 with prompt-mean-token-mean aggregation
  • add Dr.GRPO and preserved REINFORCE group-baseline recipe alternatives over the complete logical-owner population
  • add the offline DAPO-band freezer and RFC0040 iter-881 B8/N8 plus target B17/N16 recipes with R3/router replay and LR 5e-6
  • propagate active logical generation indices so AgentEnv can initialize one OSWorld task and fork exactly the selected owners
  • select AgentEnv/OpenSandbox at runtime, mount the pinned CA securely, and preflight the chosen backend

Semantics

  • B17/N16 gives 272 logical training owners per optimizer step (17 * 16 > 16 * 16)
  • AgentEnv fork oversampling reuses one initialized task state across configured N owners; it does not add optimizer rows
  • reinforce_baseline and dr_grpo are separate recipe alternatives

Verification

  • focused FlashREINFORCE/advantage/CC/dataset suite: 177 passed
  • AgentEnv recipe composition and rollout metadata suite: 14 passed
  • qualified-container node preflight and resolved B8/N8 recipe validation passed
  • AgentEnv submit dry-run passed
  • live Cell-3 provider fork and real OSWorld task setup/fork smoke passed with zero residual sandboxes
  • copyright, secret, submodule fast-forward, title, and formatting checks pass on the fork PR

Dependency

Depends on NVIDIA-NeMo/Gym#4209. The Gym submodule points at that PR's tested head commit and can advance to its eventual merge commit during review.

Stack

This PR contains the delivered OSWorld v2 context-compaction foundation starting from official NeMo RL commit 5d49fbf4e74bdd3a6627c48759c4a66b8920743b, followed by the FlashREINFORCE and AgentEnv integration.

@copy-pr-bot

copy-pr-bot Bot commented Oct 8, 2026

Copy link
Copy Markdown

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.

@jinglinglingling
jinglinglingling force-pushed the linglinj/flashreinforce-agentenv-osworld branch from ff3bffa to e970318 Compare October 8, 2026 01:49
@jinglinglingling jinglinglingling changed the title feat(osworld): add FlashREINFORCE AgentEnv training feat(osworld): add OSWorld v2 training stack Oct 8, 2026
@jinglinglingling jinglinglingling changed the title feat(osworld): add OSWorld v2 training stack feat(osworld): OSWorld v2 training stack Oct 8, 2026
aroshanghias-nvd and others added 25 commits October 14, 2026 00:45
Signed-off-by: Ali Roshan Ghias <aroshanghias@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Ali Roshan Ghias <aroshanghias@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Ali Roshan Ghias <aroshanghias@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Ali Roshan Ghias <aroshanghias@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Ali Roshan Ghias <aroshanghias@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Ali Roshan Ghias <aroshanghias@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
…kkeeping

Signed-off-by: Ali Roshan Ghias <aroshanghias@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Ali Roshan Ghias <aroshanghias@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Ali Roshan Ghias <aroshanghias@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Preserve pending call custody, mask failed logical owners, retain healthy siblings, and drop unusable groups through the existing policy. Keep CC integrity failures fatal and avoid unsafe redispatch of request-local selections.

Validation: 251 focused RL tests; seven private live vLLM/native-TQ failure, cancellation, and timeout cases. No checkpoint PR or private validation machinery included.
Signed-off-by: Ali Roshan Ghias <aroshanghias@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Adapt the continuation fallback and bounded manifest drain proposed in
NVIDIA-NeMo#4431. Preserve pending IDs when capture fails or times out:
a failure record is not proof that a worker has stopped writing. Ordinary
receipt mode masks unresolved capture; CC keeps its existing masking.

Add regression coverage for public postprocessing, cancellation, pending
write custody, and the real RL root decision through Gym HTTP admission.
Document the paired buffered Responses SSE behavior.

Co-authored-by: alexandery <alexandery@nvidia.com>
Signed-off-by: Ali Roshan Ghias <aroshanghias@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Allow omitted HTTP headers and stop requiring the old hinted intermediate candidate. Retain exact committed ancestry, segment counts, accepted-token coverage, rejected-token exclusion, and cleanup assertions.

Validation: 113 focused local tests and two GPU smoke runs passed; 124 checkpoint compatibility tests passed with the updated Gym client.
Signed-off-by: Ali Roshan Ghias <aroshanghias@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Ali Roshan Ghias <aroshanghias@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Ali Roshan Ghias <aroshanghias@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@oci-nrt-cs-001-vscode-01.cm.cluster>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@oci-nrt-cs-001-vscode-01.cm.cluster>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@oci-nrt-cs-001-vscode-01.cm.cluster>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@oci-nrt-cs-001-vscode-01.cm.cluster>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
Signed-off-by: Linglin Jing <linglinj@nvidia.com>
@jinglinglingling
jinglinglingling force-pushed the linglinj/flashreinforce-agentenv-osworld branch from e970318 to fb8f729 Compare October 14, 2026 15:20
@github-actions github-actions Bot added the Documentation Improvements or additions to documentation label Oct 14, 2026
@jinglinglingling

jinglinglingling commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor Author

Rebase/validation update:

  • Rebased onto current main (f7f14b5396).
  • Updated Gym pin to the CI-clean rebased fix(automodel): unbreak L1 by adding the missing dpo model_save_format #4209 head (65c0560412).
  • Added exact processor-owned media-token masking and pinned the companion MBridge fix in fix(nemotron-omni): gate sound merge on audio inputs Megatron-Bridge#6458.
  • 4-node / 32-GPU OSWorld smoke Job 20192123 completed successfully (ExitCode=0:0): 8/8 rollout groups, 404 valid sequences, 1,098,500 valid tokens, old-policy logprobs, advantage, optimizer step, refit, and step_1 checkpoint all completed.
  • This sampled batch had all-zero rewards, so expected loss/grad norm were both 0.0; the full training control/data path nevertheless completed.
  • Checkpoint: /lustre/fs1/portfolios/coreai/projects/coreai_dlalgo_nemorl/users/linglinj/osworld-v2-integration/live-execution/results/osworld-v2-latest-mediamask-20261014T141414Z/checkpoints/step_1.

@github-actions

Copy link
Copy Markdown

✅ Submodule Fast-Forward Check Results

Check based on commit: fb8f729 (PR #4581 from linglinj/flashreinforce-agentenv-osworld)

✅ Submodules that are properly updated:

Gym: ✅ PR branch is ahead of main branch (fast-forward)
Megatron-Bridge: ✅ PR branch is ahead of main branch (fast-forward)

All submodule changes look good! ✨

Signed-off-by: Linglin Jing <linglinj@nvidia.com>
@github-actions

Copy link
Copy Markdown

✅ Submodule Fast-Forward Check Results

Check based on commit: 2d8584a (PR #4581 from linglinj/flashreinforce-agentenv-osworld)

✅ Submodules that are properly updated:

Gym: ✅ PR branch is ahead of main branch (fast-forward)
Megatron-Bridge: ✅ PR branch is ahead of main branch (fast-forward)

All submodule changes look good! ✨

Signed-off-by: Linglin Jing <linglinj@nvidia.com>
@github-actions

Copy link
Copy Markdown

✅ Submodule Fast-Forward Check Results

Check based on commit: c499f19 (PR #4581 from linglinj/flashreinforce-agentenv-osworld)

✅ Submodules that are properly updated:

Gym: ✅ PR branch is ahead of main branch (fast-forward)
Megatron-Bridge: ✅ PR branch is ahead of main branch (fast-forward)

All submodule changes look good! ✨

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants