Skip to main content

Workflow Templates (OSMO)

Canonical OSMO workflow templates for RL, imitation learning, VLA, SiL, and HiL workloads. Template names in this page are based on current YAML files and exclude stale legacy naming.

Template Inventory​

TemplatePurposeSource YAML pathTypical submit path
train.yamlIsaac Lab RL training with object-storage code deliverytraining/rl/workflows/osmo/train.yamltraining/rl/scripts/submit-osmo-training.sh
train-dataset.yamlIsaac Lab RL training with dataset folder injectiontraining/rl/workflows/osmo/train-dataset.yamltraining/rl/scripts/submit-osmo-dataset-training.sh
lerobot-train.yamlLeRobot ACT or Diffusion training workflowtraining/il/workflows/osmo/lerobot-train.yamltraining/il/scripts/submit-osmo-lerobot-training.sh
groot-train.yamlNVIDIA GR00T VLA fine-tuning workflowtraining/vla/workflows/osmo/groot-train.yamltraining/vla/scripts/submit-osmo-lerobot-vla-fine-tuning.sh
eval.yamlIsaac Lab checkpoint evaluation workflowevaluation/sil/workflows/osmo/eval.yamlevaluation/sil/scripts/submit-osmo-eval.sh
lerobot-eval.yamlLeRobot policy evaluation workflowevaluation/sil/workflows/osmo/lerobot-eval.yamlevaluation/sil/scripts/submit-osmo-lerobot-eval.sh
cpu-smoke.yamlCPU-only HiL scheduling proofevaluation/hil/workflows/osmo/cpu-smoke.yamldata-pipeline/setup/hil/03-run-cpu-smoke.sh
hil-evaluation.yamlNo-command HiL safety evaluationevaluation/hil/workflows/osmo/hil-evaluation.yamldata-pipeline/setup/hil/04-run-no-command-check.sh

train.yaml​

FieldDetails
PurposeOSMO RL training. Code is packaged, uploaded to object storage with osmo data upload, and injected into the pod through a url: task input.
Source YAML pathtraining/rl/workflows/osmo/train.yaml
Primary parameters and overridesdefault-values.task (Isaac-Velocity-Rough-Anymal-C-v0), default-values.num_envs ("2048"), default-values.max_iterations (empty), default-values.checkpoint_mode (from-scratch), default-values.training_backend (skrl), default-values.gpu ("1"), default-values.cpu ("30").
Typical submit pathtraining/rl/scripts/submit-osmo-training.sh
Usage notesUse for RL training. The submission delivers code via object storage; script flags typically override task, resources, and checkpoint behavior.

train-dataset.yaml​

FieldDetails
PurposeOSMO RL training that mounts training code from an uploaded dataset path.
Source YAML pathtraining/rl/workflows/osmo/train-dataset.yaml
Primary parameters and overridesdefault-values.dataset_bucket (training), default-values.dataset_name (training-code), default-values.task (Isaac-Velocity-Rough-Anymal-C-v0), default-values.num_envs ("2048"), default-values.checkpoint_mode (from-scratch), default-values.training_backend (skrl).
Typical submit pathtraining/rl/scripts/submit-osmo-dataset-training.sh
Usage notesUse when payload size or reuse favors dataset-based delivery. The script stages and uploads training sources before submission.

lerobot-train.yaml​

FieldDetails
PurposeOSMO LeRobot training with optional Azure Blob dataset source and checkpoint registration.
Source YAML pathtraining/il/workflows/osmo/lerobot-train.yaml
Primary parameters and overridesdefault-values.policy_type (act), default-values.dataset_repo_id (empty), default-values.dataset_root (/workspace/data), default-values.blob_urls ([]), default-values.training_steps ("100000"), default-values.batch_size ("32"), default-values.learning_rate ("1e-4"), default-values.save_freq ("5000"), default-values.num_gpus ("1"), default-values.mixed_precision (no), default-values.platform (gpu_platform), default-values.register_checkpoint (empty).
Typical submit pathtraining/il/scripts/submit-osmo-lerobot-training.sh
Usage notesSupports HuggingFace and blob-backed datasets. Keep policy type and data source aligned with script flags to avoid mixed-source configuration.

groot-train.yaml​

FieldDetails
PurposeNVIDIA GR00T N1.5 or N1.7 fine-tuning from a LeRobot-format dataset in Azure Blob Storage.
Source YAML pathtraining/vla/workflows/osmo/groot-train.yaml
Primary parameters and overridesdefault-values.workflow_name (groot-train), default-values.gpu (1), default-values.platform (gpu_platform), default-values.dataset_path (/data/dataset), default-values.batch_size (4), default-values.max_steps (500), default-values.save_steps (100), default-values.resume (false), default-values.azure_upload (false).
Typical submit pathtraining/vla/scripts/submit-osmo-lerobot-vla-fine-tuning.sh
Usage notesRequires a blob URL and data configuration. The wrapper selects version-specific GR00T source and model revisions and injects the runtime assets.

eval.yaml​

FieldDetails
PurposeOSMO Isaac Lab checkpoint evaluation for policy export and rollout scoring.
Source YAML pathevaluation/sil/workflows/osmo/eval.yaml
Primary parameters and overridesdefault-values.task (Isaac-Ant-v0), default-values.num_envs ("4"), default-values.max_steps ("500"), default-values.video_length ("200"), default-values.checkpoint_uri (empty), default-values.inference_format (both).
Typical submit pathevaluation/sil/scripts/submit-osmo-eval.sh
Usage notesRequires checkpoint URI at submission. Use inference_format to control ONNX/JIT export behavior for downstream use.

lerobot-eval.yaml​

FieldDetails
PurposeOSMO LeRobot evaluation for HuggingFace or AzureML model sources, with optional registration.
Source YAML pathevaluation/sil/workflows/osmo/lerobot-eval.yaml
Primary parameters and overridesdefault-values.policy_repo_id (empty), default-values.policy_revision (empty), default-values.policy_type (act), default-values.dataset_repo_id (empty), default-values.dataset_revision (empty), default-values.eval_episodes ("10"), default-values.eval_batch_size ("10"), default-values.record_video ("false"), default-values.mlflow_enable ("false"), default-values.builtin_policy ("false"), default-values.register_model (empty), default-values.blob_storage_container (datasets).
Typical submit pathevaluation/sil/scripts/submit-osmo-lerobot-eval.sh
Usage notesThis is the canonical LeRobot OSMO evaluation template.

cpu-smoke.yaml​

FieldDetails
PurposeCPU-only HiL scheduling proof for an existing connected edge pool.
Source YAML pathevaluation/hil/workflows/osmo/cpu-smoke.yaml
Primary parameters and overridesdefault-values.workflow_name (hil-cpu-smoke), default-values.backend_name (hil-edge), default-values.pool_name (hil-edge), resources.default.gpu (0), resources.default.platform (hil_cpu).
Typical submit pathdata-pipeline/setup/hil/03-run-cpu-smoke.sh
Usage notesSubmit through the wrapper with a validated HiL connection receipt. The workflow verifies non-root CPU execution without GPU devices.

hil-evaluation.yaml​

FieldDetails
PurposeCPU-only no-command safety evaluation using deterministic UR10E observations.
Source YAML pathevaluation/hil/workflows/osmo/hil-evaluation.yaml
Primary parameters and overridesdefault-values.workflow_name (ur10e-no-command), default-values.backend_name (hil-edge), default-values.pool_name (hil-edge), resources.default.gpu (0), resources.default.platform (hil_cpu).
Typical submit pathdata-pipeline/setup/hil/04-run-no-command-check.sh
Usage notesSubmit through the wrapper with a validated HiL connection receipt. The workload proposes actions but contains no robot command transport and requires zero applied actions.

Usage Notes​

TopicGuidance
Source of truthUse YAML files under training/ and evaluation/ as the canonical inventory.
Submission flowSubmit through the companion scripts listed above to resolve defaults from CLI, env vars, and Terraform outputs.
Runtime packagingRL workflows deliver code via object storage (url: input) or dataset injection; choose based on reuse needs.
Related referenceSee Reference index for adjacent script and artifact guides.