CarryOn:面向个性化与可靠机器人辅助的双循环框架
CarryOn: A Dual-Loop Harness for Personalized and Reliable Robot Assistance
作者提出CarryOn,把π0.5-SFT在LIBERO-Safety上的违规率从52.6%降到6.1%。
- 通用VLA能执行开放操作,但日常辅助还要按会变的用户偏好与场景决定子任务,并在危险接触和物理失败时保护或修复执行。
- CarryOn把冻结VLA放在双环中:规划环用可修订的用户与场景记忆分派子任务;执行环按预测距离过滤动作,失败后用可版本化的控制恢复技能,离线反思只改恢复、不改VLA。
- 真机三明治记忆分派24/24,避障无接触完成20/20。LIBERO-Safety上π0.5-SFT加shield的违规率6.1%、VF 25.6%。200个12cm扰动episode上,R2累计完成80.0%。
- 作者在Conclusion将更长期适应、恢复经验跨任务迁移,以及防护与任务完成的平衡列为后续工作。实验含LIBERO-Safety、LIBERO扰动与恢复、RoboLab和Franka真机;论文未报告分派判定的人工一致性。
- 被测模型
- π0.5π0.5-SFTOpenVLA-OFTVLActQwen3-VL-4B-OFT
- 基准
- LIBERO-SafetyLIBERO-ObjectLIBERO-RecoveryRoboLab
- 指标
- VFViol.dispatch accuracycumulative completionAPI tokens
论文提出 CarryOn,一种在冻结的 VLA 策略之上叠加持久个性化规划与受监督执行恢复的双循环框架,用于提升机器人辅助的安全性与适应性。规划循环维护持续更新的用户级与场景级上下文,并随交互修正,以支持个性化的子任务分解;执行循环在策略 rollout 过程中主动监督,屏蔽预测到的危险接触,一旦失败就调用可复用的控制类恢复技能并通过对既往失败的反思加以改进。作者称,在真实机器人和仿真中,该方法把已安全微调的 VLA 的违规率从 52.6% 降到 6.1%,复用精炼后的技能时恢复成功率从 13% 提升到 80%。
深度解读
这篇论文试图解决什么问题?
日常辅助缺的是可修订的用户与场景记忆,以及执行前防护和失败后恢复。
日常辅助要在偏好与场景变化时决定做什么,并在危险接触或物理失败后保护或修复执行。
- 出现场景:作者认为,通用VLA已能跨任务执行操作指令,但日常辅助还要知道当前用户与环境里该做什么,以及物理条件变化时如何做完。图1的例子是用户只说“Serve me food”,系统需沿用早先素食偏好,并在障碍或抓取失败时继续把胡萝卜送到碗里。
- 现有不足:作者称,偏好学习或个人物品识别能提供上下文,但真实上下文会变,存储记忆需要修订。分层VLA和并发的embodied harness主要针对分布外表现,没有把“对当前用户是否合适”与执行期的危险接触干预、失败修复连在一起。
- 作者的设定:同一请求可以对应不同动作;观察推翻记忆时计划要改写;危险接触在执行前处理,已经发生的失败要修复,并把失败经验留到以后的恢复。
- 本文做法:作者提出CarryOn,一个包在冻结VLA外的双环harness。规划环维护可修订的用户级与场景级记忆并分派子任务;执行环过滤预测到危险接触的动作,失败后调用可复用、可离线反思修订的控制恢复技能。
有哪些相关研究?
相关工作分个性化记忆、执行harness、失败恢复和几何防护四组。
持久个性化上下文
- TidyBot(Wu等,2023)学习可泛化到后续请求的摆放偏好。
- Bring My Cup(Lee等,2025)用参考图像记忆和视觉提示做个性化。
- 具身个性化工作研究跨交互记忆;语言智能体(MemGPT;Park等,2023)检索并整合经验供后续决策。作者称与这些工作不同,CarryOn把持久偏好和可修订的场景知识连在一起:用户记忆约束任务选择,场景记忆指导后续动作。
策略执行的harness
- Code as Policies(Liang等,2023)在感知与控制API上生成程序。
- 语言模型规划器通过可供性、反馈和多模态观察落地指令;不确定性感知规划器决定何时行动或索取信息。
- 分层VLA把指令接到视觉运动执行。RoboHarness(Huang等,2026)用记忆编排异构策略;Harness VLA(Zhang等,2026)把冻结的接触丰富原语与解析操作、记忆引导重试结合。作者对比说,CarryOn仍由VLA执行操作,并把持久个性化与动作过滤、物理修复耦合,两环共享当前任务。
失败后的恢复与适应
- 视觉语言模型提供语义失败反馈。FailSafe(Lin等,2025)从生成的失败恢复案例训练失败推理与恢复;RecoveryChaining(Vats等,2025)学习把控制交还名义控制器的局部策略;Zetta(Ding等,2026)在冻结策略外演化运行时critic和恢复技能。
- 语言智能体通过记忆和可复用技能积累经验(Reflexion、ExpeL、Voyager)。
- 作者称本文把修订限制在基于控制的恢复:离线反思修改所支持的参数和策略,并保留相继版本;VLA与几何shield保持固定。
操作中的几何防护
- 潜空间安全过滤器在学到的世界模型里做可达性分析;AnySafe把这类过滤器适配到参数化约束。
- VLSA(Hu等,2025)增加屏障函数安全层;Code-as-Monitor(Zhou等,2025)生成可执行约束以监测失败。
- 作者称本文的shield预测策略动作的空间响应,并按夹爪或携带物与任务相关障碍的最小距离约束过滤,在接触前检查,且不做在线学习。
基线与基准
- 安全比较在LIBERO-Safety上进行,对照包括原版与安全微调的π0.5、adapted VLSA,并扩展到OpenVLA-OFT与VLAct。
- 恢复比较在LIBERO-Object扰动和LIBERO-Recovery上进行,对照包括Qwen3-VL-OFT、CaP-X与Harness VLA。
- 规划评测包括真机分派任务和RoboLab的端点选择与记忆修订。
作者把本文放在个性化决策与物理执行反馈的连接上,而不是只提高VLA在分布外场景的任务表现。
论文如何解决这个问题?
CarryOn用规划记忆分派子任务,用几何过滤和可修订恢复包住冻结VLA。
CarryOn把冻结VLA放在双环运行时里:规划环决定对当前用户和场景做什么,执行环在接触前过滤动作、失败后用控制技能修复。两环共享任务目标,视觉反馈决定推进计划还是进入恢复。经验分两种:供以后规划的上下文,以及供技能库逐版修订的恢复经验(Figure 2)。
规划环:持久且可修订的上下文
- 输入与输出:给定请求c和可选参考图像,规划器结合用户记忆Mu、场景记忆Ms和可用技能描述,产出子任务。每个子任务含指令ℓi、提供技能的端点,以及可选的前序依赖。端点包括操作工位和信息采集工具,因此计划可以先观察或查询外部信息再决定操作。
- 两类记忆:用户档案存偏好、习惯和用户物体的参考图像,每次请求注入规划上下文;规划器被指示只使用请求用户的档案。场景记忆按地点存物体清单和描述,用于选择端点和判断操作前是否需要观察。
- 修订:对话中,规划器被指示保存跨会话仍成立的偏好,一次性要求留在当前对话;计划结束后,后台summarizer按同一标准补写尚未记录的用户事实。用户修改或撤回偏好时,对应条目被替换或删除。观察揭示目标,或发现记忆位置为空、过时时,必须做场景更新;规划器在下一计划中写入update_scene。若漏掉该操作,计划校验器把计划退回修订。附录B给出存储格式和修订示例,附录F给出完整提示词。
主动几何防护
- 位置:shield位于策略和控制器之间。对每个动作块,它用当前RGB-D、目标与目的地描述构造障碍集,预测夹爪和携带物运动,再过滤动作。输出是可执行前缀;若第一步被挡,则短退后再用新观察重估。
- 障碍:抓取和放置必须接触目标与目的地,因此不把所有场景点都当障碍。VLM从指令推断目标与目的地描述,场景构建器用文本提示分割关联掩码,并把掩码深度投到三维。接触规则把允许的目标、支撑面和目的地几何排除出相应物体的障碍集;未分配几何仍是障碍。附录C给出安全评测中的接地与接触规则。
- 预测与过滤:仅有动作增量不足以描述实际位移。对接下来H个动作,shield用已执行运动历史和短时域响应模型预测末端位姿。平移用临界阻尼近似,p̈=ωn2(pgoal−p)−2ωnṗ,其中p为末端位置,pgoal由步初位置加上缩放后的平移动作得到,ωn设定响应速率。前缀长度为g=min({k∈{0,…,H−1}:mina(da,k−δa)≤ 0}∪{H}),即在任一物体到其障碍的距离降到阈值及以下之前可放行的动作数。g=0时扣住候选动作并短退。只有实际执行的动作才写入历史。
- LIBERO-Safety参数:Table 7给出操作空间位姿控制,kp=150,阻尼比1,控制周期0.05 s,ωn=√150≈12.25 s−1,预测时域H=5,干预阈值δ=6.67 cm。Figure 7示意裁剪动作块和后退。论文未把这组参数写成全部平台共用。
反应式恢复与离线反思
- 触发:Visual Judge把当前图像与子任务开始时的场景比较,报告running、success或failed。success推进计划;failed则暂停VLA,对同一子任务调用恢复。技能库最初是所有目标共用的一个基础技能;有已接受修订时用当前版本,否则用基础版。
- 基础技能:对掉落物体,先到观察构型再定位目标,生成抓取候选,抓取后抬起,用实测夹爪宽度检查是否握住;通过则运到目的地附近的待命位并做第二次持有检查,通过后由VLA从该位姿继续原指令。检索失败或第二次检查不通过,则标为恢复失败,并尝试回到预抓取位或失败前位姿后张开夹爪。Judge对任务完成的判定独立于恢复是否成功。附录Algorithm 2给出该流程。
- 跨尝试修订:回合之间,反思器查看选定的未解决失败,输入包括场景与目标图像、抓取阶段测量和所用版本。参数记忆P改数值设置,例如接触工具中心点高度;策略记忆S改控制流,例如增加重试或VLM辅助再接地。准入检查拒绝不支持的格式和越界数值。接受的P/S写入下一库版本。VLA权重保持固定。附录D.2说明记录如何使用;两轮协议和失败选择在Section 4.3。
运行时角色
- 模型分工:Table 8写明,规划器和Visual Judge为Qwen3-VL-32B-Instruct,反思器为Qwen3-VL-235B-A22B-Instruct,VLA为本地运行的StarVLA Qwen3-VL-OFT。附录F只定义各模块的输入输出并给出完整提示词。
- 一次请求:无效计划退回规划器。无依赖的子任务可开始,有依赖的按序开始。观察揭示新场景内容后重新规划,下一计划必须用update_scene记录。请求结束时summarizer更新用户记忆(Appendix A)。
论文做了哪些实验?
LIBERO-Safety上π0.5-SFT加shield的违规率为6.1%,VF为25.6%。
实验设置
- 真机:Franka Research 3,外部相机和腕部相机(Figure 5)。全部真机实验使用Qwen3-VL-4B-OFT的任务专用微调。规划器与Visual Judge为Qwen3-VL-32B-Instruct,反思器为Qwen3-VL-235B-A22B-Instruct(Table 8)。
- 规划:三明治在四种食材布局上比较Textual、Memory、Preference update。打包比较Memory、No-habit、Isolation。盖子食材比较Write and retrieve、Search without memory、Revise stale memory。指标是分派子任务中被判为符合任务要求及适用偏好的比例。RoboLab有garage、dining table、kitchen、study desk四个端点,每种文本或图像条件88个请求,Table 2注明无物理执行。
- 安全:LIBERO-Safety含TSA与FSHOA,每套450个episode,Table 3每个suite–level格子150个。策略为VLAct、OpenVLA-OFT、π0.5、π0.5-SFT,各自比较无附加层、adapted VLSA和本文shield。指标为无违规任务成功率VF和至少一次约束违规的episode比例Viol.。官方SFT检查点由文献[36]发布,用19,664条安全演示训练。论文未定义L0/L1/L2的难度含义。
- 恢复:LIBERO-Object上200个episode,12 cm正x失持扰动。R0为基础技能且P/S为空;每轮后每个物体至多用三个带恢复证据的失败episode做反思。基线与反思使用Qwen3-VL-235B-A22B-Instruct。Harness VLA使用与本文相同的Qwen3-VL-4B-OFT检查点,CaP-X不需要VLA。LIBERO-Recovery为77个Object场景、闭合与张开夹爪各5次,共770例,且关闭Judge。
- 真机执行:避障各20个episode;物体被移走后的恢复为五个位置、两种朝向、两次重复,每条件20个episode。集成演示为胡萝卜与肉两类食物服务,论文未给定量成功率。
- 评审:执行进度由Qwen3-VL-32B-Instruct的Visual Judge给出running、success或failed。分派正确性的判定者,论文未说明是否为另一模型或人工。
主结果
据Table 3的Overall列(VF / Viol.)。+VLSA未列入下表。
策略 无shield +Ours π0.5 6.7% / 71.1% 14.6% / 22.7% π0.5-SFT 25.3% / 52.6% 25.6% / 6.1% OpenVLA-OFT 6.9% / 61.4% 14.8% / 17.2% VLAct 4.3% / 69.3% 13.9% / 26.1% - 作者称,安全微调后无shield仍有约束违规;本文shield降低违规,而π0.5-SFT的VF与无shield时接近。adapted VLSA的Overall违规为:π0.5-SFT 37.7%,π0.5 49.8%,OpenVLA-OFT 42.0%,VLAct 44.8%(Table 3)。
- 作者称同一shield在这些骨干上都降低违规。分难度格并不都接近Overall:π0.5+Ours的FSHOA L2为2.0% / 38.7%,VLAct+Ours的FSHOA L2为1.3% / 37.3%。
- 真机上,无障碍数据训练的胡萝卜搬运策略在插入障碍后,无接触完成从0/20到20/20(Table 1)。作者称这是对碰撞风险的重复干预。
个性化规划与记忆修订
- 真机分派(Table 1):三明治Textual与Memory均为24/24,偏好更新后为20/24(83.3%)。打包Memory、No-habit、Isolation为16/16、16/20、16/18。盖子食材三项为12/12、8/10、9/12。作者称系统能跨对话保留偏好,并在20/24个子任务上跟随修订后的偏好;记录的失败包括误识别和漏掉子任务。
- RoboLab(Table 2):无记忆时文本与图像正确选择均为77/88,中位分派时间28.6 s与34.6 s;加记忆后均为88/88,时间为7.0 s与7.1 s。搬移目标后,记忆订正为文本76/88、图像77/88,后续分派为83/88与85/88。订正要求同时写入新位置并删除过时关联。作者称两组指标支持观察驱动的修订和随后复用。
- 作者解读:这些研究覆盖获取要求、跨交互保留和变化后修订。作者称结果支持把记忆接到规划和观察上,而不是把存档位置当成永久有效的指令。
扰动与记录失败上的恢复
- 12 cm扰动,200个episode(Table 4):被测VLA就是Qwen3-VL-OFT本身。无恢复完成26(13.0%);CaP-X为10(5.0%),Harness VLA为101(50.5%)。CarryOn R0为58(29.0%),R1累计141(70.5%),R2累计160(80.0%)。R1解决此前142次失败中的83次,R2再解决59次中的19次。摘要与引言写从13%到80%,Table 4为13.0%与80.0%。R0低于Harness VLA;作者称完整迭代系统的完成率最高。
- LIBERO-Recovery,770例(Table 5):Judge关闭,初始化后直接恢复。Pure VLA为247(32.08%),R0为385(50.00%),R1为569(73.90%),R2为586(76.10%)。R1解决385次中的184次,R2再解决201次中的17次。作者称基础恢复在相同rollout预算下提高17.92个百分点。
- 真机:物体被拿走后,RAW为3/20,BASE(z 0.00,1次尝试)为9/20,FULL(z −0.02,至多3次并更新感知)为18/20(Table 1)。作者称外部修复高于原策略,保留的修订进一步提高完成。
真机集成演示
- 测了什么:素食偏好已存储,用户要求从盖住的锅中供应午餐;机器人要开盖、判断能否供应,并在操作者干扰搬运时绕过障碍。第二次试验盖下是肉,场景记忆仍记胡萝卜。策略在无障碍数据上训练开盖和取食(Section 4.4)。
- 作者描述的过程:胡萝卜试验中,场景记忆引导开盖,shield避开电饭煲,掉落后Judge触发再抓取,再交还VLA放入碗中。肉试验中,观察与记忆矛盾,系统把过时胡萝卜条目换成肉,并因不符合饮食要求而拒绝供应(Figure 6)。
- 作者解读:作者称双环的作用是区分“修复被打断但仍合适的任务”和“新证据使任务不再合适时停止”。论文未报告这两段演示的成功率。
其他消融与分析
- 单次调用平均时间:几何过滤21.06 ms,VLA推理47.82 ms,感知170.82 ms;作者称感知占主要部分(Section 4.2)。
- Table 4每原episode累计API token:R2为41,109,其中反思2,609;CaP-X为1,124,819,Harness VLA为3,829,605。作者称完成更高且记录的VLM token更低。
- Table 5正文写最终累计7,158.77 token/例,表内R2为7,159。
- 附录D.3的BBQ sauce链:R0为3/20,入选失败的接触高度为66.0 mm、下降卡在109.0–113.2 mm;P先改为110.0 mm,R1为3/17,再改为105.0 mm,R2为11/14,累计从3到17/20。
- 策略单独探针:物体相对初始抬起位置位移12 cm后,冻结StarVLA完成26/200(13.0%)(Section 3.3,Figure 3)。图注写蓝柱为任务成功、上线为相对无扰动成功的百分点下降;正文未给出各位移的柱高。
- 分派并非都是满分:偏好更新20/24,过时场景记忆修订9/12,无习惯打包16/20(Table 1)。
有什么可以进一步探索的点?
作者把更长期适应、跨任务迁移恢复经验,以及防护与完成的平衡列为后续工作。
作者指出的局限与后续方向
论文没有单独的Limitations节。Conclusion明确写出后续方向:
- 更长期适应:作者写未来将评估longer-term adaptation(Conclusion)。
- 跨任务迁移:作者写未来将评估恢复经验在任务之间的迁移(Conclusion)。
- 防护与完成:作者写未来将改进保护性干预与任务完成之间的平衡(Conclusion)。
实验覆盖范围
- 真机为Franka Research 3。规划含三明治三种条件、活动相关打包三种条件、盖子食材三种条件;执行含插入障碍和物体移走后的恢复;另有食物服务两段演示(Section 4.1–4.4,Table 1)。
- LIBERO-Safety含TSA与FSHOA,每套450个episode,Table 3每个suite–level格子150个。比较π0.5、π0.5-SFT、OpenVLA-OFT、VLAct,以及adapted VLSA与本文shield。
- 恢复为LIBERO-Object上200个episode的12 cm正x失持,以及LIBERO-Recovery的77个Object场景、770例。反思至多两轮,每物体至多三个带恢复证据的失败episode(Section 4.3,Table 4、Table 5)。
- RoboLab有四个端点,每种文本或图像条件88个请求;Table 2为无物理执行的规划。搬移目标实验另有88对请求。
- 规划与Visual Judge使用Qwen3-VL-32B-Instruct,反思使用Qwen3-VL-235B-A22B-Instruct(Table 8)。论文未报告分派正确性的判定者、与人工的一致性、重复次数或统计检验。
总结一下论文的主要内容
CarryOn用可修订记忆分派子任务,并用冻结VLA外的过滤与恢复处理接触和失败。
CarryOn是包在冻结VLA外的双环harness,用来做个性化且带执行期保护与修复的机器人辅助。
- 问题:作者认为,只按指令做操作不足以服务日常请求。系统要按会变化的用户偏好和场景决定子任务,并在危险接触前干预、在物理失败后修复,同时留下失败经验。
- 方法:规划环把用户档案和按地点存放的场景记忆与当前请求、观察一起使用,分派带端点的子任务;对话和观察再修订记忆,漏掉规定的场景更新会被退回。执行环在冻结VLA前做几何距离过滤,失败后调用控制恢复技能。离线反思只修订恢复的参数与策略并保留版本,VLA与shield不改。
- 规划结果:真机上,只说做三明治时记忆条件分派为24/24,偏好更新后为20/24;打包在有档案时为16/16。RoboLab无物理执行时,加记忆后文本与图像的正确选择均为88/88,中位时间分别为7.0 s与7.1 s(Table 1、Table 2)。
- 安全结果:LIBERO-Safety的Overall上,π0.5-SFT的违规率从52.6%到加shield后的6.1%,VF从25.3%到25.6%。原版π0.5的违规率从71.1%到22.7%。OpenVLA-OFT与VLAct上违规也下降,但FSHOA L2等格子仍较高,例如π0.5+Ours为38.7%(Table 3)。真机加障碍后无接触完成从0/20到20/20。
- 恢复结果:200个12 cm扰动episode上,同一VLA无恢复为13.0%,R0为29.0%,两轮反思后累计80.0%;R0低于Harness VLA的50.5%(Table 4)。770例记录失败上,R2累计76.10%(Table 5)。真机FULL条件为18/20。
- 作者结论:作者称持久上下文和物理反馈把辅助扩展到单次任务执行之外。后续将评估更长期适应和恢复经验的跨任务迁移,并改进防护与任务完成的平衡。