EVA-Client:真实机器人上具身策略的统一数据收集、推理与部署框架 EVA-Client: A Unified Data Collection, Inference, and Deployment Framework for Embodied Policies on Real Robots
首个统一机器人部署框架,解决真实机器人部署的三大关键挑战。
前置知识
Vision-Language-Action Models (VLA)
视觉-语言-动作模型是具身智能的核心架构,将语言指令和视觉观察直接映射到机器人动作空间。这类模型通常在大规模多模态数据上预训练,能够理解自然语言描述的环境和任务,并输出机器人的连续动作序列。VLA 模型如 OpenVLA、StarVLA 等已成为通用机器人操纵策略的主流范式。
EVA-Client 需要部署这类训练好的策略到真实机器人,理解 VLA 的工作原理对于认识部署挑战至关重要。
Action Chunking
动作分块是策略推理的一种范式,模型一次预测未来 H 个时间步的动作序列而不仅仅是单个动作。这种设计可以提高预测的时序一致性,但也带来了新的部署挑战:如何将重叠的动作块平滑地调度到控制循环中,如何处理推理延迟造成的动作过时,以及如何在块边界保持轨迹连续性。
EVA-Client 的核心贡献之一就是实现了多种动作块调度和融合策略,这是理解框架设计的关键。
Temporal Ensembling
时序集成是 ACT 方法引入的动作平滑技术,通过指数加权平均融合多个时间步上对同一动作时间戳的预测。具体来说,对于时间步 t,所有覆盖该时间步的预测都会被保留,执行的动作是加权和,通过指数衰减对早期预测赋予更大权重,从而平滑块边界。
这是 EVA-Client 实现的一种关键推理策略,理解其数学原理对于认识部署效果的影响很重要。
Inverse Kinematics
逆运动学是机器人学中的经典问题:给定末端执行器的目标位姿(位置和姿态),求解达到该位姿所需的关节角度。对于串行臂机器人,这是从任务空间到关节空间的映射。EVA-Client 使用 PyRoki 工具包的 JAX 实现求解非线性最小二乘问题,最小化末端位姿误差、休息位置偏置和速度惩罚三个加权成本,同时遵守硬性关节限制约束。
EVA-Client 的一项关键功能是解耦策略输出空间(可能是末端位姿)和机器人发布空间(可能是关节角度),逆运动学是连接两者的桥梁。
ROS (Robot Operating System)
ROS 是机器人领域广泛使用的中间件框架,提供节点间的消息发布-订阅机制。ROS1 是原始版本,ROS2 是改进版,提供更好的实时性和质量服务(QoS)支持。EVA-Client 实现了 ROS1 和 ROS2 两种传输后端,通过订阅相机和关节状态主题、发布关节命令主题来与真实机器人通信,同时还实现了时间同步机制将多流观察对齐到观察帧。
ROS 是真实机器人部署的事实标准,理解 ROS 的工作方式有助于认识 EVA-Client 的传输层设计。
研究动机
当前机器人操纵策略的训练生态系统已经相当成熟,出现了 openpi、LeRobot、VLA Foundry、StarVLA 等模块化模型抽象、共享数据格式、基准集成和可扩展训练配方的框架。然而,将这些训练好的策略部署到真实机器人上仍然是一个被低估的挑战。真实机器人部署涉及三个紧密耦合的方面:机器人集成、实时执行和物理评估,这些使得策略在物理机器人上难以复现、调试和比较。在实践中,部署组件通常被实现为特定方法或特定机器人的脚本,例如 openpi 和 LeRobot 等训练栈捆绑的每模型部署客户端和评估入口点。这导致跨策略和平台的真实机器人部署难以检查、重用和比较。这种差距有三个具体后果:首先,机器人集成位于大多数模型和训练框架的抽象水平之下,策略可能共享相同的检查点格式或推理 API,但控制循环仍然依赖于特定机器人的相机、状态反馈、中间件和动作空间;其次,实时执行与部署耦合而不是与训练耦合,动作分块、异步推理、延迟补偿和平滑通常作为特定方法的实现细节引入,一旦移动到物理硬件上就难以检查或比较;第三,物理评估以及下游将部署产生的内容反馈回外部训练,受到部署管道本身的塑造,与训练指标或模拟分数不同,真实机器人结果取决于策略观察到什么、预测了什么、预测如何转换以及最终执行了什么命令。
本文的目标是本文提出了 EVA-Client,这是一个用于已训练操纵策略的推理、调试、数据收集和部署的统一客户端。EVA-Client 位于更广泛的策略生命周期中,跨越机器人硬件集成、数据收集、外部策略训练、实时部署和真实机器人评估,并在单一代码库后统一了这个周期的真实机器人阶段。作为信号源和机器人执行之间的中介,它与 openpi、StarVLA、GR00T、Dream-Zero 等源交换指令、观察和动作,然后将结果动作转换为机器人命令。客户端控制连接的机器人执行栈,同时将部署过程的每个阶段暴露给检查、干预和评估。同一个框架可以容纳需求差异巨大的任务,从高度动态的控制到长视界执行。在这个范围内,即使是推理策略的单一变化也可能决定任务是成功还是停滞。本文的三个核心贡献是:第一,一个覆盖整个真实机器人迭代循环的单一客户端;第二,一个开箱即用的组件解耦部署架构;第三,具有返回训练闭环的可复现评估。
与已有工作不同的是,本文的独特切入角度是认识到部署是训练-部署-评估-再训练循环中被忽视但至关重要的一环。训练侧已经收敛到共享框架如 openpi、LeRobot、StarVLA 和 VLA Foundry,但真实机器人侧仍然是一堆每策略、每机器人的脚本散布。EVA-Client 通过将数据收集、部署、块平滑、评估和记录的反馈带到一个代码库中来关闭这最后一个差距,使检查点能够在真实硬件上达到闭环迭代而无需为每个策略或机器人重写部署栈。与专注于训练新模型或创建新基准的工作不同,EVA-Client 定位为部署基础设施,提供训练框架的部署对应物,并补充该领域需要但尚未整合的配套基础设施。
核心方法
EVA-Client 围绕三个设计原则构建,直接针对引言中确定的三个部署差距。在高层,EVA-Client 是信号源和机器人执行之间的薄客户端。信号源包括训练好的策略服务器如 openpi、StarVLA、GR00T 和 Dream-Zero,以及人类遥操作。客户端向基于模型的源发送指令和观察,接收动作或动作块,并接受用于收集的遥操作动作。然后它通过 ROS 1/2 或 ZMQ 向机器人执行栈发布命令,并读回同步观察。部署过程通过 Debug、Collect 和 Evaluation 工作流暴露。框架在内部组织为具有窄接口的五层:传输层抽象同步观察的捕获和命令的交付;机器人描述层声明执行器组、相机、观察模式、主题映射和可选运动学;策略客户端查询基于模型的信号源并返回动作块,而遥操作源通过收集路径提供动作;推理策略决定何时调用策略以及如何将重叠块转换为单一平滑动作流;CLI/Web 层驱动会话状态机并提供交互式、收集和评估前端。因为层通过小的数据类接口通信,每个都可以独立替换。
EVA-Client 的核心创新是将解耦的分层架构应用于真实机器人部署,使得信号源、传输中间件、机器人描述和推理策略成为正交网格,可以开箱即用地组合。这意味着添加机器人描述或策略只需要接触相应的层,而不是重写整个部署栈。这种架构设计使得 bringing up 新部署成为配置选择而不是编码任务。另一个关键创新是将每次评估视为数据收集:每次运行以训练就绪格式记录推出数据,以及全面的每次运行日志和交互式并排查看器,因此可复现的评估可以自动为下一轮外部训练提供材料,而不是结束为未记录的印象。EVA-Client 还统一了主要的实时推理策略,包括同步或异步执行、ACT 风格时序集成和实时分块,以及用于消融的朴素异步基线,所有都在单一配置表面后面。
方法步骤详情
EVA-Client 的部署流程分为四个主要步骤。第一步是配置加载,一个配置文件固定机器人、传输后端、策略端点、动作空间模式、循环率、提示和推理策略,命令行标志可以覆盖单个字段使得相同配置可以在不编辑的情况下重新定位。第二步是会话初始化,单一会话状态机从空闲到就绪到运行循环,统一设置、启动、停止和重置。第三步是控制循环执行,每次迭代客户端从机器人执行栈读回同步观察,对于基于模型的源,它将该观察与语言指令一起转发给策略服务器,接收动作块,并将结果命令发布给机器人;对于遥操作,源通过相同执行和日志路径提供操作员动作,然后机器人产生下一个观察并关闭循环。这个循环以固定的控制率运行,与调用策略的率故意解耦。第四步是日志记录和评估,每次运行记录三个并行时间戳动作流:策略返回的原始每块预测、推理策略缓冲后平滑的动作以及实际发送到机器人的执行动作,每步都标记有源块,这些记录用于后运行调试和结果比较。
技术新颖性
EVA-Client 的技术新颖性体现在多个方面。在架构层面,它首次实现了信号源、传输中间件、机器人描述和推理策略的完全解耦,使得任何策略服务器或遥操作流可以与任何支持的机器人在任何支持的传输上组合。这种正交设计在机器人部署社区是前所未有的。在推理策略层面,EVA-Client 首次在单一配置表面后重新实现了多种代表性推理策略,包括同步执行、异步预取与线性重叠融合、ACT 风格时序集成、朴素异步替换和实时分块,使得调度和平滑成为可以在同一机器人上配置和比较的变量。在评估层面,EVA-Client 将评估从主观印象转变为可记录、可比较的测量,通过标准化试验协议、对明确里程碑而不是单一总体判断的每次试验评分,以及持久化足够信息在事后重建和比较运行。在闭环反馈层面,EVA-Client 首次实现了评估即数据收集的概念,每次评估运行自动产生训练迭代的材料,而不是结束为未记录的印象。
实验结果
论文报告了两个真实部署场景来说明 EVA-Client 的能力和推理策略选择的重要性。在高动态的乒乓球任务中,手臂返回球,任务强调实时响应能力:在同步执行下,每次前向传递的暂停导致手臂无法跟踪快速球,因此集会无法启动;而在异步调度下,控制循环在推理过程中保持运行,使用延迟补偿的分块调度使快速反应动作与实时观察保持对齐,集会能够成功进行。在长视界稳定的布料折叠任务中,同一个手臂折叠桌面上的布料,任务强调扩展序列上的时序连贯性:在异步执行下,重叠融合将长视界轨迹保持稳定。这两个任务展示了同一个 EVA-Client 部署如何驱动具有相反需求的任务,只改变其推理策略和机器人描述而不是任何任务特定代码。论文还报告了对多种机器人的支持能力,包括 Franka、UR5e、Galaxea R1-lite、AgileX Piper、AgiBot G2 和 ARX R5,所有这些机器人都可以通过单一描述类连接到同一机器人无关后端。在逆运动学方面,EVA-Client 实现的连续 IK 使用 PyRoki 的非线性最小二乘求解器,每个动作块帧是一个单配置最小二乘问题,通过 Levenberg-Marquardt 使用信任区域步骤和密集 Cholesky 分解求解,在三个加权成本下最小化末端位姿误差、休息位置偏置和速度惩罚,同时遵守硬性关节限制约束。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| Table Tennis (乒乓球) | 成功集会 | 异步执行:成功集会 | 同步执行:无法启动集会 | 从完全失败到成功执行,策略选择对任务成败起决定性作用 |
| Cloth Folding (布料折叠) | 轨迹稳定性 | 异步执行:平滑稳定的折叠轨迹 | 同步执行:未报告 | 长视界任务中重叠融合保持时序连贯性 |
| Robot Platform Support (机器人平台支持) | 支持的机器人数量 | 6种平台(Franka, UR5e, Galaxea R1-lite, AgileX Piper, AgiBot G2, ARX R5) | 传统部署:每机器人需要单独脚本 | 从一机器人一脚本到统一框架支持多种平台 |
| Inference Strategies (推理策略) | 实现的策略数量 | 5种(同步、异步预取、时序集成、朴素异步、实时分块) | 传统部署:通常仅一种策略 | 从硬编码单一策略到可配置比较多种策略 |
| Evaluation Protocol (评估协议) | 评估粒度 | 每次试验里程碑评分加持久化日志加视频链接 | 传统部署:单一总体主观印象 | 从不可复现的主观判断到可记录、可比较的客观测量 |
局限与改进
论文明确指出了几个局限性。首先,EVA-Client 是部署基础设施而不是策略或基准:它不训练模型,这里报告的定性任务结果是真实部署的说明性观察而不是对照研究。其次,实时传输目前覆盖 ROS1、ROS2 和 ZMQ 套接字后端,但非 ROS 机器人上的相机仍然依赖于中间件特定的图像源,这是当前的局限性。第三,逆运动学求解器针对串行臂操纵器,其他形态仅通过它们自己的机器人描述支持。论文还指出,这里报告的乒乓球和布料折叠结果是说明性观察,而不是对照研究,无法得出关于策略性能的强结论。此外,论文没有提供与替代部署框架的定量比较,这是另一个局限性。
独立分析的弱点
从独立分析的角度来看,EVA-Client 存在几个可改进的弱点。首先,缺乏与非 ROS 机器人的原生集成,特别是对于那些不使用标准中间件的商业机器人,这限制了框架的广泛应用。改进方向是实现中间件无关的相机接口,或者支持更多商业中间件协议。其次,逆运动学求解器目前仅支持串行臂,对于移动机器人、人形机器人等更复杂形态的支持不足,这可以通过扩展 PyRoki 或集成其他运动学库来改进。第三,论文缺乏与替代部署框架的定量基准测试,使得难以评估 EVA-Client 在性能、易用性等方面的优势,未来应该设计标准化的基准测试套件。第四,Web 控制台的功能虽然全面,但可能缺乏对新手用户的引导和教程,可以通过添加交互式教程和更好的文档来改进。第五,虽然支持多种推理策略,但论文没有提供如何为特定任务选择最佳策略的指导,这是一个可以改进的方向。
未来方向
作者提出了四个明确的未来研究方向。第一,强化学习数据收集:旨在关闭从评估回外部训练的循环,将策略的推出及其奖励或结果标签视为强化学习和交互式微调的材料而不仅仅是被动日志,人机在环收集适合这里:操作员中途接管或推动手臂,并且校正被记录为目标训练信号。第二,代理策略:超越单一平面策略,旨在使 EVA-Client 成为分层策略的运行时,其中高级规划器或视觉语言代理向低级控制器分派子目标,由于接口已经很窄,同一客户端可以托管控制器同时暴露规划器发出子目标和读回执行状态的挂钩。第三,数据注释:计划用细粒度任务和子任务注释扩展收集模式,将长视界片段分割为同一 LeRobot 数据集中的标记子任务单元和里程碑,这使得收集可以在单个操纵阶段水平重用。第四,更广泛的机器人形态:回答上述串行臂限制,旨在通过添加每个机器人描述和运动学模型所需的机器人描述和运动学模型,扩展支持的机器人集到人形和移动底座形态,通过与现有手臂相同的接口注册。基于成果还可以延伸的方向包括:自动策略选择,根据任务特征自动推荐最佳推理策略;云端部署支持,将策略服务器扩展到云端以实现更强大的推理能力;以及安全性增强,添加更完善的碰撞检测、紧急停止和安全边界检查机制。
复现评估
EVA-Client 在复现性方面表现良好。论文提供了项目网站 https://colalab.net/projects/eva-client 和 GitHub 仓库 https://github.com/Noietch/EVA-CLIENT,表明框架作为开源基础设施发布。框架的部署是完全声明性指定的:单一配置文件固定机器人、传输后端、策略端点、动作空间模式、循环率、提示和推理策略,命令行标志可以覆盖单个字段,这使得运行可以单独从其配置复现。每次运行都记录三个并行时间戳动作流覆盖策略返回的原始每块预测、推理策略缓冲后平滑的动作以及实际发送到机器人的执行动作,每步都标记有源块,使得完整的推出数据以训练就绪格式记录。评估通过标准化试验协议组织,每次试验对明确里程碑而不是单一总体判断评分,并且每条记录作为结构化记录持久化,因此物理运行保持可审计和可复现。只读结果查看器消耗持久化日志,使得评估结果可以在机器人断电后很长时间检查、共享和重新分析。虽然论文没有提供具体的硬件要求和运行时性能指标,但基于支持的机器人和推理策略,可以推测需要中等到高端的计算资源来运行实时推理和 3D 可视化。总体而言,EVA-Client 的开源性质、声明性配置和全面日志记录使其具有良好的复现性。
论文图表