Unofficial PyTorch Reproduction of
This is an unofficial implementation maintained by @StaryMoon. If this repository helps your reading, reproduction, or course project, please consider giving it a star and following my GitHub profile.
- 2026-06-10: Initial public release with official-style project structure, citation metadata, configuration, PyTorch interfaces, and smoke test.
This repository organizes a PyTorch implementation for
Main goals:
- provide a clean PyTorch module layout for the paper;
- keep training, inference, evaluation, and configuration entry points explicit;
- track paper-reported metrics separately from local experiment logs;
- make it easy for contributors to inspect, compare, and extend the implementation.
Pi0-Unofficial/
├── configs/
│ └── default.yaml
├── scripts/
│ └── smoke_test.py
├── src/pi0_unofficial/
│ ├── __init__.py
│ └── model.py
├── CITATION.cff
├── README.md
├── requirements.txt
└── pyproject.toml
git clone https://github.com/StaryMoon/Pi0-Unofficial.git
cd Pi0-Unofficial
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txtFor CUDA-enabled experiments, install the PyTorch build matching your CUDA version from the official PyTorch website before installing the rest of the dependencies.
python scripts/smoke_test.pyExpected output:
output: (...)
loss: ...
mkdir -p data/train data/val data/test checkpoints outputsRecommended layout:
data/
├── train/
├── val/
└── test/
Keep private datasets, downloaded checkpoints, and generated outputs out of git. Dataset-specific converters can be added under scripts/ while preserving the public repository structure.
Minimal module usage:
import torch
from pi0_unofficial import ModelConfig, UnofficialModel, reconstruction_loss
config = ModelConfig(task="robot", hidden_dim=128, num_layers=2, num_heads=4)
model = UnofficialModel(config)
optimizer = torch.optim.AdamW(model.parameters(), lr=1e-4)
image = torch.randn(2, 3, 64, 64)
token_ids = torch.randint(0, config.vocab_size, (2, 16))
out = model(image, token_ids=token_ids)
loss = reconstruction_loss(out.primary)
loss.backward()
optimizer.step()import torch
from pi0_unofficial import UnofficialModel
model = UnofficialModel().eval()
with torch.no_grad():
image = torch.randn(1, 3, 64, 64)
y = model(image).primary
print(y.shape)Suggested entry points:
python scripts/smoke_test.py
# python scripts/evaluate.py --config configs/default.yaml --ckpt checkpoints/model.ptPaper-reported values and local run values should be kept in separate columns so readers can distinguish citation numbers from local experiment logs.
For copyright and license clarity, this repository links to the original paper figures and tables instead of redistributing screenshots copied from the PDF. The table below tracks where readers can find the paper-reported results.
| Result Type | Paper Location | Source |
|---|---|---|
| Main quantitative comparison | Main paper tables | arXiv paper |
| Ablation study | Experiment / ablation sections | arXiv paper |
| Qualitative examples | Main paper figures and appendix | arXiv PDF |
| Date | Config | Split | Metric | Value | Notes |
|---|---|---|---|---|---|
| 2026-06-10 | configs/default.yaml |
smoke check | forward pass | ok | package interface validation |
- Package layout and install metadata
- Core PyTorch module interfaces
- Default config and smoke test
- Paper citation and result-location index
- Dataset-specific preprocessing scripts
- Paper-specific training recipe
- Evaluation and visualization scripts
- Public checkpoints and model zoo entries
| Model | Checkpoint | Config | Notes |
|---|---|---|---|
| default | TBA | configs/default.yaml |
compact implementation interface |
If you find this repository useful, please cite the original paper:
@article{Pi0_2024,
title = {$π_0$: A Vision-Language-Action Flow Model for General Robot Control},
author = {Kevin Black and Noah Brown and Danny Driess and Adnan Esmail and Michael Equi and Chelsea Finn and Niccolo Fusai and Lachy Groom and others},
journal = {arXiv preprint arXiv:2410.24164},
year = {2024}
}- Thanks to the authors of
$π_0$ : A Vision-Language-Action Flow Model for General Robot Control for the original research. - Thanks to arXiv for open access to the paper metadata and manuscript.
- This repository is inspired by standard open-source PyTorch research codebases.
- The implementation is unofficial and all paper names, datasets, and trademarks belong to their respective owners.
This repository is released under the MIT License. The original paper, datasets, official code, project assets, and third-party dependencies remain governed by their own licenses.
pytorch, unofficial-implementation, reproduction, pi0, vision-language-action, robotics, flow-matching, robot-policy