π0.5 (Pi0.5) Adaptation and Deployment
π0.5 is a vision-language-action model released by Physical Intelligence that emphasizes open-world generalization. The first phase of third-party model adaptation covers only π0.5; do not create empty directories for other models in advance.
There are currently two upstream implementation paths:
-
OpenPI from Physical Intelligence;
-
Pi05 Policy in Hugging Face LeRobot.
The official X Square Robot release must select and validate one primary path to ensure that training, inference, and the SDK Adapter use the same observation/action contract. The following describes the adaptation framework; it does not indicate that the relevant commands have passed acceptance testing on QUANTA X1 Pro.
Upstream Environment Reference
According to the OpenPI documentation, the current tested environment is Ubuntu 22.04. Single-GPU inference requires more than 8 GB of VRAM, LoRA fine-tuning more than 22.5 GB, and full fine-tuning more than 70 GB. Actual requirements vary with the cameras, resolution, batch size, and implementation.
Upstream installation for LeRobot Pi05:
pip install -e ".[pi]"
Upstream training command example:
lerobot-train \
--dataset.repo_id=your_dataset \
--policy.type=pi05 \
--output_dir=./outputs/pi05_training \
--job_name=pi05_training \
--policy.repo_id=your_repo_id \
--policy.pretrained_path=lerobot/pi05_base \
--policy.compile_model=true \
--policy.gradient_checkpointing=true \
--wandb.enable=true \
--policy.dtype=bfloat16 \
--policy.freeze_vision_encoder=false \
--policy.train_expert_only=false \
--steps=3000 \
--policy.device=cuda \
--batch_size=32This command is provided as an upstream LeRobot reference.
X Square Robot Adaptation Steps
-
Select the implementation and version: Pin the OpenPI or LeRobot Pi05 version, dependencies, and checkpoint.
-
Prepare the data: Use the LeRobotDataset v3 described in "3.1.3 Data Preparation" and record the task text.
-
Define the observation mapping: Map the QUANTA X1 Pro cameras and state to the π0.5 inputs.
-
Define the action mapping: Specify the action dimensions, absolute/relative mode, pose, gripper, frequency, and action horizon.
-
Train or fine-tune: Save the configuration, normalization statistics, data version, and checkpoint.
-
Perform offline and open-loop validation: Check the inputs and outputs, action ranges, and inference latency.
-
Set up the inference service: The model can run on a separate machine from the robot and communicate through WebSocket or the designated service interface.
-
Integrate the SDK Adapter: Handle preprocessing, postprocessing, safety checks, and status feedback through the adapter.
-
Perform limited real-robot validation: Use low speed, motion limits, short runs, and keep emergency stop available.
Mapping check
LeRobot can use a rename map to handle mismatched observation keys, but it only renames observations and does not process actions. X Square Robot adaptation must separately convert action dimensions, units, and control modes.
Example:
--rename_map='{ "observation.images.faceImg": "observation.images.image", "observation.images.rightImg": "observation.images.image2" }'
The target keys must match the configuration of the selected π0.5 checkpoint; do not copy the example directly.
Phase 1 acceptance
-
Pin a reproducible environment and model version;
-
X Square Robot data can be used for training;
-
The observation/action mapping is documented and has passed validation;
-
Inference passes a smoke test without a real robot;
-
The inference service can communicate with the SDK Client;
-
Policy outputs can be executed on the real robot through the Adapter and SDK;
-
Exceptions, timeouts, disconnections, and stopping behavior are controllable;
-
Provide at least one task that has passed real-robot validation.
Delivery records
After adaptation is complete, record the following information in the project delivery records to prevent environment, model, or mapping changes from making the results unreproducible:
-
The final OpenPI or LeRobot version used, together with the corresponding code repository and branch;
-
The QUANTA X1 Pro observation/action mapping configuration;
-
Reproducible training commands, the inference Client startup procedure, and dependency versions;
-
Real-robot acceptance tasks, test conditions, results, and validated safety boundaries.