开源项目安装与配置指南:Open-Pi-Zero
1. 项目基础介绍
Open-Pi-Zero 是一个开源项目,它实现了 Physical Intelligence (Pi) 的 pi0 模型。该模型采用了一种类似于 MoE (Mixture of Experts) 的架构,并使用预训练的 3B PaliGemma VLM 以及一组新的动作专家参数。该模型通过流匹配损失在动作块输出上训练。
主要编程语言:Python
2. 项目使用的关键技术和框架
- 预训练语言模型:使用 PaliGemma VLM 进行图像和文本的处理。
- MoE-like 架构:每个专家都有自己的参数集合,并通过注意力机制相互作用。
- 流匹配损失:在动作专家的动作块输出上使用流匹配损失进行训练。
3. 项目安装和配置的准备工作与详细步骤
准备工作
- 确保你的系统中已安装了 Git、Python 和必要的依赖库。
- 安装 UV(可选,用于简化环境管理),可以使用 pip 安装:
pip install uv
安装步骤
-
克隆项目仓库:
git clone https://github.com/allenzren/open-pi-zero.git
-
如果需要运行 Simpler 评估或尝试预训练的检查点,还需要克隆 Simpler 项目的分支:
git clone https://github.com/allenzren/SimplerEnv --recurse-submodules
-
安装项目依赖:
-
使用 UV:
cd open-pi-zero uv sync uv pip install -e ../SimplerEnv uv pip install -e ../SimplerEnv/ManiSkill2_real2sim
-
或者使用虚拟环境或 conda 环境:
pip install -e .
在三个目录(open-pi-zero、SimplerEnv 和 ManiSkill2_real2sim)中都执行上述安装命令。
-
-
设置环境变量:
source scripts/set_path.sh
-
下载 PaliGemma 权重:
cd $TRANSFORMERS_CACHE git clone https://huggingface.co/google/paligemma-3b-pt-224
-
测试文本生成(使用预训练权重):
uv run src/model/vla/pizero.py --text_only --load_pretrained_weights --use_bf16
完成以上步骤后,你就可以开始探索和使用 Open-Pi-Zero 项目了。如果你需要进一步的操作和配置,请参考项目仓库中的 README 文件和其它相关文档。