physical-superintelligence-lab/Psi0

[RSS26'] Welcome to Psi-Zero, a Humanoid VLA towards Universal Humanoid Intelligence.

📚 概览

Ψ₀ (读作 Psi-zero) 是一个开源的 视觉语言动作 (VLA) 基础模型,旨在实现 灵巧人型机器人的运动与操作。它首先从海量的自我中心视角视频数据中学习视觉与语言表示,接着在较小规模的真实世界遥操作机器人数据集中进行 后训练 (post-training),以捕捉人型机器人的身体动力学(例如 Unitree G1)。该模型可以仅通过约 80 条新轨迹进行微调,以获取全新的全身动作技能。


🏗️ 架构 (如 README 所述)

层级 组件 角色
System-2 视觉语言骨干网络 基于 Qwen3-VL-2B-Instruct;从相机观察与文本指令中提取联合视觉语言特征。
System-1 多模态扩散 Transformer (动作专家) 一个 ≈500 M 参数的基于流的扩散 Transformer (受 Stable Diffusion 3 启发),根据骨干网络特征预测未来的全身动作块 (action chunks)。
System-0 基于 RL 的跟踪控制器 执行 System-1 产生的低层次下半身指令,为机器人提供稳定的物理控制。

🚀 仓库提供什么

  • 模型权重 (视觉语言骨干网络 + 扩散动作专家) 托管于 Hugging Face。
  • 数据集 – 真实世界遥操作记录 (9 个任务) 与模拟数据 (SIMPLE) 亦托管于 Hugging Face。
  • 端到端训练脚本,用于:
    • 在大型自我中心视角数据集 (EgoDex, Humanoid-Everyday) 上预训练 VLM。
    • 在机器人数据上进行动作专家的后训练。
    • 在特定机器人 (Unitree G1) 或在 SIMPLE 模拟器中进行微调。
  • 部署工具,用于在 RTC (实时通信) 模式 下提供模型服务,并为机器人运行客户端。
  • 集成与 SONIC – 一个全身控制器 (分支自 NV-Labs GR00T) 用于更高级的机器人端执行。
  • 基准测试实现 (GR00T, OpenPI π0.5, InternVLA-M1, H-RDT, EgoVLA, Diffusion Policy, ACT) 用于对比。
  • 详尽的文档:安装、数据转换 (转换为 LeRobot 格式)、微调、评估 (开环与模拟中) 以及故障排查。

📦 快速开始 (真实机器人)

# Clone and set up the environment (uses uv for dependency management)
git clone git@github.com:physical-superintelligence-lab/Psi0.git && cd Psi0
curl -LsSf https://astral.sh/uv/install.sh | sh   # install uv if needed
uv venv .venv-psi --python 3.10
source .venv-psi/bin/activate
GIT_LFS_SKIP_SMUDGE=1 uv sync --group serve --group viz --group psi --active
uv pip install flash_attn==2.7.4.post1 --no-build-isolation

# Verify installation
python -c "import psi; print(psi.__version__)"

微调真实任务 (例如:Hug box and move)

  1. 下载预先收集的任务数据 从 Hugging Face:
    export task=Hug_box_and_move
    hf download USC-PSI-Lab/psi-data g1_real_raw/$task.zip \
        --local-dir=$PSI_HOME/data/real_teleop_g1 --repo-type=dataset
    unzip $PSI_HOME/data/real_teleop_g1/g1_real_raw/$task.zip -d $PSI_HOME/data/real_teleop_g1/g1_real_raw/$task
    
  2. 转换为 LeRobot 格式 (脚本 handles metadata):
    python scripts/data/raw_to_lerobot.py \
        --data-root=$PWD/data/real_teleop_g1/g1_real_raw \
        --work-dir=$PWD/data/real \
        --repo-id=psi0-real-g1 \
        --robot-type=g1 \
        --task=$task
    
  3. 微调 (根据需要调整 CUDA_VISIBLE_DEVICES):
    scripts/train/psi0/finetune-real-psi0.sh $task
    
  4. 提供服务 (RTC 模式):
    bash ./scripts/deploy/serve_psi0-rtc.sh
    
  5. 在机器人上运行客户端:
    bash ./real/scripts/deploy_psi0-rtc.sh
    

🎮 模拟工作流程 (SIMPLE)

  1. 安装 SIMPLE (独立安装或作为子模块)。
  2. 下载模拟任务数据 (例如:G1WholebodyXMovePickTeleop-v0)。
  3. 使用 scripts/train/psi0/finetune-simple-psi0.sh $task 进行微调
  4. 提供服务 并运行提供的评估 Notebooks 或 CLI 脚本以获取 Rollout 视频。

📚 数据与模型访问

  • 模型权重https://huggingface.co/USC-PSI-Lab/psi-model
  • 数据集 (真实与模拟)https://huggingface.co/datasets/USC-PSI-Lab/psi-data
  • 预训练 VLM 骨干网络 (Qwen3-VL-2B-Instruct) 通过 scripts/predownload_qwen3vl.py 辅助脚本自动下载。

🛠️ 关键依赖项

  • uv – 仓库中使用的快速 Python 包管理工具。
  • flash_attn – 为大型 Transformer 模型优化的注意力机制内核。
  • LeRobot – 机器人学习管线的通用数据格式。
  • SIMPLE – 基于 MuJoCo + Isaac Sim 的人型机器人基准测试。
  • SONIC (GR00T-WholeBodyControl) – 用于真实机器人部署的选用全身控制器。

📄 许可证

代码以 Apache 2.0 许可证发布 (参见 LICENSE)。模型权重也按照 Apache 2.0 分发,与仓库的许可协议一致。


📖 引用

如果您在研究中使用 Ψ₀,请引用随附的 arXiv 论文 (arXiv:2603.12263) 并注明仓库。


TL;DR

Ψ₀ 是一个公开可用的、用于人型机器人的大规模视觉语言动作模型。它结合了 Qwen-based VLM 与扩散风格的动作专家,提供预训练、后训练、微调以及在 Unitree G1 上的实时部署脚本,并包含一个完整的模拟基准 (SIMPLE) 以及多个基准方法进行对比。

相关

  • Dispatch
  • 项目
  • Dispatch
  • 项目