← 所有笔记
// VLA 训练指南 · 技术解析

π₀ 系列训练全解析

预训练 vs 后训练 · Human-in-the-Loop · π₀.6* ReCAP
训练流程 VLA Physical Intelligence
§ 01

π₀ 系列概览

一句话总结:π₀.5 是基础 VLA(纯模仿学习),π₀.6* 是在 π₀.5 基础上增加了离线 RL 预训练 + 迭代后训练(ReCAP),实现从真实部署经验中持续学习。

Physical Intelligence 的 π₀ 系列是具身智能领域最具影响力的 VLA(Vision-Language-Action)模型系列。理解它们的训练流程差异,对复现和部署至关重要。

π₀.5 · BASE VLA
基础视觉-语言-动作模型
基于 Flow Matching 的 Behavior Cloning,从 demonstration 数据学习多任务策略。
π₀.6* · RECAP
从经验中学习的 VLA
在 π₀.5 基础上增加 Value Function 和 Advantage Conditioning,支持迭代改进。

整体训练流程图

π₀.5
预训练
π₀.6*
Offline RL
SFT 微调
ReCAP
迭代改进
§ 02

预训练:π₀.5 的 Behavior Cloning

核心方法

Behavior Cloning(行为克隆) = 监督学习,让模型模仿人类专家的动作。

π₀.5 训练三要素

架构PaliGemma (SigLIP + Gemma 2B) + Action Expert (300M)
数据多任务、多机器人的 demonstration 数据(视觉+语言指令+动作)
目标预测动作块(action chunk)的 Flow Matching 损失

Flow Matching 简述

π₀.5 不使用传统的 MSE 损失预测动作,而是采用 Flow Matching:

L = E[||v_θ(x_t, t) - (x_1 - x_0)||²]

其中 x_t = t·x_1 + (1-t)·x_0,t ∈ [0,1]
x_1 = 专家动作,x_0 = 噪声
类比理解

传统 BC 是直接"背答案",Flow Matching 是学习"从噪声到动作的路径",类似扩散模型,生成更平滑、多样的动作。

关键特点

  • 无奖励信号:只需要 (obs, action) 对,不需要任务成功与否的标注
  • 开环训练:每个训练样本独立,不考虑动作对环境的长期影响
  • 数据饥渴:需要大量高质量 demonstration 数据
§ 03

后训练:π₀.6* 的 ReCAP

ReCAP 核心

RL with Experience and Corrections via Advantage-conditioned Policies
通过优势条件策略,利用经验数据和人工纠正进行强化学习。

为什么需要后训练?

π₀.5 的问题:

  • 只能在 demonstration 数据分布内表现良好
  • 无法从自己的错误中学习
  • 难以适应新任务或环境变化

π₀.6* 解决方案:三组件架构

COMPONENT 1
VLA Policy
生成动作策略
(继承 π₀.5)
COMPONENT 2
Value Function
预测"距离成功还有几步"
(新增)
COMPONENT 3
Advantage
动作质量评估
(新增)

Value Function 详解

Value Function V(s,ℓ) 预测在给定状态 s 和语言指令 ℓ 下,距离任务完成还有多少个时间步

奖励设计(稀疏奖励):

r_t = {
  0             if t = T 且任务成功
  -C_fail     if t = T 且任务失败
  -1          otherwise(每步惩罚)
}

返回值:R(τ) = Σ r_t(累积奖励)
关键洞察

Value Function 不是预测"任务能成功吗",而是预测"还要多久"。这使得模型能区分"快成功了"和"还很远"的状态。

Advantage 与 Advantage-Conditioning

Advantage A(s,a) 衡量采取动作 a 比平均水平好多少

A(s_t, a_t) = Q(s_t, a_t) - V(s_t)

离散化为二值:
I_t = 𝟙[A(s_t, a_t) > ε](优势指示器)

ε 是任务相关的阈值(通常取 value 预测的 30% 分位数)

在训练时,I_t 作为文本标签注入到语言指令中

任务文本: "pick up the cup"
↓ 注入优势标签
训练文本: "pick up the cup. Advantage: positive"(如果 I_t = 1)
或: "pick up the cup. Advantage: negative"(如果 I_t = 0)

ReCAP 完整流程

1
数据收集(Data Collection)

部署当前策略 π_k,收集 rollout 数据。专家可在需要时干预(intervention)。

2
价值函数训练(Value Function Training)

用所有数据训练/更新 Value Function,预测 return-to-go。

3
优势计算与二值化

计算 advantage,二值化为指示器标签 I_t。

4
策略训练(Policy Training)

用 advantage-conditioned 数据训练策略,得到 π_{k+1}。

↑ 重复 K 次迭代,直到性能饱和
§ 04

Human-in-the-Loop 详解

定义

Human-in-the-Loop (HITL) 指在自主执行过程中,人类专家可以随时接管控制权,纠正机器人的错误动作。

为什么需要 HITL?

  • 数据效率:完全自主收集的失败数据价值低,专家干预提供高质量的纠正样本
  • 安全性:防止机器人在危险状态下继续执行
  • 标注质量:专家即时标记 episode 成功与否

HITL 在 ReCAP 中的工作流程

机器人执行
策略动作
检测异常
或失败风险
专家干预
(按热键)
专家纠正动作
(遥控)
恢复自主
+ 标记数据

数据标注细节

HITL 过程中会记录以下信息:

complementary_info.policy_action策略输出的原始动作
complementary_info.is_intervention当前步是否在干预状态
complementary_info.collector_policy_id动作来源(human 或 policy ID)
episode_successepisode 级别成功/失败标记
类比理解

HITL 类似于驾校教练坐在副驾驶:学员(机器人)自己开车,但教练(专家)随时准备踩刹车、接管方向盘,并在事后指出哪里做错了。

热键设计(Evo-RL 实现)

i: 切换干预模式(策略 ↔ 遥控接管)
s: 标记成功并结束当前 episode
f: 标记失败并结束当前 episode
→: 提前结束当前 loop
←: 提前结束并重新录制当前 episode
Esc: 停止录制会话
§ 05

π₀.5 vs π₀.6 对比

维度 π₀.5 π₀.6*
训练类型 纯监督学习
(Behavior Cloning)
监督学习 + 离线 RL
(Offline RL + BC)
奖励信号 无(只需动作标签) 稀疏奖励(任务成功/失败)
Value Function ❌ 无 ✅ 有(预测剩余步数)
迭代改进 ❌ 不支持 ✅ ReCAP 循环迭代
数据要求 大量 demonstration Demonstration + 自主 rollout
Human-in-the-Loop ❌ 训练阶段不需要 ✅ 部署阶段需要
适用场景 固定任务、数据充足 动态任务、持续学习

架构差异图

π₀.5 架构
输入: 图像 + 语言指令
PaliGemma (VLM)
Action Expert
输出: 动作块
π₀.6* 架构
输入: 图像 + 语言指令 + Advantage Tag
PaliGemma (VLM)
Action Expert
输出: 动作块
Value Head
预测剩余步数
§ 06

Evo-RL 复现分析

项目定位

Evo-RL 是上交和 EvoMind 开源的 π₀.6* ReCAP 流程复现,基于 LeRobot 框架。

Evo-RL 实现了什么?

✅ 已实现Value Function 训练 (Pistar06)、Advantage 计算、ACP (Advantage-Conditioned Policy) 训练
✅ 已实现Human-in-the-Loop 数据收集 (lerobot-human-inloop-record)
✅ 已实现迭代训练循环(ReCAP)
❓ 需确认预训练阶段是否使用 Offline RL(论文中 π₀.6* 的预训练包含 Offline RL)

Evo-RL 训练流程

阶段 1: 数据收集

使用 lerobot-human-inloop-record 收集 demonstration + 干预数据

阶段 2: Value Function 训练

lerobot-value-train --value.type=pistar06

阶段 3: Value 推理

lerobot-value-infer 计算 advantage 和 indicator 标签

阶段 4: 策略训练

lerobot-train 使用 ACP 标签训练策略

阶段 5: 闭环部署

部署策略,收集下一轮数据,循环迭代

预训练方法的关键差异

重要提醒

Evo-RL 的代码主要关注 后训练阶段(ReCAP)。对于预训练阶段:

  • π₀.5:纯 Behavior Cloning(Flow Matching)
  • π₀.6* 论文:在 π₀.5 基础上增加 Offline RL 预训练
  • Evo-RL:README 主要描述 SFT 之后的 ReCAP 流程,预训练阶段需要自行实现或加载已有预训练权重

实际使用建议

如果你要复现 π₀.6*:
  1. 获取或训练 π₀.5 基础模型(或类似规模的 VLA)
  2. 使用 Evo-RL 的 Value Function 训练流程
  3. 收集任务数据(可包含 HITL)
  4. 运行 ReCAP 迭代改进
§ 07

总结

核心要点
  1. 预训练(π₀.5)= Behavior Cloning,建立基础能力
  2. 后训练(π₀.6*)= Offline RL + 迭代改进,实现持续学习
  3. Value Function 是连接 BC 和 RL 的桥梁
  4. HITL 提供高质量纠正数据,提升学习效率
  5. ReCAP 让 VLA 能从真实部署经验中不断改进

理解 π₀ 系列的训练流程,有助于你在实际项目中做出正确的选择:

  • 数据充足、任务固定 → π₀.5 风格 Behavior Cloning
  • 需要持续学习、适应新任务 → π₀.6* 风格 ReCAP