docs: Update RL entrypoint examples#5960
Conversation
Document the unified train/play entrypoints in the Isaac Lab 3.0 migration guide and update documentation examples to use --rl_library instead of deprecated per-library script paths.
There was a problem hiding this comment.
🤖 Isaac Lab Review Bot
Summary
This PR updates all documentation examples to use the unified reinforcement learning CLI entrypoints (./isaaclab.sh train --rl_library <library> and ./isaaclab.sh play --rl_library <library>) instead of the deprecated per-library script paths (python scripts/reinforcement_learning/<library>/train.py). It also adds a new migration guide section documenting this change for Isaac Lab 3.0, renames references from "scripts" to "commands/workflows/entrypoints" where appropriate, and updates literalinclude references from train.py to train_sb3.py.
Findings
The changes are consistent and well-executed across all 33 files. Specific observations:
-
Consistency ✅ — All examples consistently use the new
./isaaclab.sh train --rl_library <lib>/./isaaclab.sh play --rl_library <lib>pattern. Windows examples correctly useisaaclab.batwith the same syntax. -
Multi-GPU/distributed examples ✅ — Correctly updated to use
scripts/reinforcement_learning/train.py --rl_library <lib>(the unified script path) when launching viatorch.distributed.runorskrl.utils.distributed.jax, since those need a direct Python script rather than the shell wrapper. -
Migration guide addition ✅ — The new section in
migrating_to_isaaclab_3-0.rstclearly explains the old vs new syntax with before/after examples, lists supported libraries, and documents the distributed launcher pattern. -
Ray hyperparameter tuning ✅ — Correctly removes the now-unnecessary
--workflowargument from the ray tuning example. -
literalincludereferences — Updated fromtrain.pytotrain_sb3.pyinconfiguring_rl_training.rstandrun_rl_training.rst. Theemphasize-linesdirectives were removed, which is fine since line numbers may have shifted with the refactor. -
Minor wording updates ✅ — "scripts" → "commands"/"workflows"/"entrypoints" is applied consistently throughout.
No broken references, typos, or syntax issues found.
Verdict
No issues found — Clean, comprehensive documentation migration to the unified RL entrypoints.
Update (8202f07): Reviewed incremental changes. This commit:
-
Restores
emphasize-linesdirectives inconfiguring_rl_training.rstandrun_rl_training.rst— these highlight the key SB3 training code sections for readers. Line ranges look correct for the updatedtrain_sb3.pyfile. ✅ -
Re-adds
--workflowto the Ray tuning example inray.rstwith a new explanatory paragraph clarifying that Ray launches training via its--workflowscript path. The note about using the unified entrypoint for custom configs is a helpful addition. ✅
These changes address the missing highlight ranges noted in the previous review and correct the Ray tuner documentation. No new issues found.
Greptile SummaryThis PR updates documentation across 33 files to replace deprecated per-library RL script invocations (
Confidence Score: 4/5Documentation-only change that is safe to merge; all referenced script paths and files exist in the repository and the functional behavior of every updated command is correct. The bulk of the changes are straightforward find-and-replace migrations that are accurate and internally consistent. The one area that warrants attention is the Ray tuner section, where the docs/source/features/ray.rst (incomplete migration story for the Ray tuner workflow argument) and docs/source/tutorials/03_envs/run_rl_training.rst (tutorial code highlights were removed without replacement) Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[User runs training] --> B{Entrypoint style}
B -->|Isaac Lab 3.0 new| C["./isaaclab.sh train --rl_library <lib>"]
B -->|Deprecated compat| D["./isaaclab.sh -p scripts/rl/<lib>/train.py"]
B -->|Distributed launcher| E["python -m torch.distributed.run scripts/rl/train.py --rl_library <lib>"]
B -->|Ray tuner| F["./isaaclab.sh -p scripts/rl/ray/tuner.py\n(default workflow = rl_games/train.py)"]
C --> G[scripts/reinforcement_learning/train.py]
D --> H["scripts/rl/<lib>/train.py\n(emits DeprecationWarning, still functional)"]
E --> G
F --> H
G --> I[Selects library via --rl_library]
I --> J["scripts/rl/<lib>/train_<lib>.py"]
H --> J
style F fill:#ffe0b2,stroke:#e65100
style H fill:#fff9c4,stroke:#f9a825
|
| .. dropdown:: Code for train_sb3.py | ||
| :icon: code | ||
|
|
||
| .. literalinclude:: ../../../../scripts/reinforcement_learning/sb3/train.py | ||
| .. literalinclude:: ../../../../scripts/reinforcement_learning/sb3/train_sb3.py | ||
| :language: python | ||
| :emphasize-lines: 57, 66, 68-70, 81, 90-98, 100, 105-113, 115-116, 121-126, 133-136 | ||
| :linenos: |
There was a problem hiding this comment.
Tutorial code highlights dropped without replacement
The old literalinclude of train.py had emphasize-lines: 57, 66, 68-70, 81, 90-98, 100, 105-113, 115-116, 121-126, 133-136 that directed tutorial readers to the wrapper creation, environment setup, and agent training sections. train_sb3.py is a restructured file with different line numbers, so the old values don't apply — but leaving no emphasize-lines at all means the "The Code Explained" section no longer has visual anchors pointing readers to the relevant code blocks. New emphasis lines matching train_sb3.py's structure would preserve the tutorial's learning value.
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
There was a problem hiding this comment.
Restored the SB3 tutorial highlight ranges against train_sb3.py in 8202f071ea1.
There was a problem hiding this comment.
Perfect, thanks for restoring the highlights! The new ranges (97-100, 104-109, etc.) look like they now correctly point to the wrapper creation and training sections in train_sb3.py. 👍
|
Addressed the Greptile feedback in |
Description
Updates the documentation to use the unified reinforcement learning train/play entrypoints with
--rl_libraryinstead of deprecated per-library script paths. Also documents this migration in the Isaac Lab 3.0 migration guide and updates related wording from scripts to commands/workflows where appropriate.No new dependencies are required.
Issue: N/A
Type of change
Screenshots
Not applicable.
Checklist
pre-commitchecks with./isaaclab.sh --format./isaaclab.sh -fwas attempted, butcheck-git-lfs-pointersfailed becausegit-lfsis not installed in this environment.SKIP=check-git-lfs-pointers ./isaaclab.sh -fpassed all remaining hooks.source/<pkg>/changelog.d/for every touched package (do not editCHANGELOG.rstor bumpextension.toml— CI handles that)CONTRIBUTORS.mdor my name already exists there