Commit Graph

1639 Commits

Author SHA1 Message Date
Nikodem Bartnik b121d0f299 fix 2026-08-04 11:31:40 +02:00
Pepijn 318e45da62 fix(g05): preserve delta-net parity and reduce load memory 2026-07-31 11:18:41 +02:00
Pepijn 12e7416473 refactor(g05): consolidate policy modules 2026-07-30 13:00:40 +02:00
Pepijn 65a8b40484 fix(g05): honor autoregressive loss weights 2026-07-30 12:28:40 +02:00
Pepijn eb9a4dae79 style(g05): standardize new file headers 2026-07-30 11:16:29 +02:00
Pepijn 8aec9a1bb7 refactor(g05): keep imports at module scope 2026-07-30 10:42:48 +02:00
Pepijn 92c2c6cffd fix(g05): initialize ActionCodec layer scales 2026-07-30 10:07:10 +02:00
pepijn d74671e285 fix(g05): rebuild camera_sizes when stale keys survive embodiment switch
Switching embodiment on a packaged checkpoint keeps the previous
embodiment's camera_sizes entries because dict config values merge
instead of replacing, which tripped the exact-key validation. Rebuild
sizes from the named profile whenever the keys diverge from
camera_order, and add regression tests for both fixes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 08:04:37 +00:00
pepijn 143855cfe4 fix(g05): pass dataset count stat through embodiment projection
LeRobot dataset stats include a scalar per-feature sample count that is
not a per-dimension statistic, so projecting it to the embodiment index
map raised a width-mismatch ValueError for every real dataset.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 08:04:37 +00:00
Pepijn b515558dcf fix(g05): wire runtime system selection 2026-07-29 20:32:20 +02:00
Pepijn ff2f786564 docs: remove G0.5 validation status 2026-07-29 20:30:11 +02:00
Pepijn fd936e4284 chore(g05): remove dependency comment 2026-07-29 19:20:32 +02:00
Pepijn 83a71fc6c0 refactor(g05): defer PandaOmron embodiment mapping 2026-07-29 19:20:01 +02:00
Pepijn 47f845ac5d docs(g05): trim validation details 2026-07-29 19:15:12 +02:00
Pepijn e6524cbfa8 docs(g05): align policy guide 2026-07-29 19:04:31 +02:00
Pepijn e126b66d28 build(g05): reuse transformers dependency extra 2026-07-29 17:42:55 +02:00
Pepijn 61d901c8a7 docs(g05): remove policy-local readme 2026-07-29 17:02:42 +02:00
Pepijn e6d7eea88a feat(g05): make policy runtime native 2026-07-29 16:58:02 +02:00
Pepijn 916fc866f5 refactor(g05): avoid shared recipe changes 2026-07-29 16:02:53 +02:00
Pepijn fe4497ba27 refactor(g05): keep recipe runtime unchanged 2026-07-29 15:59:38 +02:00
Pepijn 3dee8e640a docs(g05): omit private checkpoint revisions 2026-07-29 15:37:53 +02:00
Pepijn 6d2c3bb1e2 refactor(g05): use recipe message dropout 2026-07-29 15:18:48 +02:00
Pepijn e6ec909cc7 docs(g05): publish the 27D base checkpoint 2026-07-29 12:35:49 +02:00
Pepijn d94fef7b40 docs(g05): record joint CoT training smoke 2026-07-29 11:29:32 +02:00
Pepijn 5eeee589a9 fix(g05): keep CoT projection in FP32 2026-07-29 11:21:43 +02:00
Pepijn 0675920df9 feat(g05): train with LeRobot language recipes 2026-07-29 11:08:03 +02:00
Pepijn 274ee585b4 docs(g05): record real training smoke 2026-07-28 21:43:47 +02:00
Pepijn 0623dae3f6 fix(g05): autocast training forward 2026-07-28 21:42:14 +02:00
Pepijn 24e3564168 feat(g05): add LeRobot training support 2026-07-28 21:34:29 +02:00
Pepijn 99e16174e3 refactor(g05): keep checkpoint tooling out of runtime PR 2026-07-28 16:55:46 +02:00
Pepijn 85a24cebc6 fix(g05): isolate postprocessor parity signal 2026-07-28 15:57:19 +02:00
Pepijn 3bed7399cc fix(g05): compare profile camera keys in parity 2026-07-28 15:56:06 +02:00
Pepijn 426d1fe351 fix(g05): resolve keyed author config includes 2026-07-28 15:55:28 +02:00
Pepijn 0f99b389a7 fix(g05): resolve packaged parity config includes 2026-07-28 15:54:47 +02:00
Pepijn 245791dfde fix(g05): run parity oracle with serving precision 2026-07-28 15:53:41 +02:00
Pepijn 8fc6aa0acf fix(robotwin): close scene between episodes 2026-07-28 15:48:14 +02:00
Pepijn d613c0cd74 fix(g05): unnormalize queued actions by timestep 2026-07-28 15:38:30 +02:00
Pepijn eec1e19374 fix(g05): autocast released inference path 2026-07-28 15:31:30 +02:00
Pepijn c1738ad7e8 fix(g05): match author inference precision 2026-07-28 15:28:59 +02:00
Pepijn 4bf535f34e docs(g05): explain private checkpoint setup 2026-07-28 15:02:00 +02:00
Pepijn 9c24b818ff docs(g05): link policy guide 2026-07-28 14:57:54 +02:00
Pepijn 67ada96819 feat(g05): add released checkpoint profiles 2026-07-28 14:55:48 +02:00
Pepijn 44f1e51cb9 fix(g05): honor native base System2 contract 2026-07-28 14:55:48 +02:00
Pepijn a9582ef479 fix(g05): align LIBERO environment observations 2026-07-28 14:55:47 +02:00
Pepijn b1ab1b992f fix(g05): match released checkpoint oracle 2026-07-28 14:55:47 +02:00
Pepijn 2e3be32361 feat(g05): add OpenGalaxea G0.5 policy integration 2026-07-28 14:55:47 +02:00
Pepijn f620ac7f35 feat(g05): add language runtime adapter 2026-07-28 14:55:47 +02:00
Pepijn f2b90e3ad6 feat(runtime): add interactive language rollouts 2026-07-28 10:05:27 +02:00
Pepijn 3f093d8927 feat(data): add recipe-driven language supervision 2026-07-28 10:04:28 +02:00
Steven Palma 95211b98f1 feat(config): add multiprocessing option to DataLoader context and sets spawn as default (#4139)
* Add dataloader_multiprocessing_context, default to spawn

Make the DataLoader multiprocessing start method configurable on
TrainPipelineConfig and default it to 'spawn'.

The previous default (fork on Linux) is unsafe with libraries that hold
non-fork-safe state in the parent process — common ones in this codebase
are PyAV, torchcodec, and the ffmpeg shared libs they wrap. Symptoms
reported in #2488, #2209, and observed locally include:

- multiprocessing.context.AuthenticationError: digest received was wrong
- RuntimeError: Pin memory thread exited unexpectedly
- RuntimeError: DataLoader worker exited unexpectedly
- Random SIGSEGV inside worker processes during video decode

Switching to spawn re-imports modules cleanly in each worker and
eliminates these failure modes. Added the setting as a config field
rather than hard-coding so users on platforms where fork is preferred
can opt back in via --dataloader-multiprocessing-context=fork.

* Address review: shorten config comment, note spawn startup tradeoff

Per @jashshah999, mention that spawn workers re-import modules and so
add some startup time vs fork. Also trim the failure-mode dump from
the inline comment — the linked issue covers the symptoms in detail.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* chore(scripts): add multiprocessing_context safeguards

* chore(config): add libs note

---------

Co-authored-by: 0o8o0-blip <0o8o0-blip@users.noreply.github.com>
2026-07-28 00:42:55 +02:00