fine-tuning-serving-openpi
Fine-tune and serve Physical Intelligence OpenPI models (pi0, pi0-fast, pi0.5) using JAX or PyTorch backends for robot policy inference across ALOHA, DROID, and LIBERO environments. Use when adapting pi0 models to custom datasets, converting JAX checkpoints to PyTorch, running policy inference servers, or debugging norm stats and GPU memory issues.
npx skills add Orchestra-Research/AI-Research-SKILLs --skill openpi --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# OpenPI Fine-Tuning and Serving End-to-end workflows for fine-tuning and serving Physical Intelligence's OpenPI models (pi0, pi0-fast, pi0.5) on robot manipulation tasks from the public `openpi` repository. Covers blank-machine setup, JAX training, PyTorch training, checkpoint conversion, and policy inference serving. ## Quick start Clone the public repo, install the workspace, then serve a pretrained policy: ```bash git clone --recurse-submodules https://github.com/Physical-Intelligence/openpi.git cd openpi GIT_LFS_SKIP_SMUDGE=1 uv sync GIT_LFS_SKIP_SMUDGE=1 uv pip install -e . uv run scripts/serve_policy.py --env DROID ``` ```python from openpi_client import websocket_client_policy client = websocket_client_policy.WebsocketClientPolicy(host="localhost", port=8000) result = client.infer(observation) actions = result["actions"] # numpy array of shape (chunk_size, action_dim) ``` ## Core concepts **Model family**: OpenPI implements three model variants from Physical Intelligence: | Model | Architecture | Speed | Quality | Typical use | |-------|-------------|-------|---------|-------------| | pi0 | Flow-matching VLA | Baseline | Highest | Research, complex tasks | | pi0-fast | Auto
- Quick start
- Core concepts
- Compute requirements
- Workflow 0: Blank-machine setup
- When to use vs alternatives
- Workflow 1: JAX fine-tuning on LeRobot data
- Workflow 2: PyTorch training and checkpoint conversion
- Workflow 3: Policy inference serving
- Common issues
- For HPC/cluster users
- Advanced topics
- Resources
git clone --recurse-submodules https://github.com/Physical-Intelligence/openpi.git
cd openpi
uv run scripts/serve_policy.py --env DROID
git submodule update --init --recursive
uv run python -c "from openpi.training import config as _config; print(_config.get_config('pi05_droid').name)"
uv run scripts/serve_policy.py --help
uv run scripts/compute_norm_stats.py --config-name <config_name>
uv run --group rlds scripts/compute_norm_stats.py \
pi05_full_droid_finetune \
uv run scripts/serve_policy.py policy:checkpoint \What does the fine-tuning-serving-openpi skill do?
Fine-tune and serve Physical Intelligence OpenPI models (pi0, pi0-fast, pi0.5) using JAX or PyTorch backends for robot policy inference across ALOHA, DROID, and LIBERO environments. Use when adapting pi0 models to custom datasets, converting JAX checkpoints to PyTorch, running policy inference servers, or debugging norm stats and GPU memory issues.
How do I install it?
Run `npx skills add Orchestra-Research/AI-Research-SKILLs --skill openpi --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From Orchestra-Research/AI-Research-SKILLs, a repository with 11,391 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
