Skip to content

Physicalai/genesis - #5

Merged
sonyyang-tw merged 9 commits into
developfrom
physicalai/genesis
Aug 19, 2026
Merged

sonyyang-tw merged 9 commits into
developfrom
physicalai/genesis

Conversation

@sonyyang-tw

Copy link
Copy Markdown
Collaborator

Merge GS05 and GS06 to the develop branch.

sonyyang-tw and others added 7 commits August 14, 2026 14:03
Clarify the learning flow and validate scene and motion assumptions so PhySim01-04 remain reproducible on Genesis 1.3.

Co-authored-by: Cursor <cursoragent@cursor.com>
Record the MuJoCo Menagerie origin and include the Apache-2.0 terms required for redistributing the Panda assets.

Co-authored-by: Cursor <cursoragent@cursor.com>
Extend the course with ROCm vision and tactile interaction plus a guarded language-agent workflow, reusable live HUD controls, and an optional local LLM runtime.

Co-authored-by: Cursor <cursoragent@cursor.com>
Preserve the language-guided Genesis agent demonstration as a reusable README media asset.

Co-authored-by: Cursor <cursoragent@cursor.com>
Update the bilingual course overview to reflect PhySim05/06 and feature the language-guided agent demonstration.

Co-authored-by: Cursor <cursoragent@cursor.com>
Credit the team for Physical AI teaching material and direct readers to notebook-level source and repository attribution.

Co-authored-by: Cursor <cursoragent@cursor.com>
Use GS01-GS06 across notebook filenames, course references, demo assets, and Docker packaging to make the Genesis Simulation identity explicit.

Co-authored-by: Cursor <cursoragent@cursor.com>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

This PR merges the Genesis Simulation lab sequence updates (GS05/GS06) into develop by expanding the Genesis Simulation curriculum, adding reusable HUD/widget helpers, and updating the container build to include a pinned llama-server binary plus the new notebook set.

Changes:

  • Updates the root READMEs to reflect the extended Genesis Simulation progression (through ROCm perception + language-guided agent) and adds clearer attribution notes.
  • Adds a full Genesis-Simulation course README plus new helper modules/scripts for recording/exporting a live HUD, GPU telemetry, and starting a local llama.cpp server.
  • Extends the Genesis-Simulation Docker image build to compile and ship a pinned llama-server, and installs additional runtime dependencies for notebooks/widgets/HUD.

Reviewed changes

Copilot reviewed 18 out of 20 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
README.zh-TW.md Updates Genesis Simulation description and adds AMD AECG / attribution note (zh-TW).
README.md Updates Genesis Simulation description and adds AMD AECG / attribution note (EN).
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/xml/franka_emika_panda/README.md Replaces embedded MIT license text with upstream attribution + points to local Apache-2.0 license.
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/xml/franka_emika_panda/LICENSE Adds Apache-2.0 license text for the Franka Panda MJCF/assets directory.
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/README.md Adds end-to-end instructions for building/running labs, live HUD usage, and optional LLM endpoint workflow.
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/helpers/start_llama_server.sh Adds a helper script to start and sanity-check a local llama-server inside the container.
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/helpers/physisim_widget.py Adds ipywidgets-based live controllers for GS05/GS06 HUD interaction and export.
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/helpers/physisim_hud.py Adds HUD composition, ffmpeg writer, and AMD GPU telemetry monitor utilities.
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/helpers/init.py Exposes helper module public API via __all__.
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/GS05_perception_with_rocm.ipynb Adds a full ROCm perception + tactile reduction lab, recordings, and a live simulation widget.
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/GS04_parallel_simulation.ipynb Updates GS04 narrative/goals and adds minor safety/consistency improvements (e.g., scene reinit guard).
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/GS03_motion_planning.ipynb Updates GS03 narrative/goals and adds motion-plan validity checking before execution.
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/GS02_control_your_robot.ipynb Adds a new GS02 lab notebook focused on PD control and DOF-level APIs with recorded output.
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/GS01_hello_genesis.ipynb Updates GS01 narrative/goals and adds consistency improvements (e.g., scene reinit guard, conclusions).
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/Dockerfile Adds a llama.cpp builder stage, Vulkan runtime libs, new pip deps, and copies GS* notebooks + helpers.
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/.gitignore Ignores generated artifacts/videos/models and Python caches for the Genesis-Simulation workspace.
projects/Physical-AI/Physical-Simulation/Genesis-Simulation/.dockerignore Excludes large/generated directories and GGUFs from Docker build context.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

sonyyang-tw and others added 2 commits August 19, 2026 14:20
Status messages carry planner output, local LLM replies and exception
strings, so interpolating them raw into the ipywidgets HTML pane could
break rendering or inject markup into notebook output.

Co-authored-by: Cursor <cursoragent@cursor.com>
The writer drained ffmpeg stderr only on failure or shutdown, so a noisy
encoder could fill the pipe buffer, stop consuming frames and deadlock
both the recording and the surrounding close(). Capture stderr in a temp
file instead, which has no buffer ceiling and still preserves the
diagnostics reported on failure.

Co-authored-by: Cursor <cursoragent@cursor.com>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 18 out of 20 changed files in this pull request and generated no new comments.

Suppressed comments (2)

Previously missed (1) — in code that hasn't changed since the last review.

projects/Physical-AI/Physical-Simulation/Genesis-Simulation/README.md:224

  • The nbconvert Docker command doesn't set the container working directory. Because the notebooks write relative paths like Videos/ and import helpers/ as a top-level package, running nbconvert from a different CWD can cause outputs to be written outside the bind mount and can break imports. Set -w /opt/workspace/PhySim (or equivalently --ExecutePreprocessor.cwd) in the command.

This issue also appears on line 230 of the same file.

docker run --rm \
  --device=/dev/kfd \
  --device=/dev/dri \
  --group-add video \
  --ipc=host \
  --security-opt seccomp=unconfined \
  -v "$PWD:/opt/workspace/PhySim" \
  --entrypoint jupyter \
  auplc-physisim:physicalai-genesis \

projects/Physical-AI/Physical-Simulation/Genesis-Simulation/README.md:238

  • Same issue as the GS05 nbconvert example: without setting the working directory, relative paths (e.g. Videos/, Artifacts/, helpers/) may resolve outside the bind mount during non-interactive execution. Add -w /opt/workspace/PhySim (or --ExecutePreprocessor.cwd) so the run is reproducible and artifacts persist on the host.
docker run --rm \
  --device=/dev/kfd \
  --device=/dev/dri \
  --group-add video \
  --ipc=host \
  --security-opt seccomp=unconfined \
  -v "$PWD:/opt/workspace/PhySim" \
  --entrypoint jupyter \
  auplc-physisim:physicalai-genesis \

@sonyyang-tw
sonyyang-tw merged commit 3d6f39f into develop Aug 19, 2026
1 check passed
@sonyyang-tw
sonyyang-tw deleted the physicalai/genesis branch August 24, 2026 06:44
amdjiahangpan pushed a commit that referenced this pull request Sep 1, 2026
The two earlier comments were both valid and are addressed in b8fcdd2 (escape status text before embedding it in the HTML pane) and 40e8799 (write ffmpeg stderr to a temp file so a noisy encoder cannot fill the pipe buffer and stall the recording).
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.

2 participants