Skip to main content

physicalai-runtime-running-policy-on-robot

Runs exported policies on hardware with PolicyRuntime, execution modes, and physicalai run. Use when wiring PolicyRuntime, SyncExecution or RTC execution, runtime YAML configs, action queues, runtime callbacks, or docs/how-to/runtime run-policy-on-robot and execution modes.

Aller à l'installation

Informations de source

Dépôt
openvinotoolkit/physicalai
Dernière activité de la source
6 juillet 2026 à 17:11
Langue détectée de SKILL.md
anglais
Étoiles
27
Forks
22

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
physicalai-runtime-running-policy-on-robot
description
Runs exported policies on hardware with PolicyRuntime, execution modes, and physicalai run. Use when wiring PolicyRuntime, SyncExecution or RTC execution, runtime YAML configs, action queues, runtime callbacks, or docs/how-to/runtime run-policy-on-robot and execution modes.
license
Apache-2.0
# Running a Policy on a Robot `PolicyRuntime` (`src/physicalai/runtime/runtime.py`) owns the control loop; `InferenceModel` owns policy math. Execution strategy lives under `src/physicalai/runtime/execution.py` and `src/physicalai/runtime/rtc_execution.py`. CLI: `physicalai run` in `src/physicalai/cli/run.py` instantiates from YAML via jsonargparse. ## Workflow 1. **Choose API vs config**: Python for notebooks/tests; YAML + `physicalai run` for reproducible deployment. - Done when: entry point matches the user's task. 2. **Python minimal loop** (see `docs/how-to/runtime/run-policy-on-robot.md`): ```python from physicalai.runtime import PolicyRuntime, SyncExecution from physicalai.inference import InferenceModel from physicalai.robot import SO101 from physicalai.capture import UVCCamera runtime = PolicyRuntime( fps=30, robot=SO101(port="/dev/ttyACM0"), model=InferenceModel("./exports/act_policy"), cameras={"wrist": UVCCamera(device="/dev/video0", width=640, height=480)}, execution=SyncExecution(), ) with runtime: runtime.run(duration_s=60) ``` - Done when: components connect and the loop runs in a test or dry-run with fakes. 3. **YAML config** — nest `class_path` / `init_args` for robot, model, cameras, execution; run: ```bash physicalai run --config runtime.yaml --run.duration_s=60 ``` 4. **Execution mode** — pick sync vs RTC per `docs/how-to/runtime/use-execution-modes.md`; do not build ad-hoc timing around `InferenceModel.select_action` when `PolicyRuntime` should own the queue. 5. **Callbacks** — register via runtime callback APIs (`docs/how-to/runtime/add-runtime-callbacks.md`) for telemetry/latency, not inside inference adapters. ## Validation loop ```bash uv run pytest tests/unit/runtime/ -q ``` Use fake robots/cameras from runtime tests when hardware is unavailable. ## Required checks - `fps` and camera read rates are consistent. - Action dimensions match robot `send_action` expectations. - Config `class_path` targets are importable without training packages. - Document breaking changes to runtime config schema in `docs/reference/config-schema.md`. ## References - `docs/how-to/runtime/run-policy-on-robot.md` - `docs/how-to/config/write-runtime-config.md`
Voir sur GitHub