你让机器人把衣服叠好。它看了一眼桌面,花一秒多想出下一步;但等它真正伸手时,衣服已经被上一轮动作推到了别处。决定本身或许没错,只是过期了。
这正是大型机器人模型落到本体设备时的麻烦。Jetson-PI想做的,不只是让模型算得更快,而是让它在计算期间预估环境会变成什么样,再按那个未来状态安排动作。论文将目标谨慎地写成“Towards Onboard Real-Time”:向本体实时控制迈进,而不是宣称已经满足严格的硬实时约束。本文数字均来自作者论文及同机构代码说明,尚无独立信源交叉验证。
机器人等不起大模型
Vision-Language-Action(VLA)模型同时读取摄像头画面和文字指令,再直接输出机器人动作,相当于把“看懂、听懂、动手”接进一个模型。常见结构包括两部分:VLM(视觉语言模型)负责理解画面与指令,action expert(动作专家)负责生成一段连续动作。
问题是,VLA通常很大。本体计算又要求模型直接运行在机器人随身携带的计算机上,而不是把数据送往远端服务器。这样更自主,却也要面对更紧的功耗、显存和算力预算。
论文给出的例子是:一套VLA在Jetson Orin上完成一次推理约需1.4秒,控制频率约为0.7 Hz。控制频率就是机器人每秒更新动作的次数。频率太低,机器人不仅反应慢,不同动作段之间还可能停顿。
异步推理可以遮住一部分等待时间:机器人执行上一段动作时,模型同时计算下一段,像后厨在上一道菜端出去时准备下一道。但这会带来两个新问题。第一,模型依据的是旧画面,动作执行时环境已经改变。第二,即使机器人没有停下,遇到变化后仍要等下一次推理完成,才能真正作出反应。
不预测旧画面的答案,而是预测执行时的世界
Jetson-PI的关键方法叫Foresight-Aligned Asynchronous Correction,可理解为“与未来对齐的异步修正”。它把已经确定、正在执行的动作也纳入预测,估计这些动作完成后环境会是什么状态,再让动作专家从那个未来时刻继续规划。
这里预测的不是一张完整的未来图像。那样太慢,反而会加重延迟。系统只预测VLM最后一层经过压缩的环境表征——也就是模型内部对场景的浓缩理解。负责这件事的future correction module(未来修正模块)有4000万参数,约占整个VLA的1%。作者把它视为一种轻量级“世界模型”:它不试图完整模拟世界,只负责回答一个部署问题——等这轮计算结束,机器人面对的环境大概已经走到了哪里。
训练分两步。第一步先用真实的未来表征,教动作专家学会根据未来信息生成动作。第二步再训练修正模块,让它根据当前表征和已经提交的动作,预测未来表征及其可信度。训练时会随机改变需要向前看的动作步数,因此它可以适配不同设备、功耗模式和推理延迟。
这比只预测机器人自身姿态多看了一层。机械臂移动到哪里,并不能完整说明衣服、物块或抽屉发生了什么;Jetson-PI试图把动作造成的环境变化也压进预测结果。
有把握就快走,没把握再看一眼
如果始终依赖预测出来的未来,误差会不断累积。Jetson-PI因此让修正模块兼任调度员。
当预测置信度较高时,系统暂时跳过耗时的VLM,只调用动作专家,快速生成下一段动作。置信度降低时,它重新调用VLM观察当前环境,更新内部信息。论文展示的一个执行案例中,抓取和放置等难预测环节会触发重新观察;变化较平稳时,则更多依赖未来预测。
这个安排相当于边走边判断:路况简单时不必每一步都停下来重新看地图,到了路口或视线不清处再确认。它降低反应时间,但没有假定预测可以无限外推。
作者也解释了为何不直接让VLM和动作专家并行运行。在RTX 4090等高端GPU上,两部分可能分别占用不同类型的资源;但Jetson一类本体设备的内存带宽更紧,两者同时运行会争抢共享带宽,结果可能一起变慢。Jetson-PI选择降低VLM调用频率,而不是简单堆并行。
软件层也得把零碎等待抠掉
算法之外,作者基于llama.cpp改造了边缘端推理引擎,并做了三项系统优化。
其一是CUDA graph reuse,即复用第一次推理建立的计算图,省去反复搭建执行流程的时间。为保持输入长度固定,文字指令会被补齐到统一长度。其二是GPU-resident intermediate buffering,让视觉编码、语言模型和动作专家之间的中间结果留在GPU内,避免来回写入CPU内存。其三是flow unrolling,把动作生成时多轮重复的去噪计算展开并合并,减少计算图被反复调用的开销。
在作者的Jetson Orin测试中,基础方案一次推理总计1420.8毫秒,反应时间同为1420.8毫秒,控制频率为0.70 Hz。加入调度和三项系统优化后,总推理时间降至412.9毫秒,反应时间降至165.1毫秒,控制频率升至6.06 Hz。作者据此报告,相比naive PyTorch和vla.cpp,控制频率分别提高8.66倍和5.41倍。
它为什么值得关注?
Jetson-PI触及的不是单一模型跑分,而是机器人基础模型走出实验室时的一组连锁瓶颈:计算慢会造成观察过期;简单异步又会放大状态错位;盲目并行还可能撞上本体设备的带宽上限。它给出的答案,是把未来状态预测、按置信度调度和底层执行优化放到同一条控制链里。
模拟实验也支持这一方向。在LIBERO机器人操作基准上,作者报告Jetson-PI跨四个子数据集和不同延迟设置的平均成功率为92.2%,VLASH为81.3%,RTC为86.4%。论文将其表述为比VLASH高14.8%,但没有明确这是相对提升还是14.8个百分点。
真实机器人测试使用PrimeBot Research Institute的X2-W机器人、三台224×224相机和Jetson Orin,运行XR-1模型。任务涵盖拿取衣物、折叠和收纳,动作以15 Hz执行。每项测试各做10次:Jetson-PI在拿取、折叠、放置上分别成功10、8、9次;Jetson Orin上的朴素异步方案分别为6、0、5次;RTX 4090基线为10、7、10次。样本不大,但至少说明它不只停留在模拟环境。
局限与未知
- 8.66倍、5.41倍及LIBERO提升均为作者自报结果。论文没有给出误差范围,也不足以证明这些增益能普遍迁移到其他模型、机器人和任务。
- “实时”仍需限定理解。论文没有报告端到端最坏时延,也未证明满足严格的硬实时约束;更准确的说法是,它显著提高了本体设备上的控制频率和反应速度。
- 作者称异步算法与基于llama.cpp的推理引擎已分别发布在
PKU-SEC-Lab/Jetson-PI和PKU-SEC-Lab/Jetson-PI-Edge,但现有材料未独立核验仓库可访问性、许可证、代码完整度和结果可复现性。