I4h Workflow Train Rl
NVIDIAOfficialCreated by Isaac for Healthcare TeamDistributed by NVIDIA
- Skill
- Workflow
- Data and AI
- Apache-2.0
- Medium risk
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
This skill provides a structured procedure for managing reinforcement learning (RL) lifecycles within the Isaac for Healthcare (i4h) ecosystem. It supports training, evaluating, and exporting policies using either RSL-RL or RLinf backends. The workflow ensures that all RL-backed policies adhere to strict Scene, observation, action, and reward contracts before and after training. It handles the transition from raw training checkpoints to validated, deployable policy artifacts, including integration with the standard i4h Workflow validation runner.
What it does
- Resolves and validates RL profiles and environment contracts for specific i4h workflows.
- Executes training runs using RSL-RL or RLinf backends with support for dry-run verification.
- Evaluates trained checkpoints against randomized episodes to ensure policy performance.
- Exports trained models into TorchScript or native RLinf run bundles for deployment.
- Validates exported policies through the standard i4h Workflow simulator runner.
- Provides a framework for authoring new RL-backed workflows with custom adapters.
When to use it
- When you need to train a new policy for a supported i4h workflow from scratch or a base checkpoint.
- When you need to evaluate an existing RL checkpoint to verify performance metrics.
- When you need to export a trained model into a format compatible with the i4h Workflow Task system.
- When you are developing a new RL-backed workflow and need to integrate it into the i4h training pipeline.
Advantages
- Ensures consistency by enforcing strict contract validation for observations, actions, and rewards.
- Provides a unified interface for managing different RL backends like RSL-RL and RLinf.
- Automates the transition from training to validated deployment artifacts.
- Includes built-in dry-run capabilities to catch configuration errors before resource-intensive training.
Usage examples
- “Train the ultrasound probe reach policy with PPO and evaluate 20 episodes.”
- The agent performs a dry-run of the RSL-RL profile, executes the training, evaluates the resulting policy over 20 episodes, exports the TorchScript artifact, and validates it via the Workflow Task runner.
- “RL post-train the Trocar policy from my local GR00T checkpoint.”
- The agent verifies the G1/camera/action mapping, performs a dry-run, executes the RLinf training using the provided checkpoint, exports the model, and validates the remote policy Task.
Install
Download the skill as a ZIP:
https://mp-staging.autogineer.com/agent-skills/nvidia/i4h-workflow-train-rl/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip i4h-workflow-train-rl.zip -d .agents/skills
Documentation by Isaac for Healthcare Team
Train a Workflow Policy with RL
Purpose
Resolve a maintained online-RL profile, verify its Scene/objective/model contracts, run the selected vectorized trainer, evaluate and export its artifact, and hand that artifact to normal Workflow policy validation.
Requirements
Run the Workflow setup skill first so its uv environments and pinned third-party checkouts are available.
Use a CUDA-capable Isaac Lab/Arena runtime for the RSL-RL workflow.
For Trocar, provide a local GR00T N1.5 3B base or SFT checkpoint and two visible local GPUs for the isolated controller and simulator runtimes. A compatible checkpoint is a complete local Hugging Face directory that the pinned GR00T N1.5/RLinf loader accepts without conversion; it must retain the N1.5 3B architecture and support the maintained three-camera plus 28-joint observation mapping and 28-D policy action head. Reject another model family, an exported inference-only Task artifact, or a checkpoint whose config changes those interfaces.
Instructions
Resolve the checkout, confirm Workflow setup is complete, and select training, evaluation, or export from the request. Evaluation/export with an existing checkpoint skips training; never start a new training run to satisfy those requests.
For a maintained profile, proceed directly to profile and contract checks. Only a request to author a new RL-backed Workflow takes the authoring branch below; return to these checks after adding its profile.
Confirm the Workflow, Scene, observations, actions, rewards, resets, termination, trainer, and runtime Task contracts, then dry-run training or evaluation with its exact checkpoint and options. Export uses profile/contract checks and has no dry-run mode.
For training, preflight the selected trainer runtime and train in the foreground. For evaluation/export, go directly to the matching commands below using the supplied checkpoint or run bundle.
Evaluate before export and validate the export through the normal Workflow runner when those stages are in scope. Report any required validation that could not be completed.
Resolve the checkout
Before resolving the checkout, use the maintained repository below or an alternative already selected by the user or trusted project configuration. Check an existing checkout's origin and working-tree changes before executing its scripts; an inherited environment variable alone does not establish trust in an alternative source. Honor any requested revision and preserve local changes. If the source is unexpected, stop and resolve it before cloning or launching.
export I4H_WORKFLOWS_REPO_URL="${I4H_WORKFLOWS_REPO_URL:-https://github.com/isaac-for-healthcare/i4h-workflows}"
I4H_REPO_DIR_NAME="${I4H_WORKFLOWS_REPO_URL%/}"
I4H_REPO_DIR_NAME="${I4H_REPO_DIR_NAME##*/}"
I4H_REPO_DIR_NAME="${I4H_REPO_DIR_NAME##*:}"
I4H_REPO_DIR_NAME="${I4H_REPO_DIR_NAME%.git}"
[ -n "$I4H_REPO_DIR_NAME" ] || { echo "Cannot derive a checkout name from I4H_WORKFLOWS_REPO_URL" >&2; exit 2; }
ROOT="${I4H_WORKFLOWS:-$(git rev-parse --show-toplevel 2>/dev/null)}"
if [ ! -d "$ROOT/workflows/i4h_workflows" ]; then
ROOT="${I4H_WORKFLOWS:-$HOME/$I4H_REPO_DIR_NAME}"
[ -d "$ROOT/workflows/i4h_workflows" ] || git clone "$I4H_WORKFLOWS_REPO_URL" "$ROOT" || exit 2
fi
[ -d "$ROOT/workflows/i4h_workflows" ] && [ -x "$ROOT/run.sh" ] || { echo "Incomplete workflow checkout: $ROOT" >&2; exit 2; }
export I4H_WORKFLOWS="$ROOT"
cd "$ROOT" || exit 2Treat this resolver as part of the skill contract. I4H_WORKFLOWS_REPO_URL selects the clone source; I4H_WORKFLOWS selects or reuses a checkout. Never replace an existing checkout.
Resolve the profile and contracts
./train.sh rl list
./train.sh rl show <workflow>
./run.sh show <workflow> --mode policyRead the profile under ./rl/profiles/, its referenced declarative trainer config under ./rl/config/, Workflow, Scene manifest and implementation, Arena objective config, embodiment, and runtime policy Task manifest before a long run.
Select the maintained path from the profile:
| Workflow | Trainer | Starting artifact | Training observations/actions | Export and runtime |
|---|---|---|---|---|
ultrasound_probe_reach | RSL-RL PPO | None; train from scratch | 34-D joint/probe/target state → 6-D relative EE pose | TorchScript policy.pt → rsl_rl/ultrasound_probe_reach in-process Task |
assemble_trocar | RLinf PPO actor/critic | Local GR00T N1.5 SFT/base checkpoint | Three cameras + 28 arm/hand joints → 28 policy actions padded to the 43-D Scene action | Native RLinf run bundle → GR00T inference export → existing remote gr00t_n15/assemble_trocar Task |
For ultrasound_probe_reach, require the target to be sampled from verified upper-torso surface points, the table and phantom to remain fixed, success to require both position and orientation tolerance for consecutive steps, and the exported Task observation order to match training exactly.
For assemble_trocar, require Unitree G1 with Dex3 hands, front and both wrist cameras, the current 87-value body state (29 positions + 29 velocities + 29 torques), 14 Dex3 joint positions, the 28-D GR00T arm/hand mapping, the 15-value body-action prefix, and the maintained g1_trocar reward/termination contract. Do not copy another Trocar environment into the training tree.
Author a new RL-backed Workflow
Create and visibly validate the Workflow and Scene before adding training. Keep assets, embodiment, observations, actions, rewards, resets, termination, and success in their normal Arena and Workflow owners.
Add
./rl/profiles/<workflow>.yamlusing the schema below. The filename andworkflowvalue must match.Add one declarative YAML trainer config under
./rl/config/; use<workflow>_<algorithm>_<backend>.yamland pointtrainer_configto it as../config/<file>.yaml.Reuse a generic backend under
./rl/i4h_rl/backends/. Add./rl/i4h_rl/adapters/<workflow>.pyonly when the maintained Scene needs workflow-specific observation, action, registration, or evaluation conversion. Do not add workflow branches tocli.py,sim_server.py, or a package__init__.py.Train and evaluate the native checkpoint, export it into a reusable in-process or remote policy Task, add that Task to the Workflow's
policyTaskGraph, and validate simulator success through the normal Workflow runner. Compare the runtime observation/action values with training, not only their dimensions and ordering: preserve coordinate frames, quaternion convention, normalization, action scaling, previous-action state, and reset semantics.
schema_version: 1
workflow: <workflow>
scene: <scene>
trainer: <rsl_rl-or-rlinf>
algorithm: ppo
adapter_module: i4h_rl.adapters.<workflow>
trainer_config: ../config/<workflow>_ppo_<backend>.yaml
train_task_id: <trainer-environment-id>
eval_task_id: <trainer-evaluation-environment-id>
task_description: <short instruction>
action_dof: <scene-action-width>
policy_action_dof: <policy-action-width>
state_dof: <state-observation-width>
cameras: []
default_num_envs: <positive-integer>
default_epochs: <positive-integer>
simulation:
env_spacing: <positive-metres>
presets: physx
enable_cameras: falseRun ./train.sh rl show <workflow> and a training/evaluation --dry-run immediately. The CLI calls RLProfile.load in rl/i4h_rl/profile.py, validate_workflow_contract in contract.py, and the selected backend's validate_profile before launch. These checks cover profile fields and sources, backend support, dimensions, Scene cameras, and backend-specific task/config contracts. Require the applicable checks to exit successfully; if the checkout lacks these checks or a contract fails, stop before starting the simulator and report the failing check.
Dry-run
RSL-RL from scratch:
./train.sh rl ultrasound_probe_reach \
--num-envs 128 \
--epochs 400 \
--dry-runRLinf foundation-policy post-training:
./train.sh rl assemble_trocar \
--model-path /absolute/path/to/gr00t-sft-checkpoint \
--num-envs 64 \
--epochs 1000 \
--dry-runThese examples are training dry-runs. For evaluation use --eval --checkpoint <path> --dry-run; export rejects --dry-run, so check the profile with show and inspect the checkpoint and output destination before using the export command below. Inspect the resolved Scene, trainer, task IDs, observation/action dimensions, environment count, iteration/epoch count, config path, starting model when required, and explicit overrides. Keep user-requested resource values exact.
Preflight and train
The lightweight rl uv project owns profile resolution and command orchestration. Its trainer configs are YAML and do not import Isaac Lab. RSL-RL backend integration runs in the Arena environment because its trainer and simulator dependencies are compatible. Set its runtime explicitly only when the prepared Arena environment is not appropriate:
export I4H_RL_PYTHON=/absolute/path/to/arena-rsl-runtime-pythonTrain the compact RSL-RL example:
./train.sh rl ultrasound_probe_reach \
--num-envs 128 \
--epochs 400Resolve TRAIN_RUN from the timestamped run dir: path printed by the training command. Do not guess or select a run by recency.
Trocar uses two isolated processes on one host because GR00T N1.5/RLinf requires Python 3.11 while the current Isaac Sim/Arena runtime requires Python 3.12. The model controller defaults to tasks/gr00t_n15/.venv/bin/python on physical GPU 0, the simulator defaults to arena/.venv/bin/python on physical GPU 1, and observations/actions cross a local Unix-socket data bridge. Override those runtimes when needed:
export I4H_RL_PYTHON=/absolute/path/to/gr00t-rlinf-python
export I4H_RL_SIM_PYTHON=/absolute/path/to/isaac-sim-arena-pythonTrain the GR00T/RLinf profile only with a compatible local starting checkpoint, the pinned RLinf checkout, and two visible GPUs:
./train.sh rl assemble_trocar \
--model-path /absolute/path/to/gr00t-sft-checkpoint \
--num-envs 64 \
--epochs 1000Keep training in the foreground. Preserve the run directory and exact command on failure. Do not silently lower environment counts or epochs. The current RSL-RL launcher does not expose resume or distributed multi-GPU training; a second GPU is not used automatically. Trocar's two GPUs isolate the model and simulator processes rather than distributing one trainer across both GPUs.
Evaluate, export, and hand off
For an evaluation/export-only request, set TRAIN_RUN or the checkpoint argument from the user-supplied artifact; the timestamped paths below are examples, not instructions to pick the newest run. Evaluate the RSL-RL checkpoint over independent randomized episodes:
TRAIN_RUN="$PWD/runs/ultrasound_probe_reach/YYYYMMDD_HHMMSS"
./train.sh rl ultrasound_probe_reach \
--eval \
--checkpoint "$TRAIN_RUN/model_final.pt" \
--episodes 20Export a simulator-compatible TorchScript actor, then validate the concrete Workflow Task:
./train.sh rl export ultrasound_probe_reach \
--checkpoint "$TRAIN_RUN/model_final.pt" \
--output-dir "$TRAIN_RUN/exported"
./run.sh ultrasound_probe_reach --policy \
--checkpoint "$TRAIN_RUN/exported/policy.pt" \
--episodes 20Successful RLinf training writes checkpoint.json in the run directory. It points to the native FSDP checkpoint and records the starting GR00T model, so evaluation accepts the run bundle directly without repeating --model-path. A successful evaluation must write evaluation.json with non-empty TensorBoard metrics and at least one trajectory. Export also discovers the resolved RLinf training config stored in that run bundle:
TRAIN_RUN="$PWD/runs/assemble_trocar/YYYYMMDD_HHMMSS"
./train.sh rl assemble_trocar \
--eval \
--checkpoint "$TRAIN_RUN" \
--video
./train.sh rl export assemble_trocar \
--checkpoint "$TRAIN_RUN" \
--output-dir "$TRAIN_RUN/exported"
./run.sh assemble_trocar --policy \
--checkpoint "$TRAIN_RUN/exported" \
--episodes 1Treat the native trainer checkpoint as the training result and evaluate it before export. The GR00T inference export is runtime packaging for the remote Task, not a substitute for checkpoint evaluation. Require exit status 0, requested evaluation episodes when the trainer exposes them, non-empty metrics, expected checkpoint/export artifacts, and normal Workflow simulator success. Never claim success from loss curves or training exit alone.
Troubleshooting
Report the first missing runtime dependency, checkpoint path, registration failure, observation/action mismatch, non-finite loss, CUDA memory error, distributed/Ray/FSDP error, environment construction failure, or missing success artifact. Preserve the failed run directory and exact command. Retry once with the same configuration only after a diagnosed transient or missing-dependency failure has been resolved within the task. If it persists, or the failure is a contract mismatch, non-finite loss, or resource exhaustion, stop and report the blocker and preserved artifacts. Do not change the Scene objective or resource settings without user direction.
Limitations
The maintained profiles are ultrasound_probe_reach with RSL-RL and assemble_trocar with RLinf. RSL-RL resume, RSL-RL evaluation video, and distributed multi-GPU launch are not yet exposed. Trocar currently requires two visible local GPUs and its Unix-socket simulator bridge is single-host; a distributed simulator/controller deployment is not exposed. This skill does not perform supervised LeRobot fine-tuning or make unsupported workflows trainable.
Examples
Train the ultrasound probe reach policy with PPO and evaluate 20 episodes.→ dry-run the RSL-RL profile, train from scratch, evaluate randomized episodes, export TorchScript, and validate the Workflow Task.RL post-train the Trocar policy from my local GR00T checkpoint.→ dry-run the RLinf profile, verify the G1/camera/action mapping, train, export a loadable GR00T checkpoint, and validate the remote policy Task.
Completion gate
Report the Workflow and Scene, trainer/profile/config, starting checkpoint when applicable, observation/action/reward/reset/termination contract, requested and completed resources, run directory, evaluation metrics, checkpoint and export artifacts, exact Workflow validation command and success rate, exit status, and any remaining runtime or hardware limitation.
Files
- ATTRIBUTION.mdAdded by AutoGineer940 B
- BENCHMARK.md8.0 KiB
- LICENSELicence file added by AutoGineer11.2 KiB
- SKILL.md14.7 KiB
- agents/openai.yaml260 B
- evals/evals.json9.8 KiB
- skill-card.md4.2 KiB
- skill.oms.sig4.7 KiB
evals/evals.json
[
{
"id": "i4h-workflow-train-rl-trocar-post-training",
"question": "RL post-train the Trocar policy from my local GR00T SFT checkpoint.",
"expected_skill": "i4h-workflow-train-rl",
"ground_truth": "This request routes to the separate Workflow online-RL lifecycle for assemble_trocar, using RLinf PPO with the maintained g1_trocar Arena environment and a local GR00T N1.5 starting checkpoint.",
"expected_behavior": [
"routes to i4h-workflow-train-rl rather than supervised finetuning or rollout validation",
"resolves the assemble_trocar RL profile and g1_trocar Scene",
"requires a local compatible GR00T SFT or base checkpoint",
"verifies camera, state, 28-D policy action to 43-D Scene action, reward, and termination contracts",
"dry-runs the exact RLinf PPO configuration before training",
"preflights the isolated GR00T/RLinf controller and Isaac Sim/Arena simulator runtimes and requires two visible local GPUs",
"reuses the current g1_trocar Scene through the local observation/action bridge rather than copying the retired Rheo environment",
"keeps online RL training outside Workflow execution and SimulationRunner",
"reports the exact loadable checkpoint handoff to i4h-workflow-validate"
]
},
{
"id": "i4h-workflow-train-rl-trocar-eval",
"question": "Evaluate my RLinf Trocar checkpoint and record a video.",
"expected_skill": "i4h-workflow-train-rl",
"ground_truth": "This request routes to RLinf evaluation for the supported assemble_trocar online-RL profile, using the produced i4h checkpoint bundle and recording evaluation video.",
"expected_behavior": [
"routes to i4h-workflow-train-rl",
"uses RL evaluation mode rather than starting policy updates",
"accepts the produced run bundle as the checkpoint and resolves its recorded GR00T base dependency",
"enables evaluation video",
"verifies success metrics and output artifacts",
"does not claim normal Workflow rollout success unless that validation is also requested"
]
},
{
"id": "i4h-workflow-train-rl-new-instrument-reach",
"question": "Add an RL training objective to robotic_instrument_reach.\n - Goal: move the probe tip to the marked point on the training pad.\n - Observe the robot joints, probe pose, and target pose.\n - Control the probe with end-effector pose actions.\n - Reward reducing tip-to-target distance, with a small penalty for abrupt actions.\n - Sample a reachable target position on the pad at reset.\n - Success: hold the probe tip within 2 cm of the target for 20 steps.\n - Use PPO and run a small vectorized smoke configuration first.\n - Dry-run the training configuration.",
"expected_skill": "i4h-workflow-train-rl",
"ground_truth": "This README prompt authors and smoke-validates the low-dimensional online-RL objective and RSL-RL PPO profile for the existing robotic_instrument_reach Scene without starting the full training run.",
"expected_behavior": [
"inspects the authored robotic_instrument_reach Workflow and Scene before adding training",
"keeps observations, actions, rewards, resets, termination, and success in the Arena objective rather than the Workflow runner",
"adds a uniform rl/profiles/robotic_instrument_reach.yaml profile and rl/config YAML trainer config",
"adds a workflow adapter only if the selected backend needs workflow-specific observation, action, registration, or evaluation conversion",
"observes robot joints, probe pose, and target pose and controls a six-dimensional end-effector pose action",
"rewards reduced tip-to-target distance and penalizes abrupt actions",
"verifies reachable target sampling, reset, two-centimetre tolerance, twenty-step hold, and success semantics",
"dry-runs the exact configuration and completes a small vectorized PPO smoke run",
"does not require a foundation-model checkpoint",
"does not start the full training run until the later training prompt"
]
},
{
"id": "i4h-workflow-train-rl-readme-train-instrument-reach",
"question": "Train the robotic_instrument_reach policy with RL and evaluate 20 randomized episodes.",
"expected_skill": "i4h-workflow-train-rl",
"ground_truth": "This README continuation trains the smoke-validated robotic_instrument_reach RSL-RL PPO profile and evaluates its checkpoint over twenty randomized simulator episodes.",
"expected_behavior": [
"routes to i4h-workflow-train-rl",
"uses the already dry-run and smoke-validated robotic_instrument_reach profile",
"trains the RSL-RL PPO policy in vectorized simulation",
"preserves the exact observation, action, reward, reset, and success contract from the authored objective",
"evaluates twenty randomized episodes with the produced checkpoint",
"reports training artifacts, episode attempts, position error, and simulator success rate"
]
},
{
"id": "i4h-workflow-train-rl-readme-export-instrument-reach",
"question": "Export the verified checkpoint and create a RoboticInstrumentReach policy Task from it.",
"expected_skill": "i4h-workflow-train-rl",
"ground_truth": "This README continuation exports the verified robotic_instrument_reach actor to TorchScript and creates a reusable in-process policy Task with the identical observation contract.",
"expected_behavior": [
"routes to i4h-workflow-train-rl",
"exports the exact evaluated RSL-RL checkpoint to a non-empty policy.pt",
"verifies the exported actor before creating the reusable Task",
"creates the rsl_rl/robotic_instrument_reach Task and manifest",
"keeps policy observation ordering identical to training",
"keeps coordinate frames, quaternion convention, normalization, action scaling, previous-action state, and reset semantics identical to training",
"adds focused Task tests and reports the checkpoint and Task handoff paths",
"does not claim normal Workflow rollout validation before the Task is added to policy mode"
]
},
{
"id": "i4h-workflow-train-rl-ultrasound-export",
"question": "Export the trained ultrasound_probe_reach checkpoint as a policy Task and validate the Workflow policy mode.",
"expected_skill": "i4h-workflow-train-rl",
"ground_truth": "The verified RSL-RL checkpoint is exported to TorchScript policy.pt, loaded by the rsl_rl/ultrasound_probe_reach in-process Task, and validated through the normal ultrasound_probe_reach Workflow runner.",
"expected_behavior": [
"exports the exact verified RSL-RL checkpoint to a non-empty TorchScript policy.pt",
"checks the exported Task observation order against the training observation contract",
"passes the exported checkpoint to ultrasound_probe_reach policy mode",
"validates through SimulationRunner rather than treating export success as simulator success",
"reports the exact checkpoint, run directory, episode count, and Workflow success rate"
]
},
{
"id": "i4h-workflow-train-rl-specialty-ultrasound-full-lifecycle",
"question": "Train ultrasound_probe_reach with RL, evaluate 20 episodes, and validate the exported policy.",
"expected_skill": "i4h-workflow-train-rl",
"ground_truth": "This ultrasound specialty prompt runs the maintained ultrasound_probe_reach RSL-RL lifecycle from dry-run and training through evaluation, TorchScript export, and normal Workflow validation.",
"expected_behavior": [
"routes to i4h-workflow-train-rl",
"uses the maintained ultrasound_probe_reach RSL-RL PPO profile",
"dry-runs the resolved configuration before training from scratch",
"evaluates twenty randomized episodes",
"exports the verified actor to TorchScript policy.pt",
"validates the exported Task through ultrasound_probe_reach policy mode"
]
},
{
"id": "i4h-workflow-train-rl-specialty-trocar-full-lifecycle",
"question": "Use my checkpoint at /absolute/path/to/gr00t-checkpoint to RL post-train\nassemble_trocar.\nEvaluate and export the result, then validate assemble_trocar.",
"expected_skill": "i4h-workflow-train-rl",
"ground_truth": "This hospital-automation specialty prompt runs the maintained assemble_trocar RLinf lifecycle from a local GR00T N1.5 checkpoint through dry-run, post-training, evaluation, inference export, and normal Workflow validation.",
"expected_behavior": [
"routes to i4h-workflow-train-rl",
"requires the placeholder to be replaced by a compatible local GR00T N1.5 checkpoint path",
"uses the maintained assemble_trocar RLinf PPO profile and two isolated GPU runtimes",
"dry-runs before post-training",
"evaluates the native RLinf run bundle before export",
"exports for the existing GR00T remote Task and validates assemble_trocar policy mode"
]
},
{
"id": "i4h-workflow-train-rl-specialty-trocar-pretrained-model",
"question": "Use NVIDIA's pretrained GR00T N1.5 3B model from Hugging Face to RL post-train\nassemble_trocar.\nEvaluate and export the result, then validate assemble_trocar.",
"expected_skill": "i4h-workflow-train-rl",
"ground_truth": "This hospital-automation specialty prompt downloads NVIDIA's pretrained GR00T N1.5 3B model to a local directory and uses it as the starting checkpoint for the maintained assemble_trocar RLinf lifecycle.",
"expected_behavior": [
"routes to i4h-workflow-train-rl",
"downloads nvidia/GR00T-N1.5-3B from Hugging Face to a local directory",
"passes the downloaded local directory to --model-path rather than passing the repository ID",
"explains that the pretrained model is a starting checkpoint rather than a trained Trocar policy",
"uses the maintained assemble_trocar RLinf PPO profile and two isolated GPU runtimes",
"dry-runs before post-training",
"evaluates and exports the result before validating assemble_trocar policy mode"
]
}
]
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Needs Python
Security
What our scanner noticed· Medium risk
- Large base64-encoded blobs
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- Isaac for Healthcare Team
- Publisher
- NVIDIA (Official)
- Distributed by
- NVIDIA
- Source
- NVIDIA/skills · skills/i4h-workflow-train-rl · commit fce3cca
- Licence
- Apache License 2.0 (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE-APACHE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Isaac for Healthcare Team or NVIDIA.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download i4h-workflow-train-rl.zip