Skip to content

(WIP) Add nightly wandb report builder#508

Open
eugenevinitsky wants to merge 12 commits into
3.0from
ev/nightly-trend-report
Open

(WIP) Add nightly wandb report builder#508
eugenevinitsky wants to merge 12 commits into
3.0from
ev/nightly-trend-report

Conversation

@eugenevinitsky

Copy link
Copy Markdown

What

scripts/make_nightly_report.py — creates or rewrites the "PufferDrive Nightlies" wandb report. For each nightly project (nightly-multi, nightly-single):

  • Nightly finals: bar charts grouped by run group (the launch date) — one bar per night, mean over seeds of each metric's final value, with stderr; plus per-seed finals scattered on a time axis with a running mean.
  • Training curves: one mean-over-seeds line per night with stderr bands, overlaid for night-over-night comparison.

Why

The nightly launchers date-stamp every run's wandb group, but nothing turned that into a regression view. All panels are native wandb live queries — new nights appear automatically with nothing to re-run or schedule.

Notes

  • Needs pip install wandb-workspaces (report-authoring API; not a training dependency, so not added to install_requires).
  • Sets WANDB_BASE_URL=https://api.wandb.ai by default since the Greene wandb settings point at the TORC instance; an explicit env var still wins.
  • Default invocation edits the existing report in place (stable URL); --create mints a fresh one.

🤖 Generated with Claude Code

Eugene Vinitsky and others added 11 commits July 4, 2026 14:31
scripts/make_nightly_report.py creates or rewrites the 'PufferDrive
Nightlies' report: per-project bar charts of each night's final metric
values (grouped by run group = launch date, mean over seeds, stderr),
per-seed finals on a time axis, and per-night mean training curves.
Panels are live queries, so new nights appear without edits.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The scatter x axis was run end time, not the launch date, and scatter
panels have no group/mean aggregation. The date-indexed view is the bar
charts grouped by run group.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
update_nightly_trends.py maintains one trend run per seed, logging each
metric's final value at step = night index (days since 2026-07-04, with
night_ts mapping back to the date). A line panel grouped over the trend
runs plots the mean across seeds with stderr bands natively. Both
nightly launchers refresh the trend runs before submitting, so the
report stays current with no extra scheduler; the bar/curve runsets
exclude the trend group.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Stamp each trend row's _timestamp with its night's midnight and plot
the trend panels on the wall-time axis, so the x axis shows calendar
dates with true spacing instead of a night index. Step stays days since
NIGHT_ZERO for monotonicity.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
A single logged night autoranges the wall-time axis to [0, 2x], which
renders as the year 1969; pin the minimum to the day before the first
night instead.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…_per_infraction

Keeps derived bookkeeping runs out of the real projects' run lists: one
trend run per (source project, seed), grouped by source project. The
report reads trends from nightly-trends and no longer needs to filter
them out of the real runsets.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
scripts/nightly_report.py replaces update_nightly_trends.py and
make_nightly_report.py: 'update' (default) rebuilds the per-seed trend
runs in nightly-trends, 'report [--create]' rewrites the report. The
launcher hooks call the update subcommand; wandb-workspaces is only
imported on the report path. ruff-formatted to satisfy pre-commit.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@eugenevinitsky eugenevinitsky changed the title Add nightly wandb report builder (WIP) Add nightly wandb report builder Jul 5, 2026
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.

1 participant