Skip to main content

actor-sdg-sweep-config

Generate validated Isaac Sim Replicator Agent YAML variations and optionally batch-run Actor SDG. Use when sweeping an IRA config or preparing batch Actor SDG runs.

Quellinformationen

Repository
isaac-sim/IsaacSim
Letzte Quellaktivität
18. September 2026 um 16:05
Erkannte Sprache von SKILL.md
Englisch
Sterne
4.169
Forks
560

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

Datei-Explorer
4 Dateien

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
actor-sdg-sweep-config
description
Generate validated Isaac Sim Replicator Agent YAML variations and optionally batch-run Actor SDG. Use when sweeping an IRA config or preparing batch Actor SDG runs.
license
Apache-2.0
metadata
{"author":"NVIDIA Isaac Sim <isaac-sim@nvidia.com>"}
# Actor SDG Sweep Config ## Purpose Generate reproducible variations of an Isaac Sim Replicator Agent (IRA) YAML configuration. A sweep samples selected configuration fields across multiple variants. Each variant receives a distinct random seed and writer output directory. Optionally run `actor_sdg.py` on each generated variant via `scripts/batch_actor_sdg.py`. ## Security Schema validation runs by default. `--omit-schema-check` writes variants without JSON Schema verification; use only when the caller explicitly accepts unchecked YAML (for example schema unavailable offline). Prefer `--dry-run` to preview without writing files. Batch execution launches the local `actor_sdg.py` entry point via subprocess with a fixed argument list (`shell=False`). ## Prerequisites - Python 3 with PyYAML. - `jsonschema` and the IRA `config_schema` directory for schema validation. - An existing IRA YAML configuration with the `isaacsim.replicator.agent` root key. - A writable output directory, preferably under `$WORKSPACE_DIR`. - An Isaac Sim install or source build for optional Actor SDG execution. ## Limitations - The generator changes fields that already exist in the base configuration. It may add the standard root `seed` field when the base omits it. - Schema validation cannot run without `jsonschema` and the matching schema from the installed IRA extension. - Config generation is deterministic. Actor SDG execution is not idempotent and can replace dataset outputs. - The batch runner executes variants sequentially. It does not schedule work across machines or GPUs. ## Available Scripts | Script | Purpose | Arguments | |---|---|---| | `scripts/config_variation_generator.py` | Generate validated config variants and `manifest.csv`. | CLI flags through `argparse`; run with `--help` for details. | | `scripts/batch_actor_sdg.py` | Preview or run `actor_sdg.py` for generated variants. | CLI flags through `argparse`; run with `--help` for details. | ## Running scripts From agent runtimes that expose skill execution helpers, invoke a script with `run_script()`: ```text run_script( "scripts/config_variation_generator.py", args=[ "--base", "base.yaml", "--sweep", "sweep.yaml", "--output", "variants", "--dry-run", ], ) ``` From the repository root, run the generator with Python: ```bash python3 skills/actor-sdg-sweep-config/scripts/config_variation_generator.py \ --base base.yaml \ --sweep sweep.yaml \ --output "$WORKSPACE_DIR/actor_sdg_variants" \ --dry-run ``` ## Sweep specification The sweep file contains a positive `count` and a `parameters` list: ```yaml count: 12 parameters: - path: isaacsim.replicator.agent.character.groups.workers.num type: choice values: [5, 10, 20] - path: isaacsim.replicator.agent.simulation_duration type: fixed value: 30 ``` Supported sampling types are: | Type | Required value | |---|---| | `choice` | A non-empty `values` list. | | `uniform` | An ordered numeric `range`. | | `random_int` | An ordered integer `range`. | | `linspace` | An ordered numeric `range`. | | `fixed` | A `value`. | ## Workflow ### 1. Validate the inputs 1. Resolve the base configuration and sweep file. 2. Parse both files as YAML mappings. 3. Require the `isaacsim.replicator.agent` root key. 4. Confirm that every dotted sweep path exists in the base configuration, except the standard root `seed`. 5. Confirm the count and sampling values are valid. ### 2. Preview the sweep Run the generator with `--dry-run`: ```bash python3 skills/actor-sdg-sweep-config/scripts/config_variation_generator.py \ --base base.yaml \ --sweep sweep.yaml \ --output "$WORKSPACE_DIR/actor_sdg_variants" \ --seed 42 \ --dry-run ``` Report the count, parameter paths, sampling types, seed, schema location, and output directory. The generator refuses to replace existing variant directories by default. Pass `--overwrite` only after the user approves replacement. ### 3. Generate the configurations Remove `--dry-run` after the preview is correct: ```bash python3 skills/actor-sdg-sweep-config/scripts/config_variation_generator.py \ --base base.yaml \ --sweep sweep.yaml \ --output "$WORKSPACE_DIR/actor_sdg_variants" \ --seed 42 ``` Use `--schema-dir` when automatic schema discovery cannot find the installed IRA schema. Do not use `--omit-schema-check` unless the user accepts unvalidated output. ### 4. Verify the configurations 1. Confirm the command exits with code `0`. 2. Confirm the number of `variant_*/config.yaml` files matches the requested count. 3. Read `manifest.csv` and one generated configuration. 4. Report whether schema validation passed, was skipped, or was unavailable. 5. Do not call the configurations valid when schema validation did not run. ### 5. Preview optional data generation Use the batch runner in dry-run mode: ```bash python3 skills/actor-sdg-sweep-config/scripts/batch_actor_sdg.py \ --variants "$WORKSPACE_DIR/actor_sdg_variants" \ --python-sh "$ISAAC_SIM_DIR/python.sh" \ --actor-sdg "$ISAAC_SIM_DIR/tools/actor_sdg/actor_sdg.py" \ --dry-run ``` Before removing `--dry-run`, report the selected configurations, output locations, and expected runtime. Actor SDG execution can replace generated data, so run it only after the user approves the batch. Execution also requires `--allow-trusted-scripts`. Explain that configurations and referenced assets can execute Python with the user's permissions, and obtain explicit acknowledgement that all selected configurations and referenced assets are trusted. Do not add this flag automatically. Dry-run mode does not require it. ### 6. Report the result Report the base configuration, sweep file, output directory, count, seed, manifest path, validation status, and any failed variant IDs. After data generation, read `run_results.csv` and report each failed variant. ## Troubleshooting | Error or symptom | Cause | Solution | |---|---|---| | Sweep path does not exist | The dotted path is absent from the base configuration. | Correct the path or add the field to the base configuration first. | | Schema validation unavailable | `jsonschema` or the matching IRA schema is missing. | Install `jsonschema` and pass `--schema-dir`. | | Output variants already exist | The generator protects existing files. | Inspect the variants, then rerun with `--overwrite` after approval. | | `actor_sdg.py` not found | The install or source path was not detected. | Pass the exact path through `--actor-sdg`. | | A batch variant fails | Actor SDG returned a nonzero exit code or timed out. | Inspect its log and the matching row in `run_results.csv`. |
Auf GitHub ansehen