过去几年,人形机器人发展很快。
我们已经看到很多机器人可以跑步、跳舞、翻滚,甚至完成一些非常流畅的全身动作。但如果把任务换成更日常的场景,比如走到厨房里拿一个杯子、打开水龙头、倒水、推车、擦桌子、把垃圾扔进垃圾桶,问题就会变得复杂得多。
因为这些任务不是单纯的“走路”,也不是单纯的“抓取”。它们需要机器人同时完成移动、转身、下蹲、双臂协作、灵巧手操作和长时间任务规划。
这类任务通常被称为 humanoid loco-manipulation,也就是人形机器人的移动操作能力。
最近,USC Physical Superintelligence Lab 等机构提出了一篇新的工作:Ψ0: An Open Foundation Model Towards Universal Humanoid Loco-Manipulation。这篇论文试图回答一个很关键的问题:
人形机器人怎样才能从人类视频和少量机器人数据中,学会复杂的长程移动操作?
人形机器人真正难的地方,不是“走”,而是“边走边操作”
Figure 1 展示了 Ψ0 在一个类似茶水间 / 厨房的环境中完成多种任务:从咖啡机里拿杯子、推车、擦桌子、抓瓶子并放进水槽、推冰箱门等。

这些任务看起来很日常,但对机器人来说其实非常难。
比如“拿起一个瓶子并放进水槽”这件事,人类做起来几乎不需要思考。但机器人需要先看懂环境,判断瓶子在哪里,然后移动身体,调整手臂姿态,控制手指抓住瓶子,保持平衡,再转身移动到水槽旁边,最后把瓶子放进去。
这中间任何一个环节失败,整个任务都可能失败。
所以,这篇论文的重点不是让机器人完成一个短时间的抓取动作,而是让人形机器人完成真正接近日常生活的 长程、多阶段、全身协调任务。
为什么不能直接用大量机器人数据训练?
现在很多机器人基础模型的思路是:收集大量机器人遥操作数据,然后训练一个 vision-language-action model,也就是 VLA 模型。
这个思路在机械臂、移动机械臂或者双臂机器人上已经有不少成功案例,比如 OpenVLA、π0、π0.5、GR00T 等。
但在人形机器人上,这条路会遇到一个很现实的问题:高质量的人形机器人遥操作数据太贵了。
人形机器人比普通机械臂复杂得多。它不只是控制一个机械臂末端,而是要控制手、胳膊、躯干、腿、脚和整体平衡。采集一条稳定、可用、长程的人形机器人操作轨迹,本身就很困难。
如果完全依赖真实机器人遥操作数据,数据规模很难像互联网文本、图片、视频那样快速扩大。
那有没有更便宜、更容易获得的数据?
有,就是人类第一视角视频。
人类第一视角视频很有价值,但不能直接拿来控制机器人

人类第一视角视频,也就是 egocentric video,记录的是人从自己视角看到的操作过程。
比如人拿杯子、倒水、开门、擦桌子、整理物品。这些视频里包含大量自然的人类操作经验:手应该怎么接近物体,什么时候抓,什么时候放,任务分成哪些步骤,物体之间有什么关系。
这些信息对机器人学习非常有价值。
但问题是,人和人形机器人并不完全一样。
虽然人形机器人看起来像人,但它的关节结构、自由度、运动范围、控制频率、手指结构、动力学特性都和人类不同。人类视频里的动作不能简单复制到机器人身上。
过去一些方法会尝试把人类数据和机器人数据混在一起训练,让模型同时学习人和机器人。但 Ψ0 的作者认为,这种做法并不理想。
原因很简单:人类动作分布和机器人动作分布本质上不同。
如果让一个模型同时学习两套差异很大的动作空间,它可能既没有真正学好人类操作中的高层先验,也没有真正学好机器人自己的低层控制。
所以 Ψ0 的核心思路是:
不要把所有数据混在一起硬训,而是分阶段使用不同数据。人类视频负责教模型“怎么看任务、理解任务、形成操作先验”;机器人数据负责教模型“如何用机器人自己的身体真正执行动作”。
Ψ0 的关键思想:分阶段训练,而不是简单 co-training

Figure 2 是这篇论文最重要的一张图。它展示了 Ψ0 的整体训练和部署流程。
整个系统可以分成三个阶段。
第一阶段,用人类第一视角视频预训练视觉语言模型。
第二阶段,冻结视觉语言模型,再用真实人形机器人数据训练 action expert。
第三阶段,把模型部署到真实机器人上,通过底层控制器实现平滑稳定的全身运动。
这背后的逻辑非常清楚。
人类视频数据规模大、便宜、内容丰富,适合用来学习任务语义和操作先验;机器人数据规模小、采集贵,但它是真实的机器人身体数据,适合用来学习精确的关节控制。
也就是说,Ψ0 并不是追求“所有数据越多越好”,而是强调:
正确的数据,要用在正确的训练阶段。
这也是这篇论文最值得关注的地方。
System 2:先让 VLM 学会理解人类操作
Ψ0 使用 Qwen3-VL-2B-Instruct 作为视觉语言主干,也就是系统中的 System 2。
这里的 System 2 可以理解成机器人的“大脑”部分。它负责处理视觉图像和语言指令,提取任务相关的语义和视觉特征。
在预训练阶段,作者使用了 EgoDex 数据集。这个数据集包含大约 829 小时的人类第一视角灵巧操作视频。视频中,人类双手执行各种日常操作任务。
但有意思的是,作者没有让 VLM 直接预测很长的动作序列。
他们只让模型预测下一步动作 token。
为什么?
因为这一阶段的目的不是直接让 VLM 控制机器人,而是让 VLM 学会和操作相关的视觉表征与任务语义。如果让 VLM 自回归生成很长的高维动作序列,训练成本会非常高,而且没有必要。
所以作者使用 FAST tokenizer,把连续动作转成离散 action tokens,然后让 VLM 做 next-action prediction。
简单来说,这一步不是让模型成为真正的控制器,而是让它先通过人类视频学会:
“看到这个场景和指令时,下一步大概应该发生什么。”
这有点像让模型通过大量人类第一视角经验,先形成一种操作直觉。
System 1:真正控制机器人的是 Action Expert

预训练完 VLM 之后,Ψ0 并没有让 VLM 直接输出机器人动作,而是冻结 VLM,再单独训练一个 flow-based MM-DiT action expert。
这个 action expert 可以理解为机器人的“动作生成器”。它接收两类信息:
一类是 VL features,也就是 VLM 从当前图像和语言指令中提取出的视觉语言特征。它告诉模型:现在看到什么、任务要做什么。
另一类是 A features,也就是 action tokens / action hidden states。它对应模型正在生成的机器人动作。
Figure 3 对比了两种 action head 的结构:左边是 Ψ0 使用的 MM-DiT for VLA,右边是更普通的 Naive DiT Head。
右边的 Naive DiT Head 更像是一个“先处理动作,再用视觉语言信息做条件补充”的结构。动作分支先经过 self-attention,主要在动作 token 内部建模;然后再通过 cross-attention 去读取 VL 特征。也就是说,视觉语言信息更像是外部条件,被后续接入进来。
但左边的 MM-DiT 做得更深一些。它没有把 VL 和 A 简单地分成“条件”和“被生成对象”,而是让两者一起进入 joint attention。也就是说,视觉语言特征和动作特征会在同一个注意力模块里相互交互。
这对应图中左侧的结构:VL 和 A 两个分支分别进入模块,在中间的 Joint Attention 中共同计算 Q、K、V。这样一来,模型在生成动作时,不只是“动作自己先想一遍,再看看图像信息”,而是从一开始就让动作生成过程和视觉语言理解紧密耦合。
这对机器人控制很重要。
比如机器人要“拿起瓶子并倒进杯子”。模型不能只根据语言指令生成一段固定动作。它需要结合当前画面判断:瓶子在哪里,手有没有接近瓶子,瓶子是否已经被抓住,杯子在什么位置,接下来应该转身、移动还是调整手指。
因此,动作生成过程必须持续依赖视觉和语言信息。MM-DiT 的 joint attention 就是为了让动作分支和视觉语言分支更充分地交互,从而生成更符合当前场景的机器人动作。
另外,图中标出的 τ 是 flow timestep。因为这个 action expert 是 flow-based 的,它不是一次性直接输出最终动作,而是在类似 flow matching 的过程中,从噪声逐步生成动作。τ 就表示当前生成过程处在哪一个时间步。
图中的粉色条可以理解为 FiLM 调制。它会根据 τ 等条件,对 VL 分支和 A 分支进行调制,让模型知道当前处于动作生成的哪个阶段。
所以,这张图想表达的重点是:
普通 DiT Head 更像是“动作生成模块 + 视觉语言条件”;而 Ψ0 的 MM-DiT 是把视觉语言理解和动作生成放到同一个注意力空间里联合建模。
也正因为这样,Ψ0 的 action expert 更适合处理人形机器人的长程移动操作任务。它生成的不是抽象的人类手部动作,而是机器人自己的 joint-space action chunk,也就是未来一小段时间内机器人各个关节应该如何运动。最终,这些动作会和底层 lower-body controller 配合,完成真实的人形机器人全身控制。
System 0:底层控制器保证机器人站得稳、动得顺
人形机器人和机械臂最大的不同之一,是它必须一直保持身体稳定。
机械臂可以固定在桌子上,但人形机器人需要移动、转身、下蹲,还要在操作物体时保持平衡。
所以 Ψ0 并不是直接让 VLA 模型控制所有底层关节,而是引入了一个 lower-body controller,也就是 System 0。
高层模型预测一些下半身相关的控制量,比如移动速度、转向、躯干姿态等;然后底层的 RL-based tracking policy 负责把这些命令转换成稳定的腿部和腰部关节动作。
这个设计很实用。
因为如果把所有底层控制都交给一个大型 VLA 模型,模型不仅推理慢,而且很难保证实时稳定。把底层平衡和运动控制交给专门的 controller,可以降低学习难度,也能让机器人执行更稳定。
真实部署中的问题:大模型会“想太久”

VLA 模型通常都很大。Ψ0 也不例外,整个模型超过 2.5B 参数,单次 forward 大约需要 160 ms。这个速度对语言模型来说不算慢,但对真实机器人控制来说已经很明显了。
因为机器人不是生成一句话,而是在连续控制自己的身体。它不能每隔一小段时间就停下来“思考一下”。如果模型生成下一段动作的速度跟不上执行速度,机器人就会出现动作不连续、关节跳变、身体抖动等问题。
Figure 4 展示的就是这个问题。
这张图的横轴是时间步,纵轴是某个机器人关节角度的变化。图里有三条线:
橙色线是 Previous Action,也就是机器人当前正在执行的上一段动作 chunk。
青绿色线是 Next Action without RTC,表示如果不使用 real-time chunking,模型新生成的下一段动作会是什么样。
红色线是 Next Action with RTC,表示加入 real-time chunking 后,模型生成的下一段动作会是什么样。
图中还有两条竖着的虚线。第一条虚线标注为 Inference Start,表示模型开始推理下一段动作的时间点。第二条虚线标注为 Switch Action Chunk,表示机器人要从上一段动作切换到下一段动作的时间点。
关键问题就出现在这个切换时刻。
如果看青绿色线,也就是没有 RTC 的情况,可以发现它和橙色线差别非常大。尤其是在切换动作 chunk 附近,橙色线的关节角度大约还在 0.3 到 0.4 附近,而青绿色线已经上升到接近 0.7。也就是说,机器人如果直接从橙色线切换到青绿色线,关节目标会突然发生很大的跳变。
对真实机器人来说,这种跳变不是小问题。它会带来明显的控制抖动,轻则动作不自然,重则可能导致手部碰撞、物体掉落,甚至影响全身平衡。
再看红色线,也就是使用 RTC 后的下一段动作。它在切换点附近和橙色线更加接近,整体变化也更平滑。换句话说,RTC 的作用不是让模型生成“完全不同的一段新动作”,而是让新动作能够自然接上当前正在执行的旧动作。
可以把它理解成一个很简单的例子:人走路时不会每一步都突然改变腿的运动轨迹,而是会自然地从上一段动作过渡到下一段动作。机器人也一样。如果上一段动作还没执行完,下一段动作就突然给出完全不同的关节目标,身体就会“抽一下”。
所以,real-time chunking 解决的不是“模型能不能预测动作”的问题,而是 模型预测出来的动作能不能在真实机器人上连续执行 的问题。
Ψ0 使用的是 training-time real-time chunking。也就是说,它不是等到部署时再临时修正动作,而是在训练阶段就模拟推理延迟,让模型学会:当上一段动作还在执行时,下一段动作应该如何和它平滑衔接。
这一点对人形机器人尤其重要。因为人形机器人不是固定底座机械臂,它在操作时还要保持身体平衡。手臂动作的突然跳变,可能会影响躯干姿态;躯干姿态变化太大,又可能进一步影响下肢稳定性。因此,对于 humanoid loco-manipulation 来说,动作连续性本身就是成功执行任务的一部分。
这也是 Figure 4 想表达的核心: 没有 RTC,下一段动作可能和上一段动作严重不一致,导致控制抖动;有 RTC,模型生成的新动作会尽量贴近当前执行轨迹,从而让机器人动作更平滑、更稳定。
这部分设计也说明,Ψ0 并不是只关注模型结构和离线指标。它考虑到了真实机器人部署时一定会遇到的问题:推理延迟、动作切换、控制连续性和物理稳定性。对于长程移动操作任务来说,这些工程细节往往决定了模型能不能真正跑在机器人上。
数据采集也很关键:作者设计了适合人形机器人的遥操作系统

除了模型本身,这篇论文还花了不少篇幅介绍遥操作系统。
因为对人形机器人来说,数据质量非常重要。低质量遥操作数据会让模型学到不稳定的动作,尤其是在长程任务中,一个小错误就可能导致后面全部失败。
Ψ0 的遥操作系统使用了几类设备:
VR headset 用来捕捉操作者的头部和上半身姿态;
wrist trackers 用来捕捉手腕位置;
MANUS gloves 用来捕捉手指动作;
waist tracker 和 foot trackers 用来提供移动和转向信息。
这个系统的核心思想是:把上半身操作、手指灵巧控制和下半身移动控制分开处理。
操作者可以通过手套精细控制机器人手指,通过腕部追踪器控制手臂,通过腰部和脚部追踪器给出移动方向。底层 locomotion controller 再负责让机器人稳定地执行移动。
这样做的好处是,一个人就可以完成比较复杂的人形机器人遥操作,同时又能保证下半身比较稳定。
这对后续训练很重要,因为模型最终学到的能力,很大程度上取决于遥操作数据本身是否稳定、自然、可复现。
Ψ0 做了哪些真实世界任务?

Figure 6 展示了论文中的 8 个真实世界任务。
这些任务包括:
拿开盖子、打开水龙头、接水;
喷水、擦碗、折叠;
拿瓶子、转身、倒入杯子;
拿罐子、倒东西、推车;
推车、拿葡萄、放到盘子里;
拿玩具、转身、递给人;
拿午餐袋、下蹲放到桌子上;
拉出托盘、转身、把薯片罐扔进垃圾桶。
这些任务的共同特点是:它们都不是单步动作,而是包含多个子任务。
比如“拉出托盘、转身、把薯片罐扔进垃圾桶”这个任务,机器人需要先定位托盘,伸手拉出,再抓住目标物体,转身移动,最后完成投放。中间涉及视觉定位、手部操作、身体转向、移动和放置。
这类任务很考验模型的稳定性。因为只要前面某一步失败,后面就很难继续。
实验结果:Ψ0 明显超过多个 baseline

论文把 Ψ0 和多个近期代表性方法进行了比较,包括 π0.5、GR00T N1.6、InternVLA-M1、EgoVLA、H-RDT、Diffusion Policy 和 ACT。
这些 baseline 各有特点。
π0.5 和 GR00T N1.6 是更接近机器人基础模型方向的方法;EgoVLA 也利用了人类第一视角视频;Diffusion Policy 和 ACT 则是经典的模仿学习方法。
从 Figure 7 可以看到,Ψ0 在 8 个长程任务上的表现整体最稳定,成功率明显高于其他方法。论文中提到,Ψ0 的平均整体成功率比第二好的 GR00T N1.6 至少高出 40%。
这说明一个很关键的问题:
在人形机器人移动操作任务中,单纯扩大数据量并不一定最有效。更重要的是,数据应该怎样组织、怎样分阶段使用。
Ψ0 使用的人类视频数据和机器人数据并不算特别夸张。论文强调,它只用了约 800 小时人类第一视角视频和约 30 小时真实机器人数据,却取得了比一些更大规模方法更好的结果。
这也是这篇论文最核心的结论之一:
Scaling 不是盲目堆数据,而是要 scale the right data in the right way。
消融实验说明:每个模块都有作用

Table I 做的是消融实验,目的很简单:把 Ψ0 的几个关键设计一个个加上去,看性能会不会提升。
这个实验任务包含三个步骤:右手 pick-and-place、左手 pick-and-place、双臂搬运。最后一列 Overall Success Rate 表示整个长程任务是否完整成功。因为这是一个多阶段任务,所以前面某一步失败,整体任务就会失败。
读这张表时,可以重点看最右边的整体成功率。
第一行是最基础的版本:没有 EgoDex 预训练,没有 Humanoid Everyday 预训练,也没有 post-training,只使用普通的 naive DiT action head。结果整体成功率是 0/10。这说明,直接拿普通 VLM 加一个简单动作头,并不能解决人形机器人长程操作任务。
第二行把 naive DiT 换成了 MM-DiT action head,整体成功率从 0/10 提升到 2/10。这说明 MM-DiT 的动作生成结构确实更适合 VLA,因为它能更好地融合视觉语言特征和动作特征。
第三行加入 EgoDex 预训练,也就是用人类第一视角操作视频先训练 VLM。整体成功率进一步提升到 6/10。这一行很关键,它说明人类视频虽然不能直接当作机器人动作来执行,但可以帮助模型学到有用的视觉表征和操作先验。
第四行继续加入 HE,也就是 Humanoid Everyday 数据,整体成功率提升到 8/10。这里的 HE 属于人形机器人相关数据,可以帮助模型缩小人类视频和真实机器人之间的差距。
第五行再加入 post-training on HE,整体成功率达到 9/10。这说明,只让 VLM 学会看和理解还不够,action expert 还需要在人形机器人数据上进一步训练,才能更好地掌握机器人自己的关节控制。
最后一行加入 real-time chunking,整体成功率仍然是 9/10。从数字上看,它没有继续提高最终成功率,但论文强调它可以让动作切换更平滑,减少执行时的抖动和碰撞。因此它更像是提升真实部署稳定性的设计,而不一定直接体现在这个表格的成功率上。
所以,这张表可以总结成一句话:
EgoDex 预训练让模型学会“看懂人类操作”,Humanoid Everyday 和 post-training 让模型学会“用机器人身体执行”,MM-DiT 改善动作生成能力,而 real-time chunking 主要保证真实机器人执行时更平滑。
这也进一步说明,Ψ0 的效果不是来自某一个单独模块,而是来自整套训练流程的逐步叠加。
这篇论文和 GR00T、π0.5、EgoVLA 的区别在哪里?
看到这里,可能会有人问:这不也是一个人形机器人 VLA 吗?它和 GR00T、π0.5、EgoVLA 有什么区别?
可以这样理解。
GR00T 这类方法更强调通用人形机器人基础模型,通常会使用多来源、大规模、混合类型的数据。
π0 / π0.5 则代表了 flow-based VLA 在机器人控制中的路线,强调从视觉语言输入到动作输出的统一建模。
EgoVLA 这类方法关注如何从人类第一视角视频中学习机器人操作。
而 Ψ0 的特点是,它并没有简单选择其中某一条路线,而是做了一个比较明确的拆分:
人类第一视角视频用于预训练 VLM,让模型学任务语义和视觉操作先验;
真实人形机器人数据用于训练 action expert,让模型学机器人关节空间动作;
底层 RL controller 用于保证下半身稳定控制;
real-time chunking 用于解决真实部署中的动作连续性问题。
所以 Ψ0 的重点不只是“用了人类视频”,也不只是“用了 VLA”,而是提出了一套更适合人形机器人长程移动操作的系统化训练与部署方案。
这篇论文的意义:给人形机器人学习提供了一条更现实的路线
我觉得这篇论文最有启发的地方在于,它没有把问题简单归结为“数据还不够多”。
在大模型时代,我们很容易形成一种直觉:只要数据更多、模型更大,能力就会自然出现。
但机器人学习和语言模型不一样。
语言模型可以从互联网上获取海量文本,而机器人很难获得同样规模的真实交互数据。尤其是人形机器人,每一条高质量遥操作轨迹都很昂贵。
因此,人形机器人学习真正需要解决的是:
如何利用更便宜、更丰富的人类数据,同时又不忽视机器人身体本身的差异。
Ψ0 给出的答案是分阶段训练。
先用人类第一视角视频学习高层任务理解和操作先验,再用少量高质量机器人数据学习真实控制。这种方法比简单混合训练更清晰,也更符合数据本身的特点。
这对未来的具身智能研究很有参考价值。
尤其是在 humanoid foundation model 这个方向上,未来可能不会只有一种数据来源,而是会同时使用互联网视频、人类第一视角视频、仿真数据、真实机器人数据和遥操作数据。关键不只是“收集多少数据”,而是“每种数据到底应该教模型什么”。
当然,Ψ0 也还有局限
论文最后也提到了几个限制。
首先,由于算力和时间限制,作者还没有进一步扩大人类视频和真实机器人数据的规模。也就是说,如果继续扩大高质量人类视频和机器人数据,模型性能是否还能持续提升,还有待验证。
其次,硬件平台本身也有限制。论文使用的是 Unitree G1 人形机器人,硬件的负载能力会限制一些更复杂、更重物体的操作任务。
另外,从更开放的角度看,Ψ0 目前的实验仍然是在特定机器人、特定任务和特定环境中完成的。它是否能泛化到更多家庭环境、更多物体类别、更多机器人平台,还需要进一步测试。
但即便如此,这篇论文仍然很有价值。因为它展示了一条相对实际的路径:不完全依赖昂贵的大规模人形机器人数据,而是让人类视频和少量机器人数据各司其职。
总结
Ψ0 这篇论文想解决的是人形机器人中的一个核心问题:机器人怎样才能真正完成复杂的日常移动操作任务?
它的答案不是简单地堆更多机器人数据,而是提出了一套更清晰的训练范式:
先从高质量人类第一视角视频中学习任务语义、视觉表征和操作先验;
再用真实人形机器人数据训练 action expert,让模型学会机器人自己的关节控制;
最后结合底层 controller 和 real-time chunking,实现真实机器人上的平滑执行。
如果用一句话总结这篇论文,我会说:
Ψ0 的关键不是让人形机器人“模仿人”,而是让它先从人类经验中学会理解操作,再用自己的身体学会真正执行操作。
这也是未来人形机器人 foundation model 很可能会继续探索的方向:让大规模人类经验和少量高质量机器人数据更好地结合起来,让机器人逐渐从“会动”走向真正“会干活”。