给 VLA 多塞几帧,不等于它有记忆:TemporalFlow-VLA 用物理监督教两个 Query 记住“刚刚发生了什么”
VLA 做长程任务时,一个很隐蔽的问题是:模型明明看过历史帧,却未必真的理解历史的时间顺序。TemporalFlow-VLA 先做了一个很有启发性的诊断实验:普通 multi-frame baseline 在移除历史后,action loss 会明显变差;但把历史帧顺序打乱,loss 几乎不变。也就是说,模型可能确实在利用历史,却主要把它当成“额外视觉上下文”,而不是一条有明确先后关系的 execution trace。作者因此没有继续简单堆更多历史帧,而是利用 robot state、URDF 和 camera calibration,在训练期构造 robot-surface temporal flow,再用两个与上一 action chunk 对齐的 temporal query——Q8 和 Q15——压缩最近执行过程。更关键的是:Action Expert 被禁止直接访问历史 image patches。历史如果想影响动作,就必须先经过这两个受物理监督的 Query。这篇论文真正想回答的不是“VLA 有没有 memory”,而是:历史进入模型以后,能不能被压缩成一个真正表示“刚刚发生了什么”的、按时间有序的控制接口?
TPAMIs 证据卡
-
论文状态:arXiv v1,2026 年 8 月 27 日首次提交
-
论文题目:TemporalFlow-VLA: Learning Physically Grounded Execution History for Long-Horizon Robot Manipulation
-
任务类型:History-Aware / Long-Horizon VLA Manipulation
-
Base Policy:π₀.₅-style VLA
-
核心机制:Robot-Surface Temporal Flow + Q8 / Q15
-
监督来源:Robot State + URDF + Calibrated Camera;无需人工 flow 标注
-
历史接口:Action Expert 不能直接读取历史 image patches,只能经 Q8 / Q15 获取历史
-
部署边界:Kinematic Renderer / Flow Decoder 仅训练期使用
-
LIBERO:97.63 ± 0.26% Avg / 96.60 ± 0.87% Long
-
RoboTwin:85.5% Clean / 84.2% Randomized
-
RoboTwin 训练:12 tasks;每任务 50 clean demos + 500 randomized demos;60k steps
-
RoboTwin 评测:每 task / condition 100 rollouts
-
Randomized 内部消融:π₀.₅ 72.3 → Multi-frame 81.5 → 2Q w/o Flow 83.6 → Full 84.2
-
History Intervention:Remove / Shuffle 均提高 offline action loss;6 个任务中 5 个 Shuffle 更差
-
真机平台:AgiBot A3
-
真机任务:Three-Cup Stacking / Two-Bottle Packing
-
真机数据:280 demonstrations / task
-
真机评测:45 trials / method / task;两方法、两任务主比较共 180 physical trials
-
真机结果:57.8→77.8% / 86.7→97.8%
-
效率:RTX 4090 server-side policy sampling 68.10→62.78 ms;15 replans 累计减少 7.8%
-
训练代价:Temporal Module + Flow Decoder 约增加 20% wall-clock training time
-
代码状态:截至 2026 年 8 月 30 日未核验到官方仓库
-
数据状态:benchmark data 可用;本文生成的 flow labels 不需要人工标注,但未核验独立发布
-
主要局限:固定 temporal scale、robot-surface-only supervision、calibration dependence、外部 baseline 非统一训练
-
复现难度:中高
-
证据等级:B
B 级不是论文质量排名,而是当前论文对主要结论提供的证据强度判断。TemporalFlow-VLA 同时覆盖仿真 benchmark、内部消融、history intervention、效率分析和真机试验;最重要的“历史顺序需要被结构化利用”有多层证据支撑。主要扣分来自真机任务只有两个、固定 temporal scale 尚未充分探索、外部 baseline 并非全部统一训练,以及代码/权重尚未核验开放。

图 1|RoboTwin 12 个任务按 H1/H2/H3 分组的表现、模型结构示意和 robot-surface temporal-flow 可视化。来源:TemporalFlow-VLA 论文与项目资料;图片仅作裁剪与压缩,未修改原图内容。
这篇论文真正想解决什么?
如果只看一个静态画面,很多机器人状态其实是不可辨识的。
例如机械臂停在杯子旁边。它可能还没抓,也可能刚抓失败,或者已经抓过、正在回来重新定位。RGB 看起来接近,但正确动作完全不同。
短任务里,模型偶尔判断错 phase,还可能靠下一次 replanning 修回来。长程任务里,一次 phase confusion 很容易变成:
重复抓取 ↓ 重复放置 ↓ 跳过步骤 ↓ 后续状态持续错位
所以 TemporalFlow-VLA 真正关心的不是“给 VLA 加 memory”这么泛,而是:
VLA 的历史表示,能不能明确包含最近一段执行在物理世界中造成的变化?
论文最关键的一张图,其实不是主结果
作者先训练了一个普通 multi-frame baseline,然后只改变 history。
Remove History
直接删掉历史。
结果:
offline action flow-matching loss 大约上升 4.6%。
说明:
历史本身确实有用。
Shuffle History
保留相同历史帧,但打乱先后顺序。
结果:
loss 几乎不变。

图 2|baseline 在 remove history 和 shuffle history 下的 action flow-matching loss 诊断。来源:TemporalFlow-VLA 论文与项目资料;图片仅作裁剪与压缩,未修改原图内容。
真正的问题不是历史没用,而是:
它拿到的信息未必具有明确的 temporal order。
也就是说,模型可能知道“之前出现过这些画面”,却没有可靠区分 A→B 和 B→A。
所以这篇论文最有价值的出发点可以压成一句:
History 不是图片集合,而应该是 execution evolution。
作者改变了哪三件事?
1. 不让模型自己猜“运动”,训练时直接给一个物理目标
TemporalFlow-VLA 利用机器人系统已有的 joint state、URDF、camera intrinsics / extrinsics,离线计算:
Robot-Surface Temporal Flow
具体可以理解成:
Source Frame ↓ 找到当前可见的 Robot Surface Points ↓ 根据 Source / Target Joint State 用 Forward Kinematics 推到目标时刻 ↓ 投影回 Camera Plane ↓ 得到 Robot-Surface Temporal Flow
它不是全场景 optical flow,而是描述:
机器人自身表面,在最近一段执行中如何运动。
这个监督有三个特点:
-
确定性:不需要额外神经网络猜 motion;
-
与控制直接对齐:明确描述执行器刚刚怎么动;
-
只在训练期使用:部署时不运行 renderer、不计算 flow label、不运行 auxiliary flow decoder。
所以:
几何信息只负责在训练期教会 memory 应该记什么。

图 3|训练期由 robot state / geometry / camera 生成 temporal-flow 监督,历史 RGB 被 temporal module 压缩成 query,再通过 masked attention 提供给 Action Expert。来源:TemporalFlow-VLA 论文与项目资料;图片仅作裁剪与压缩,未修改原图内容。
2. 不保存一串 Memory Token,只用两个和 Action Chunk 对齐的 Query
基础 action chunk 长度是 16 steps。
作者取:
-
t−15:近似上一 chunk 的起点; -
t−8:近似上一 chunk 的中点; -
t:当前 replanning 时刻。
然后定义两个 temporal query:
Q8
对应:
t−8 → t
表示最近半个 action chunk。
Q15
对应:
t−15 → t
表示上一整个 action chunk。
它们不是两个平行 memory slot。
Q8 形成 recent-motion summary;Q15 还能进一步读取 Q8,因此结构更接近:
Q8 ↓ Q15
短历史先压缩,再让长历史建立在短历史之上。
3. 最关键的一步:Action Expert 不能直接偷看历史帧
如果 Action Expert 还能直接看 t−15 / t−8 raw image patches,那么模型可能让 Q8/Q15 专门做 flow reconstruction,同时动作预测仍从 raw history 找 shortcut。
TemporalFlow-VLA 因此直接禁止:
Action Expert 直接访问 historical visual patches。
它只能通过:
Historical RGB ↓ Q8 / Q15 ↓ Action Expert
获取历史。

图 4|directed masked-attention pattern。Action tokens 不能直接读取历史图像,只能经 Q8/Q15 获取历史。来源:TemporalFlow-VLA 论文与项目资料;图片仅作裁剪与压缩,未修改原图内容。
这不是普通 auxiliary loss,而是同时控制了:
Information Path
历史如果想影响动作,就必须先被压缩成受物理监督的 execution representation。
实验真正支持了什么?
第一层:LIBERO 已经接近饱和,Long 才是关键
TemporalFlow-VLA 在 LIBERO 四个 suite:
| Suite | Success Rate |
|---|---|
| Spatial | 97.60 ± 0.20 |
| Object | 99.40 ± 0.20 |
| Goal | 96.93 ± 0.61 |
| Long | 96.60 ± 0.87 |
| Average | 97.63 ± 0.26 |
真正更符合论文动机的是 LIBERO Long。
论文表中:
π₀.₅ 92.4 GR00T N1.7 94.5 CronusVLA 94.0 HAMLET 92.2 MotionVLA 91.2 TemporalFlow-VLA 96.60
相对表中最强 prior mean:
94.5 → 96.6,+2.1 个百分点。
方向和论文假设一致:
越需要跨多个阶段维持 execution state,历史表示越有价值。
第二层:RoboTwin 最重要的不是平均涨,而是 Horizon 越长优势越明显
作者选 12 个 RoboTwin 2.0 任务,并根据 execution step count 分成 H1/H2/H3。
训练时:
-
每任务 50 clean demonstrations;
-
每任务 500 randomized demonstrations;
-
60k steps。
评测时:
每个 task / condition 100 rollouts。
最终:
Clean 85.5% Randomized 84.2%
但更值得看的是 Randomized 按 horizon 分组:
H1 84.3 H2 80.8 H3 87.5
论文进一步指出,相对各组 runner-up:
H2 约 +5.5 pp H3 约 +14.5 pp
而 H1 反而不是第一。
这组 pattern 比 overall 84.2% 更支持论文假设:
短任务不一定占优,长任务优势更大。
需要保留边界:RoboTwin 主表里的 published baselines 并不是全部在统一训练预算下重训,所以更安全的表述是:
TemporalFlow-VLA 在论文列出的 published baseline 结果中,长 horizon 组表现尤其突出。
真正隔离方法贡献的,是内部消融
RoboTwin Randomized Avg:
| 方法 | Avg |
|---|---|
| π₀.₅ | 72.3 |
| Multi-frame | 81.5 |
| 2Q w/o Flow | 83.6 |
| Q8 only | 84.0 |
| Q15 only | 83.0 |
| Full | 84.2 |
这组结果应拆成三层。
第一层:History 本身确实重要
π₀.₅ 72.3 Multi-frame 81.5
直接多帧已经:
+9.2 个百分点
所以不能写成:
“以前 VLA 完全不会用历史。”
历史本身已经很有价值。
第二层:History 的结构比 History 的数量更重要
Multi-frame 81.5 2Q w/o Flow 83.6
没有 flow supervision,仅仅把历史强制压进两个 Query,就继续:
+2.1 个百分点
这说明:
结构化 history bottleneck 本身就改善了历史利用。
第三层:Physical Flow Supervision 再进一步
2Q w/o Flow 83.6 Full 84.2
Randomized Avg 再提升:
+0.6 个百分点
因此最准确的因果分解不是:
“Flow 是全部提升来源。”
而是:
History 有用 ↓ Structured Query 更好 ↓ Physical Supervision 进一步校准
模型真的开始在乎“先后顺序”了吗?
作者又对训练好的 TemporalFlow-VLA 做 history intervention。
在 6 个 RoboTwin task 上固定 history window 和 diffusion noise,然后分别:
-
Remove History;
-
Shuffle
t−15 / t−8。
结果:
两种操作都会让 action flow-matching loss 变差。
而且:
6 个任务中有 5 个,Shuffle 比 Remove 更糟。

图 5|remove / shuffle history 的 offline action-loss 诊断,纵轴为 log scale。来源:TemporalFlow-VLA 论文与项目资料;图片仅作裁剪与压缩,未修改原图内容。
这和最开始的 baseline 形成一个完整对照:
普通 Multi-frame Baseline
有历史 ↓ 但对顺序基本不敏感
TemporalFlow-VLA
依赖历史 + 开始依赖正确时间顺序
但必须守住证据边界:
Figure 6 测的是 offline action flow-matching loss,不是在线机器人成功率。
所以不能写:
“打乱历史以后机器人成功率大幅下降。”
论文没有这么测。
两个 Query 都需要吗?
Randomized Avg:
Q8 only 84.0 Q15 only 83.0 Q8 + Q15 84.2
Q8 单独已经很强。
这说明:
对当前动作预测最有价值的 history,可能主要集中在最近半个 action chunk。
但完整 two-scale 仍然最好。
这支持 Q15 提供了 Q8 没有覆盖的更长历史上下文。
不过差距并不大,因此也暴露出一个开放问题:
历史究竟应该看多远?
当前固定 t−8 / t−15 并没有系统回答:
-
长任务是否应该看得更远;
-
快速接触任务是否只需要最近几步;
-
history spacing 是否应该动态变化;
-
不同 action chunk length 是否需要不同 temporal scale。
所以 TemporalFlow-VLA 更像是证明:
“给 history token 一个物理目标”是有效的。
但还没有解决:
“最优 temporal horizon 是什么”。
部署时真的不用再计算 Flow 吗?
对。
训练时:
Robot State + URDF + Camera Calibration ↓ Robot-Surface Flow Target ↓ Supervise Q8 / Q15
部署时:
RGB History ↓ Q8 / Q15 ↓ Action
Kinematic Renderer 和 Flow Reconstruction Head 都不运行。
所以:
Flow 只当老师,不当部署模块。
这相当于把训练期物理监督蒸馏进 latent temporal representation。
但是多两帧历史,推理不是还是更慢吗?
作者做了 Asynchronous Feature Cache。
当前 16-step action chunk 正在执行时,后台提前把历史 frame encode 好放入 timestamped ring buffer。
下一次 replanning:
t−15 feature → cache t−8 feature → cache t → 只同步 encode 当前帧

图 6|LIBERO Long 上有/无 cache 的 server-side sampling latency。来源:TemporalFlow-VLA 论文与项目资料;图片仅作裁剪与压缩,未修改原图内容。
RTX 4090 上:
No Cache 68.10 ms Cache 62.78 ms
每次减少:
5.32 ms
15 次 replan 累计:
1.021 s → 0.942 s
论文口径:
7.8% reduction
这可以支持:
异步 cache 能把重复历史视觉编码移出 replanning critical path。
但不能写成:
“TemporalFlow 完全没有额外推理成本。”
因为 temporal query 仍然在 joint transformer 中计算,而且这个指标不是完整端到端系统 latency,也不包含 RPC、simulator stepping 或 video writing。
真机:这篇论文最有分量的一块证据
TemporalFlow-VLA 在 AgiBot A3 上做两个三阶段任务:
-
Three-Cup Stacking
-
Two-Bottle Packing
每个任务:
-
280 demonstrations;
-
训练 60k steps;
-
3 轮评测;
-
每轮 15 trials;
-
每个 method-task 合计 45 trials。
两方法、两任务主比较总计:
180 次 physical trials。

图 7|AgiBot A3 上的 Three-Cup Stacking 和 Two-Bottle Packing,以及三轮 15-trial 结果。来源:TemporalFlow-VLA 论文与项目资料;图片仅作裁剪与压缩,未修改原图内容。
Three-Cup Stacking
Baseline 57.8% TemporalFlow-VLA 77.8%
绝对提升:
+20.0 个百分点
Two-Bottle Packing
Baseline 86.7% TemporalFlow-VLA 97.8%
绝对提升:
+11.1 个百分点
Three-Cup 本身非常符合论文动机:机器人必须持续判断哪个杯子已经放了、哪个还没放、当前处于第几次 placement,以及上一阶段是否成功。
所以这组结果比单步 pick-and-place 更能支持:
execution history
这个命题。
但仍然不能过度外推。
只有两个真机任务,因此最准确的结论是:
在两个 AgiBot A3 三阶段任务上,TemporalFlow-VLA 显著提高了成功率。
代价与边界
1. 训练成本增加约 20%
Temporal Module + Auxiliary Flow Decoder 相比 baseline:
wall-clock training time 增加约 20%。
所以这不是完全免费的 auxiliary supervision。
2. Flow Label 依赖 Robot Geometry 和 Camera Calibration
训练 label 依赖:
-
robot state;
-
URDF;
-
camera intrinsics;
-
camera extrinsics。
如果 camera extrinsic 漂移、joint state 有 bias、robot geometry 不精确,或者 nominal FK 偏离真实机器人,那么:
所谓“物理 ground truth”本身也会带噪声。
当前论文没有系统研究 calibration-noise robustness。
3. Robot Surface 不是整个 World
真正决定长程状态的变化还包括:
-
杯子有没有滑动;
-
抓取是否成功;
-
盖子是否打开;
-
物体是否掉落;
-
接触是否稳定。
这些属于 object / world state change。
TemporalFlow 的 auxiliary target没有直接监督这些变化。
所以更准确的理解是:
Robot-Surface Flow 是一个可靠 physical anchor,而不是完整 world-state representation。
未来自然可以扩展到:
Robot Motion + Object Interaction Motion + Contact State
4. Flow 并不是全部提升来源
Randomized:
Multi-frame 81.5 2Q w/o Flow 83.6 Full 84.2
从 81.5→84.2 的 +2.7 pp 中,相当一部分来自:
把历史压进两个受限 Query
而不是 flow supervision 本身。
所以最准确的贡献不是:
“物理 Flow 让 VLA 突然拥有记忆。”
而是:
TemporalFlow-VLA 把结构化 history bottleneck 和 physically grounded supervision 结合起来,使 latent execution history 更可控、更有时间语义。
放回研究地图:VLA 到底应该怎么记历史?
| 路线 | 典型思路 | 历史怎么进模型 | 主要问题 |
|---|---|---|---|
| 直接多帧 | Multi-frame VLA | 拼更多 image tokens | 未必理解顺序 |
| Memory / Retrieval | 检索历史片段 / KV | 选择历史再读入 | 重点在“取什么” |
| 显式 Motion | trajectory / flow / motion prompt | 显式运动信号 | 部署可能需要额外 motion pipeline |
| Latent Memory | memory / query tokens | 隐式压缩历史 | latent 到底学了什么不够明确 |
| TemporalFlow-VLA | physically supervised latent history | Q8 / Q15 | 给 latent history 指定可观测物理目标 |
TemporalFlow-VLA 真正把问题往前推的一步是:
过去大家经常问:
“历史放在哪里?”
它开始问:
“历史 token 应该被训练成什么?”
Memory bank 可以越来越大,frame 可以越来越多,context window 也可以越来越长。
但如果模型没有被迫形成 action-usable temporal semantics,更多历史很可能只是更多 visual tokens。
TemporalFlow-VLA 给出的答案之一是:
让 history latent 承担一个和最近执行直接对应的物理预测任务。
TPAMIs 结论
TemporalFlow-VLA 不是一个“多塞两帧历史就涨点”的工作。
它最有价值的地方,是先指出:
VLA 接收历史,不等于 VLA 理解历史。
普通 multi-frame baseline 在历史被打乱以后 action loss 几乎不变,说明模型可能主要把历史当作额外视觉上下文,而不是有序 execution trace。
作者随后用 robot state、URDF 和 camera calibration 离线构造 robot-surface temporal flow,把两个与 action chunk 对齐的 Q8 / Q15 绑定到明确 temporal scale,再通过 attention bottleneck 禁止 Action Expert 绕过 Query 直接读取历史图像。
实验基本支持这条机制链:
-
History 本身有价值:π₀.₅ 72.3 → Multi-frame 81.5;
-
Structured Query Bottleneck 继续有效:81.5 → 83.6;
-
Physical Flow Supervision 再进一步:83.6 → 84.2;
-
训练后的模型开始依赖历史顺序:Remove / Shuffle 都让 offline action loss 变差,6 个任务中 5 个 Shuffle 更差;
-
优势更集中在 Long Horizon:RoboTwin H2 / H3 相对 listed runner-up 优势扩大,而 H1 并不领先;
-
真机也出现一致趋势:Three-Cup Stacking 57.8→77.8%,Two-Bottle Packing 86.7→97.8%;
-
Flow / Renderer 只在训练期存在,部署时只留下 latent temporal queries;
-
Asynchronous Cache 还能把重复历史视觉编码移出 replanning critical path。
但它仍然没有解决:
-
Q8 / Q15 是否就是最优 temporal horizon;
-
不同任务是否应该动态决定“回看多远”;
-
robot-surface flow 是否应该扩展到 object interaction / contact;
-
calibration noise 对 label 有多敏感;
-
跨 embodiment 是否能共享 execution-history representation;
-
两个真机任务是否足以代表更广泛的 long-horizon manipulation。
所以如果把这篇论文压成一句研究判断:
长程 VLA 需要的可能不是更多“过去的图像”,而是一个被训练成真正能表示“刚刚发生了什么”的、按时间有序的执行历史接口。
这比:
“再加一个 memory module。”
更值得关注。
论文与资源
-
论文:TemporalFlow-VLA: Learning Physically Grounded Execution History for Long-Horizon Robot Manipulation
-
arXiv:2608.26821
-
当前版本:v1
-
首次提交:2026 年 8 月 27 日
-
HTML:https://arxiv.org/html/2608.26821v1
-
PDF:https://arxiv.org/pdf/2608.26821
-
代码状态:截至 2026 年 8 月 30 日未核验到官方仓库
研究主线:Long-Horizon VLA、Execution History、Temporal Representation、Physically Grounded Memory 与 Robot Motion
建议继续阅读:
-
TemporalFlow-VLA 只显式监督 robot-surface motion,但长程任务真正需要记住的还包括 object state、contact outcome 和 task progress;下一步是否应该把 robot flow 扩展成 robot–object interaction flow?
-
Q8/Q15 固定对应最近半个和完整 16-step action chunk;不同任务的有效历史尺度可能完全不同,未来能否让 VLA 自己学习“当前应该回看多远”?
-
如果 execution history 已经可以被压缩成少量 physically supervised latent queries,这种表示能否进一步跨 embodiment 共享,还是每换一套机器人几何和相机配置都需要重新定义 temporal supervision?
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)