# ACT: ACT policy training and evaluation

Pinned ACT entrypoint that trains on configured demonstrations or evaluates the resulting policy using its --eval mode in simulated or real ALOHA environments. Statically reviewed source only; not run and no Hub preparation adapter.

ID: `act-imitate-episodes-py`

Record version: `source-f2b057cd497f3fef20bdc4197879d1c02e1c751f83154cce0183fcc10f7e2540`

Hub commit: `66a13cd6ae8ab828219a4916587fb83d6dc71809`

## Access

Fetch the pinned repository, verify this source checksum, and use upstream installation and invocation. This record does not install or execute code.

Optional inert file retrieval: `python /PATH_TO_SKILL/scripts/rsh.py fetch-source act-imitate-episodes-py --expected-source-revision 742c753c0d4a5d87076c8f69e5628c79a8cc5488 --expected-source-sha256 f2b057cd497f3fef20bdc4197879d1c02e1c751f83154cce0183fcc10f7e2540 --project ./experiment --json`. This verifies one file, preserves provenance and never installs or runs it. See [source-file retrieval](https://hub.superfastrobotics.com/source-files.md).

Hub preparation adapter: **false**. Runtime verification: **not_run**.

Upstream setup: https://github.com/tonyzhaozh/act/blob/742c753c0d4a5d87076c8f69e5628c79a8cc5488/README.md

## Source and license

- Repository: https://github.com/tonyzhaozh/act
- Pinned source: https://github.com/tonyzhaozh/act/blob/742c753c0d4a5d87076c8f69e5628c79a8cc5488/imitate_episodes.py
- Revision: `742c753c0d4a5d87076c8f69e5628c79a8cc5488`
- Path: `imitate_episodes.py`
- Source SHA256: `f2b057cd497f3fef20bdc4197879d1c02e1c751f83154cce0183fcc10f7e2540`
- Source bytes: 17242
- Original authors: Tony Z. Zhao
- License: [MIT](https://github.com/tonyzhaozh/act/blob/742c753c0d4a5d87076c8f69e5628c79a8cc5488/LICENSE)
- License scope: Selected first-party Python workflow source only. Preserve upstream copyright and per-file notices. Model weights, datasets, third-party code, robot drivers/firmware and services retain separate terms; no rights for those assets are inferred.

License SHA256: `4666c312da313e6c46929f6695d06cf98a2e7359b9c7dcbb0ea232d01b32cd42`

## Artifact

```json
{
  "kind": "workflow",
  "format": "python",
  "workflow_role": "policy-training"
}
```

## Requirements

```json
{
  "python": "README Python3.8.10 and conda_env.yaml Python3.9 disagree; both are preserved without compatibility inference.",
  "packages": [
    "Pinned ACT checkout",
    "Torch/torchvision, MuJoCo and dm_control setup in README/conda_env.yaml",
    "Separately installed modified DETR package; ALOHA package for real mode"
  ],
  "display": "Hardware: Training/evaluation explicitly calls .cuda() on policy and tensors. Simulator mode needs MuJoCo/dm_control; README says real mode additionally needs ALOHA installation/hardware. GPU memory minimum is not declared. Weights: Evaluation requires local policy_best.ckpt and dataset_stats.pkl. Training obtains selected demonstration data; external pretrained-backbone behavior in imported dependencies was not inspected. Datasets: Training uses a configured local demonstration dataset; evaluation uses matching dataset statistics. README links separately hosted simulation demonstrations. Services/auth: No cloud API key, provider token or online logging service is declared by this selected entrypoint. Imported dependencies and optional external assets remain outside this review.",
  "execution_domain": "computation-or-hardware",
  "source_imports": [
    "IPython",
    "aloha_scripts.constants",
    "aloha_scripts.real_env",
    "aloha_scripts.robot_utils",
    "argparse",
    "constants",
    "copy",
    "einops",
    "matplotlib.pyplot",
    "numpy",
    "os",
    "pickle",
    "policy",
    "sim_env",
    "torch",
    "tqdm",
    "utils",
    "visualize_episodes"
  ],
  "notes": "Train and --eval are modes of one physical source entrypoint, counted once. The Python/setup disagreement is an integration note, not hidden by a normalized version range. Code licensing does not establish model, checkpoint, dataset or service permission.",
  "declared_requirements": {
    "python": "README Python3.8.10 and conda_env.yaml Python3.9 disagree; both are preserved without compatibility inference.",
    "weights": "Evaluation requires local policy_best.ckpt and dataset_stats.pkl. Training obtains selected demonstration data; external pretrained-backbone behavior in imported dependencies was not inspected.",
    "datasets": "Training uses a configured local demonstration dataset; evaluation uses matching dataset statistics. README links separately hosted simulation demonstrations.",
    "hardware": "Training/evaluation explicitly calls .cuda() on policy and tensors. Simulator mode needs MuJoCo/dm_control; README says real mode additionally needs ALOHA installation/hardware. GPU memory minimum is not declared.",
    "external_services_and_auth": "No cloud API key, provider token or online logging service is declared by this selected entrypoint. Imported dependencies and optional external assets remain outside this review.",
    "evidence": [
      {
        "anchor": "policy.cuda()",
        "line": 170
      },
      {
        "anchor": "torch.load(ckpt_path)",
        "line": 168
      },
      {
        "anchor": "main(vars(parser.parse_args()))",
        "line": 435
      }
    ],
    "license_scopes": {
      "code": "MIT for selected first-party workflow source.",
      "weights": "Selected evaluator requires a locally produced policy_best.ckpt and dataset_stats.pkl. Separate pretrained-backbone/dependency assets were not audited; first-party MIT is not extended to external weights.",
      "datasets": "README links separately hosted scripted/human demonstration data. That dataset's license/access terms were not inspected or inferred from the code license.",
      "third_party_code": "The pinned detr/LICENSE and detr/README.md declare Apache-2.0 for the modified DETR subtree. Root MIT applies to the selected first-party workflow, not all vendored/dependency code. External weights, data and dependencies retain separate terms."
    },
    "interpretation": "Pinned upstream declarations only; no dependency resolution, model/data access, compatibility inference or runtime validation was performed."
  }
}
```

## Invocation

```json
{
  "entrypoint": "python imitate_episodes.py --task_name <reviewed-task> --ckpt_dir <local-directory> --policy_class ACT --batch_size <size> --seed <seed> --num_epochs <epochs> --lr <rate> <reviewed-act-options>",
  "notes": "Train and --eval are modes of one physical source entrypoint, counted once. The Python/setup disagreement is an integration note, not hidden by a normalized version range."
}
```

## Compatibility

```json
[]
```

Missing environment fields remain unknown. Source discovery labels do not establish robot compatibility.

## Evidence

Level: **source_reviewed**. Runtime verification: **not_run**.

Verified exact source, applicable license and author/setup document bytes at a full Git commit; parsed the Python AST and reviewed this guarded operational entrypoint and its explicit license notices. No upstream code, installation, robot command, dataset, mesh or checkpoint was executed or loaded.

Source review and contributor reports do not establish task completion. Preserve upstream attribution and licenses.
