project
Open-RAIL - 中国移动开源的具身智能通用工程底座
Open-RAIL 是中国移动向全球开源的具身智能通用工程底座,同时是行业内首个连接 VLA/WAM 模型与机器人本体的通用神经系统。
Open-RAIL是什么
Open-RAIL 是中国移动向全球开源的具身智能通用工程底座,同时是行业内首个连接 VLA/WAM 模型与机器人本体的通用神经系统。Open-RAIL 在框架层面打通推理—执行—数据回流—模型迭代闭环,并行流水线让动作平滑度提升两个数量级,端边云部署代码零改动,新机器人接入从以周计压到以小时计,新模型仅需 50—100 行代码。目前已适配 4 款异构机器人、支持 10 个主流模型,移动星厨机器人已在杭州常态化运行。
Open-RAIL的主要功能
-
推理执行:将观测、推理、控制拆成三条并行流水线并配合两级平滑策略,让关节加速度标准差从 10+ rad/s² 降至 0.1 rad/s²,动作又稳又顺。
-
端边云部署:推理统一放在 Server 端,机器人侧只负责执行,改一处连接地址即可在端、边、云之间按需切换,算力不再限制模型选择。
-
异构适配:通过轻量级硬件抽象层和统一模型接入约定标准化控制与状态接口,换机器人、换模型无需推倒重来。
-
数据闭环:数据采集内嵌进每次推理执行,多视角图像、关节状态、推理结果自动归档为开箱即用的标准格式,可直接喂入下一轮训练。
-
推理与遥操混合:模型跑偏时人工可随时介入纠偏,纠偏轨迹与原始轨迹时间戳严格对齐并行保存,每次人工纠偏都是一次高质量定向教学。
-
“推-采-评”闭环:把模型推理、机器人执行、数据回流、模型迭代打通成通用闭环,填补行业空白,让效果可批量复制到更多机器人与模型上。
Open-RAIL的技术原理
- 并行流水线推理架构:针对 VLA/WAM 模型推理延迟与机器人控制周期之间 30—50 倍的差距,Open-RAIL在机器人侧将观测、推理、控制拆为三条并行流水线:观测线程持续采集环境与关节状态,推理线程持续计算动作块,控制线程持续向下位机下发指令,三者互不等待,从而消除串行等待造成的动作卡顿。
- 两级在线动作平滑:模型输出的是离散动作点,直接执行会产生高频加减速冲击。Open-RAIL 在框架层面实现块内、块间两级平滑策略,全部在线实时计算,无需修改模型权重或后训练,即可将关节加速度标准差从 10+ rad/s² 降至 0.1 rad/s²,让硬件不再承受高频冲击。
- Server-Client 端边云解耦:系统将推理统一抽象到 Server 端,机器人本体(Client)只负责动作执行与状态上报。Server 可部署在本体、边缘算力或云端,代码完全一致,仅需修改连接地址,即可实现端、边、云三种部署形态的零改动切换,使模型规模不再受本体嵌入式算力约束。
- 硬件抽象层与统一接入约定:Open-RAIL 抽出轻量级硬件抽象层(HAL),将控制指令、状态读取、动作执行标准化封装,新机器人只需实现底层适配并完成注册,上层逻辑完全复用;模型侧同样定义统一推理接口,新模型实现标准接口即可接入,通常只需 50—100 行代码,把跨本体、跨模型的适配成本降至最低。
微信关注回复“开源”,加入AI开源项目交流群
如何使用Open-RAIL
- 确认环境:准备 Python ≥ 3.10 的 Linux 环境,服务端需 NVIDIA GPU + CUDA + PyTorch,客户端按机器人要求安装厂商 SDK 或 ROS,两侧通过 ZMQ 在同一局域网内通信即可。
- 获取代码:从 Gitee、GitHub 或焕新社区克隆仓库(
git clone https://gitee.com/cmcc-tao/open-rail.git)。 - 安装依赖:创建 conda 环境后执行
pip install -e .,会自动注册vla-server和vla-web-client两个命令行入口。 - 启动服务端:运行
python run_server.py --model_type <模型类型> --model_path <权重路径>,加载所选 VLA/WAM 模型并通过 ZMQ 暴露推理端点。 - 启动 Web 客户端:运行
python run_web_client.py(默认读取conf/default_conf.yaml,监听 9000 端口),可用--conf指定自定义配置。 - 验证连接:浏览器打开
http://localhost:9000,能看到 Web 界面、相机画面与机器人状态就绪即说明启动成功,选择任务后即可驱动机器人。 - 仿真起步(无真机):在
conf/robots_conf.py中把 Mock 后端的dataset_path指向 LeRobot 数据集,配合--model_type mock即可先验证全链路。 - 真机执行:修改
conf/*.yaml中的robots.type为目标适配器(agibot_g1/ti5_t170c/navi_wa2),并按文档配置相机话题和action_layout后同样两条命令启动。 - 端边云切换:无需改代码,只修改配置中的服务端网络地址字段,可让推理跑在本体、边缘或云端。
- 获取数据与评估:每次运行自动产出 LeRobot 风格 Parquet 训练数据和
eval/评估日志(JSON/CSV),开箱即用直接回流训练;”推理+遥操纠偏”混合模式计划 10 月开源。
Open-RAIL的核心优势
-
动作又稳又顺:三线程异步流水线加两级在线平滑在框架层消除 30—50 倍的推理-控制频率差,关节加速度标准差从 10+ rad/s² 降到 0.1 rad/s²,且不改模型、不限模型架构。
-
一次适配处处复用:轻量硬件抽象层加统一接入约定,让新机器人接入从以周计压到以小时计、新模型接入仅需 50—100 行代码,上层逻辑完全复用。
-
算力不再是门槛:服务端-客户端解耦架构下推理统一放 Server 端,只改一处连接地址即可零代码切换端、边、云部署,嵌入式设备也能驱动大模型。
-
运行即采集即评估:数据采集和评估日志内嵌进每一次推理执行,自动产出开箱即用的 LeRobot 风格数据与可复现的耗时指标,打通”推-采-评”闭环。
-
人工纠偏即教学样本:混合遥操模式下可随时暂停、介入纠偏、恢复,纠偏轨迹与原始轨迹时间戳严格对齐并行保存,直接成为高质量定向训练数据。
-
经过真实场景验证:移动星厨机器人已在杭州园区常态化运行,日均出咖啡超百杯、单杯 90 秒全流程,长序列任务全程模型自主决策,实证底座价值。
Open-RAIL的项目地址
- 项目官网:https://cmcc-tao.github.io/open-rail/
Open-RAIL的同类竞品对比
| 对比维度 | Open-RAIL(中国移动) | LeRobot(Hugging Face) |
|---|---|---|
| 核心定位 | 连接 VLA/WAM 模型与机器人本体的通用工程底座,主打真机部署”最后一公里” | 机器人学习的开源训练库与数据格式标准,覆盖数据、训练、共享全链路 |
| 覆盖链路 | 模型推理→真机执行→数据回流→模型迭代的完整闭环 | 数据采集→训练→评估为主,真机实时部署推理是其中一环 |
| 实时执行能力 | 三线程异步流水线+两级在线平滑,关节加速度标准差 10+→0.1 rad/s²,专为消除推理-控制频率差设计 | 有异步推理模块(PolicyServer/RobotClient 架构),但平滑与实时性优化非其核心设计目标 |
| 硬件适配 | 轻量硬件抽象层,已适配 4 款异构机器人(含人形),新机型从周级降到小时级 | 官方支持 20+ 硬件型号(SO-100/101、Unitree G1、Koch 等),社区适配活跃,偏轻量机械臂与教育硬件 |
| 模型支持 | 已支持 10 个主流 VLA/WAM 模型(GR00T、π0/0.5、RDT、ACT 等),新模型接入 ≤100 行代码 | 模型生态更广(π0、GR00T N1.7、SmolVLA、WALL-OSS 等),且模型多以 LeRobot 为原生训练/部署格式 |
| 部署形态 | 服务端-客户端分离,端/边/云零改动切换,嵌入式设备可驱动大模型 | 支持单机与 Jetson 边缘部署,也提供 GPU 服务器-机器人分离的 gRPC 异步推理 |
| 数据闭环 | 运行即采集(LeRobot 风格 Parquet)+运行即评估,日志自动落地 | 数据格式标准制定者(LeRobotDataset),生态内数据集共享是最大优势(开源实体 AI 数据集已被下载超 1500 万次) |
Open-RAIL的应用场景
-
商用服务机器人:如已落地的”移动星厨”,完成咖啡制作、微波炉加热餐食等长序列服务任务,日均百杯咖啡、单杯 90 秒全流程,多订单并行全程模型自主决策。
-
工业巡检值守:在变电站、机房、厂区执行设备巡检、仪表读数、异常报警等重复性值守任务,端边云部署让大模型推理可放在边缘或云端,本体无需大算力。
-
养老与医疗辅助:端茶递水、物品递送、康复辅助等场景,平滑执行能力保证机器人与人近距离交互时的安全性与柔和度。
-
科研与教学实验:高校与初创团队用 Mock 仿真后端零硬件起步,快速验证 VLA 模型效果;新模型接入仅需 50—100 行代码,研究者专注模型创新、免于搭建工程管线。