Skip to content

Commit d87f287

Browse files
songCNMSintern_nem_dev_2
andauthored
[task155][intern_nem_dev_2] Neutralize Omni3 Valor32k config path comment (#262)
* [task155] Neutralize Valor32k config comment path * [task155] Add PR bookkeeping --------- Co-authored-by: intern_nem_dev_2 <intern_nem_dev_2@intern.local>
1 parent f39a05f commit d87f287

6 files changed

Lines changed: 95 additions & 7 deletions

File tree

src/nemotron/recipes/omni3/stage0_sft/config/valor32k.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# Omni3 SFT — Valor32k-AVQA full audio-visual-language SFT (INTERNAL dataset)
22
#
33
# Requires a prepared Valor32k-AVQA v2.0 Energon WebDataset — this is
4-
# NVIDIA-internal data, not available on the public Hub. On DFW a copy
5-
# lives at /lustre/fs1/portfolios/coreai/projects/coreai_dlalgo_llm/users/chcui/datasets/valor32k_avqa/energon.
6-
# Point OMNI3_VALOR32K_ENERGON_PATH at your prepared dataset before running.
4+
# NVIDIA-internal data, not available on the public Hub. Set
5+
# OMNI3_VALOR32K_ENERGON_PATH to the prepared Energon dataset path for your
6+
# environment before running.
77
#
88
# Run `nemotron omni3 data prep sft -c valor32k` first to validate the
99
# dataset is reachable and emit a staging manifest.
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
from __future__ import annotations
2+
3+
from pathlib import Path
4+
5+
import yaml
6+
7+
REPO_ROOT = Path(__file__).resolve().parents[3]
8+
VALOR32K_CONFIG = (
9+
REPO_ROOT / "src/nemotron/recipes/omni3/stage0_sft/config/valor32k.yaml"
10+
)
11+
12+
13+
def test_valor32k_config_comment_uses_operator_dataset_env_var() -> None:
14+
text = VALOR32K_CONFIG.read_text(encoding="utf-8")
15+
16+
assert "/lustre/fs1/portfolios/coreai/" not in text
17+
assert "users/chcui" not in text
18+
assert "OMNI3_VALOR32K_ENERGON_PATH" in text
19+
20+
config = yaml.safe_load(text)
21+
assert config["dataset"]["path"] == (
22+
"${oc.env:OMNI3_VALOR32K_ENERGON_PATH,/datasets/valor32k/energon}"
23+
)
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
# intern_nem_dev_2 - 状态
22

3-
<!-- METADATA:STATUS=Working,TASK=task152_super3_m1_agentic_docs_path_portability_s1,ROLE=independent -->
3+
<!-- METADATA:STATUS=Working,TASK=task155_omni3_valor32k_config_comment_portability_s1,ROLE=independent -->
44

55
| 字段 ||
66
|------|-----|
77
| Name | intern_nem_dev_2 |
88
| Status | Working |
9-
| Current Task | task152_super3_m1_agentic_docs_path_portability_s1 |
10-
| PR | https://github.com/songCNMS/Nemotron/pull/259 |
9+
| Current Task | task155_omni3_valor32k_config_comment_portability_s1 |
10+
| PR | https://github.com/songCNMS/Nemotron/pull/262 |
1111
| Session | 1 |
1212

13-
最近进展:Opened PR #259 for task152 from base `17ed7b0e5195878030ff09118fb79caee200b824`. Scoped Super3 M1 Agentic SFT docs/config-comment examples now use `${NEMO_RUN_DIR:-.}/output/super3/...` instead of named-user `/mnt/3fs/data/lei.song/nemotron` paths, with a focused static guard. Checks passed: focused pytest (`2 passed`), py_compile, Ruff, scoped static grep, diff checks, and added-line live-surface scan. No live M0/M1 data prep, SFT packing, train/eval, endpoint, W&B, cluster, deploy, artifact download, main/master push, or self-merge.
13+
最近进展:Opened PR #262 for `task155_omni3_valor32k_config_comment_portability_s1`: https://github.com/songCNMS/Nemotron/pull/262. Base `795eb92359257ed82816a8685db0f9cae1c751ae`; implementation head before PR bookkeeping `ddc7a372e207efa52b461a419bb3c7ff546447e9`. Replaced the scoped Omni3 Valor32k config comment that named a DFW internal user path with neutral `OMNI3_VALOR32K_ENERGON_PATH` guidance and added a focused static Omni3 test. Checks passed: focused pytest (`1 passed`), py_compile, Ruff, scoped `valor32k.yaml` grep, `git diff --check`, and `git diff --cached --check`. No live Valor32k/HF download, data prep, train/eval, endpoint, W&B, cluster, deploy, artifact download, main/master push, or self-merge.
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# task155_omni3_valor32k_config_comment_portability_s1
2+
3+
<!-- METADATA:STATUS=ReadyForGate,ASSIGNEE=intern_nem_dev_2 -->
4+
5+
Status: Ready for PM gate
6+
Owner: intern_nem_dev_2
7+
Branch: `intern_nem_dev_2/task155_omni3_valor32k_config_comment_portability_s1`
8+
Base: `795eb92359257ed82816a8685db0f9cae1c751ae`
9+
PR: https://github.com/songCNMS/Nemotron/pull/262
10+
11+
## Summary
12+
13+
Replace the scoped Omni3 Valor32k runnable config comment that names a DFW
14+
internal user path with neutral operator guidance to set
15+
`OMNI3_VALOR32K_ENERGON_PATH`.
16+
17+
## Scope
18+
19+
- `src/nemotron/recipes/omni3/stage0_sft/config/valor32k.yaml` comments only.
20+
- Focused static Omni3 test for Valor32k config portability.
21+
- Task/status docs for `intern_nem_dev_2`.
22+
23+
## Boundaries
24+
25+
- Do not change runtime defaults or dataset semantics.
26+
- No live Valor32k/HF download, data prep, train/eval, endpoint, W&B, cluster,
27+
deploy, artifact download, direct `main`/`master` push, or self-merge.
28+
29+
## Acceptance Checks
30+
31+
- PASS: `PYTHONPATH=src /work-agents/.venv/bin/python -m pytest -q tests/recipes/omni3/test_stage0_sft_valor32k_config_portability.py` (1 passed)
32+
- PASS: `/work-agents/.venv/bin/python -m py_compile tests/recipes/omni3/test_stage0_sft_valor32k_config_portability.py`
33+
- PASS: `/work-agents/.venv/bin/ruff check tests/recipes/omni3/test_stage0_sft_valor32k_config_portability.py`
34+
- PASS: scoped grep over `valor32k.yaml` found no named-user Lustre path and preserved `OMNI3_VALOR32K_ENERGON_PATH`
35+
- PASS: `git diff --check`
36+
- PASS: `git diff --cached --check`
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# task155_omni3_valor32k_config_comment_portability_s1 history
2+
3+
<!-- METADATA:SESSION=1 -->
4+
5+
## Session 1 - 2026-05-29
6+
7+
- Accepted PM assignment and created branch
8+
`intern_nem_dev_2/task155_omni3_valor32k_config_comment_portability_s1`
9+
from `origin/main` at `795eb92359257ed82816a8685db0f9cae1c751ae`.
10+
- Replaced the DFW named-user Valor32k config comment with neutral guidance to
11+
set `OMNI3_VALOR32K_ENERGON_PATH` to the prepared Energon dataset path.
12+
- Added a focused static Omni3 test proving the config no longer references
13+
the named-user path and still documents/preserves the Valor32k env-var
14+
dataset path contract.
15+
- Verified focused pytest (`1 passed`), `py_compile`, Ruff, scoped grep,
16+
`git diff --check`, and `git diff --cached --check`.
17+
- Opened PR #262 to `main`: https://github.com/songCNMS/Nemotron/pull/262.
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# task155_omni3_valor32k_config_comment_portability_s1 knowledge
2+
3+
<!-- METADATA:SESSION=1 -->
4+
5+
## Working Notes
6+
7+
- Scope is comments/static test only for
8+
`src/nemotron/recipes/omni3/stage0_sft/config/valor32k.yaml`.
9+
- Runtime dataset default must remain
10+
`${oc.env:OMNI3_VALOR32K_ENERGON_PATH,/datasets/valor32k/energon}`.
11+
- The removed named-user path fragment is `users/chcui`; scoped guard also
12+
rejects `/lustre/fs1/portfolios/coreai/`.

0 commit comments

Comments
 (0)