仅0.77B参数、2.3GB显存占用!CVPR2026轻量VLA Evo-1完整拆解

论文信息

标题:Evo-1: Lightweight Vision-Language-Action Model with Preserved Semantic Alignment
会议:CVPR 2026
单位:上海交通大学人工智能学院、EvoMind Tech、南洋理工等
代码:https://github.com/MINT-SJTU/Evo-1
论文:https://arxiv.org/pdf/2602.07244

一、引言:大VLA的“算力内卷”痛点

现在主流具身VLA(OpenVLA、π0、GR00T)动辄3B~7B参数,推理显存占用15GB起步,RTX4090都跑不流畅,更别说Jetson、工业边缘小显卡。而且绝大多数模型采用端到端一次性微调,把预训练VLM的视觉语义表征“训废掉”,遇到新物体、新背景泛化直接崩盘;同时训练必须依赖百万级机器人演示数据集,采集成本极高。
举个生活化案例:你用7B OpenV跑桌面抓取,换个黄色桌布、加个陌生遮挡物,成功率直接腰斩;而Evo-1只用0.77B小参数量,还能守住VLM原生语义,仿真+真机双场景SOTA,普通游戏卡就能完整训练推理。

现有VLA四大硬伤

  1. 参数量爆炸:3B+大模型推理10Hz都达不到,工业机械实时控制(15Hz+)完全不达标;
  2. 语义退化 端到端微调破坏预训练图文对齐,注意力漂移,分不清任务关键物体;
  3. 数据门槛高 依赖OXE、DROID海量机器人数据集,普通实验室无财力采集;
  4. 泛化薄弱 光照、物体、背景轻微改动,任务成功率暴跌。

Evo-1核心解决思路:轻量化图文主干+跨调制流扩散动作头+两阶段保语义训练,不用大规模机器人预训练,兼顾速度、显存、泛化性能。

在这里插入图片描述

图1完整分为三大模块:轻量化InternVL3-1B图文主干、集成对齐模块、跨调制扩散Transformer动作专家;右侧三张柱状图为MetaWorld、LIBERO、RoboTwin仿真基准对比,Evo-1全部超越同类轻量基线。

二、模型完整架构拆解(带公式逐字母解析)

整体前向映射公式:
at=fEvo−1({Iti}i=1N,Lt,st;θ)a_{t}=f_{Evo-1 }\left(\{I_{t}^{i}\}_{i=1}^{N}, L_{t}, s_{t} ; \theta\right)at=fEvo1({Iti}i=1N,Lt,st;θ)

公式字母通俗+专业双解释

  • ata_tatttt时刻输出连续动作序列(机械臂7/14维关节控制向量)
  • {Iti}i=1N\{I_t^i\}_{i=1}^N{Iti}i=1N:多视角相机RGB观测图像(前视+腕部相机)
  • LtL_tLt:自然语言任务指令(如“把易拉罐放进盒子”)
  • sts_tst:机器人本体关节 proprioception 状态(关节角度)
  • θ\thetaθ:Evo-1全部可学习参数
  • fEvo−1f_{Evo-1}fEvo1:完整Evo-1前向推理网络

通俗解释:输入多张相机图+文字指令+机械臂自身关节数据,模型直接输出下一整段连续控制动作。

2.1 轻量化图文主干 InternVL3-1B

主干拆分为视觉编码器InternViT-300M、语言编码器Qwen2.5-0.5B,总参数仅0.77B。
视觉处理流程:图像统一缩放448×448,Pixel-Unshuffle下采样,视觉token数量直接压缩4倍,大幅降低计算量。
图文融合输出特征公式:
zt=fVLM({Iti}i=1N,Lt)z_{t}=f_{VLM}\left(\{I_{t}^{i}\}_{i=1}^{N}, L_{t}\right)zt=fVLM({Iti}i=1N,Lt)

  • ztz_tzt:图文融合全局特征(从VLM第14层提取,论文消融证明中层特征最适配机器人控制)
  • fVLMf_{VLM}fVLM:InternVL3-1B图文编码网络

在这里插入图片描述

图2(a)是Evo-1训练后的InternVL注意力热力图,精准聚焦棒球手、巴士、小狗主体;图2(b) OpenVLA的Prismatic-7B训练后注意力散乱,出现语义漂移。直观证明两阶段训练能保住预训练语义对齐能力。

2.2 跨调制流匹配扩散Transformer(动作专家)

放弃传统交替自注意力+交叉注意力DiT,全部堆叠交叉注意力层,用流匹配Flow Matching建模连续动作轨迹。

1)带噪动作插值公式

Atτ=τAt+(1−τ)ϵA_{t}^{\tau }=\tau A_{t}+(1-\tau )\epsilonAtτ=τAt+(1τ)ϵ
字母解析:

  • AtA_tAt:真实标准动作序列(Ground Truth)
  • ϵ\epsilonϵ:标准高斯随机噪声
  • τ∈[0.02,0.98]\tau \in [0.02,0.98]τ[0.02,0.98]:插值权重,从Beta分布采样,限制区间防止数值爆炸
  • AtτA_t^\tauAtτ:训练时输入的带噪动作样本

通俗解释:把真实动作和噪声按比例混合,作为扩散网络输入,网络学习从噪声还原真实运动轨迹。

2)流匹配损失函数

Lτ(θ)=Ep(At∣zt,st), q(Atτ∣At)[∥vθ(Atτ,zt,st)−u(Atτ∣At)∥2]\mathcal {L}^{\tau }(\theta )=\mathbb {E}_{p(A_{t}|z_{t},s_{t}),\, q(A_{t}^{\tau }| A_{t})}\left[ \| v_{\theta }(A_{t}^{\tau },z_{t},s_{t})-u(A_{t}^{\tau }| A_{t})\| ^{2}\right]Lτ(θ)=Ep(Atzt,st),q(AtτAt)[vθ(Atτ,zt,st)u(AtτAt)2]
字母解析:

  • vθv_\thetavθ:模型预测时序速度场(扩散网络输出)
  • uuu:目标真实流方向(从噪声指向真实动作)
  • ztz_tzt:图文融合特征、sts_tst:机器人本体状态
  • ∥⋅∥2\|\cdot\|^22:L2均方误差损失

通俗解释:让模型预测的运动偏移方向,和真实轨迹偏移尽可能一致,学习流畅连续机械运动。

3)推理动作输出

A^t=fAE(zt,st,Atτ)\hat{A}_{t}=f_{AE}\left(z_{t}, s_{t}, A_{t}^{\tau}\right)A^t=fAE(zt,st,Atτ)

  • A^t\hat{A}_tA^t:模型预测未来H步动作chunk(一次性输出多帧连续动作,减少推理频次)
  • fAEf_{AE}fAE:Cross-Attention扩散动作专家网络

2.3 集成对齐模块(论文最优Module A)

提取VLM第14层中层特征ztz_tzt,直接和机器人状态sts_tst拼接,整体作为扩散Transformer的KV上下文,不做维度投影压缩,完整保留视觉+本体信息。
消融证明:穿插自注意力、分层注入特征都会打断图文-动作信息流,只有纯多层交叉注意力架构效果最优。

在这里插入图片描述

图6(a)为论文最终采用Module A,仅用连续交叉注意力层,无自注意力插入;B/C/D为对比变体,LIBERO-Long任务成功率均低于A。

三、核心创新:两阶段保语义训练范式

在这里插入图片描述

绝大多数VLA直接端到端全量微调VLM,反向传播动作损失会污染图文预训练表征,出现注意力漂移(图7左)。Evo-1分两段训练,隔离噪声梯度,守住语义对齐。

阶段1:冻结VLM,只训练集成模块+动作专家

主干InternVL3全程锁权重,仅随机初始化的扩散头、对齐模块参与更新。先建立高层视觉语义与底层动作的粗对齐,避免动作梯度破坏VLM原生图文理解能力。

阶段2:解冻全部模块,全量联合微调

动作分支收敛后放开VLM权重,小幅微调实现精细跨模态匹配,此时VLM底层语义表征已经稳定,不会发生漂移。

(a)单阶段训练:注意力分散,无关区域出现高亮;(b)本文两阶段训练:精准聚焦任务交互物体,语义完整性保留。

消融柱状图佐证:
在这里插入图片描述

图8(b)可见全部4个难度等级任务,两阶段训练成功率全面高于单阶段端到端微调。

四、全维度实验结果(仿真+真机+泛化+效率)

4.1 三大仿真基准定量表(原文Table1)

模型 参数量 是否机器人预训练 MetaWorld平均 LIBERO平均 RoboTwin双臂平均
Diffusion Policy - 10.5% - 18.4%
π0 3.5B 47.9% 94.2% 30.9%
SmolVLA 2.25B 68.2% 88.8% 25.8%
TinyVLA 1.3B 47.9% - -
Evo-1(Ours) 0.77B 80.6% 94.8% 37.8%
核心结论:
  1. 仅0.77B,不使用任何大规模机器人预训练数据,MetaWorld、RoboTwin达到新SOTA;
  2. LIBERO长时序任务92.3%成功率,远超多数7B大模型;
  3. 单/双臂仿真场景全部具备极强泛化能力。

4.2 真机xArm6实验(四类桌面操纵任务)

真机硬件:6轴UFACTORY xArm6平行夹爪,双RGB相机(前视+腕部)
四类真实任务:

  1. 易拉罐拾取投放;2. 纸杯倾倒泡沫;3. 人手递物;4. 易拉罐堆叠

真机成功率柱状图:

Evo-1四项任务平均78%,高于π0(73%)、OpenVLA(55%)、SmolVLA(50%),轻量模型真机落地可靠性拉满。

4.3 推理效率关键对比(RTX4090实测,原文Table2)

模型 参数 推理显存占用 推理帧率Hz 真机平均成功率
SmolVLA 0.45B 2.0GB 12.7 50.0%
OpenVLA 7.0B 15.1GB 7.9 55.0%
π0 3.5B 17.9GB 11.5 73.0%
Evo-1 0.77B 2.3GB 16.4 78.0%
行业颠覆性指标:
  1. 仅2.3GB显存,Jetson Orin嵌入式设备可直接部署;
  2. 16.4Hz推理频率,满足机械臂实时控制需求;
  3. 小参数量下真机效果反超3~7B巨型VLA。

4.4 分布外泛化测试(原文Table3)

测试干扰:新增遮挡物体、背景变色、目标偏移、高度变化
SmolVLA在各类扰动下成功率下跌20%~30%,Evo-1最低仅下跌5%,证明两阶段训练保留的语义表征具备极强域迁移能力。

五、可直接运行核心代码(两阶段训练+推理)

1. 环境安装(官方仓库标准流程)

git clone https://github.com/MINT-SJTU/Evo-1
cd Evo-1
conda create -n evo1 python=3.10
conda activate evo1
pip install -r requirements.txt
MAX_JOBS=64 pip install flash-attn --no-build-isolation
# 下载InternVL3-1B预训练权重
hf download OpenGVLab/InternVL3-1B --local-dir ./pretrain_vlm

2. 两阶段训练核心脚本(Deepspeed多卡)

# ========== Stage1:冻结VLM,仅训练动作专家+集成模块 ==========
accelerate launch --num_processes 1 --deepspeed_config_file ds_config.json \
scripts/train_stage1.py \
--vlm_path ./pretrain_vlm \
--dataset_config ./config/libero.yaml \
--batch_size 16 \
--lr 1e-5 \
--max_steps 5000 \
--save_dir ./output/stage1_ckpt \
--freeze_vlm True

# ========== Stage2:全模型微调(解冻VLM) ==========
accelerate launch --num_processes 1 --deepspeed_config_file ds_config.json \
scripts/train_stage2.py \
--resume_path ./output/stage1_ckpt/step_5000 \
--freeze_vlm False \
--max_steps 80000 \
--save_dir ./output/stage2_final

3. 真机xArm6推理客户端核心片段

import torch
import json
import asyncio
import websockets
from PIL import Image

# 加载训练好的Evo-1模型
device = "cuda"
model = torch.load("./output/stage2_final/best.pth", map_location=device)
model.eval()

async def robot_infer_client():
    async with websockets.connect("ws://127.0.0.1:5000") as websocket:
        # 采集相机图、机械臂状态、任务指令
        obs = {
            "image": [img_front.tolist(), img_wrist.tolist()],
            "image_mask": [1, 1],
            "state": arm_joint_qpos.tolist(),
            "prompt": "Pick the can and put it into the box"
        }
        await websocket.send(json.dumps(obs))
        recv_data = await websocket.recv()
        action_chunk = torch.tensor(json.loads(recv_data))
        # 下发连续动作到xArm6机械臂
        arm.send_action(action_chunk.cpu().numpy())
asyncio.run(robot_infer_client())

4. 流匹配损失核心实现(论文公式复现)

import torch
import torch.nn as nn

def flow_matching_loss(pred_v, target_u, action_gt, eps=1e-6):
    """
    复现论文公式(4)流匹配L2损失
    pred_v: 模型预测速度场 [B, H, action_dim]
    target_u: 真实流方向 [B, H, action_dim]
    """
    loss = torch.mean(torch.square(pred_v - target_u))
    return loss

def get_noisy_action(action_gt, beta_dist):
    """公式(3) 生成带噪动作A_t^τ"""
    bsz = action_gt.shape[0]
    tau = beta_dist.sample((bsz,)).clamp(0.02, 0.98)
    tau = tau.view(bsz, 1, 1)
    noise = torch.randn_like(action_gt)
    A_tau = tau * action_gt + (1 - tau) * noise
    # 真实流方向 u = action_gt - noise
    target_u = action_gt - noise
    return A_tau, target_u

六、Evo-1作为Baseline适配场景分析

✅ 极度适合作为核心基线

  1. 轻量化边缘VLA赛道:0.77B、2.3GB显存,Jetson工业部署方向首选对标模型;
  2. 无大规模机器人数据课题:不需要OXE/DROID预训练,仅少量真机演示即可训练;
  3. 语义对齐/抗域泛化方向:两阶段训练是独有的保语义范式,对比单阶段微调基线;
  4. LIBERO/MetaWorld/RoboTwin仿真桌面单/双臂通用,全部开源完整脚本与权重。

⚠️ 仅适合辅助基线

  1. 长时序动作CoT、3D世界模型赛道(TraceGen、ACoT-VLA):Evo-1无显式思维链、无3D轨迹建模,仅能作为下游轻量化执行策略对比;
  2. 人形、户外移动机器人:论文仅桌面小型机械臂验证,无人形/大场景实验;
  3. 百万级多模态预训练大VLA方向:参数量差距过大,对比说服力弱。

基线搭配推荐(你的3D轨迹VLA课题)

主基线:TraceGen / ACoT-VLA(规划推理主线)
辅助基线:Evo-1(轻量化下游执行策略,对比推理速度、显存开销)

七、总结

Evo-1解决了传统VLA“大参高显存、微调破坏语义、依赖海量机器人数据”三大痛点,0.77B超轻量架构搭配两阶段保语义训练,在仿真、真机双场景实现SOTA,同时推理帧率16.4Hz适配边缘嵌入式设备。
对于预算有限、仅有RTX4080/4090、低成本xArm6/SO100机械臂的科研人员,是复现成本极低、实验指标全面的标杆轻量VLA,非常适合作为消融对比基线。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐