H-EmbodVis/TurboVLA
TurboVLA: Real-Time Vision-Language-Action Model at 32 Hz on an RTX 4090 with <1 GB VRAM
TurboVLA – 面向机器人的实时视觉-语言-动作模型
TL;DR – TurboVLA 是一个紧凑的机器人策略模型,直接融合视觉观察和语言指令以预测连续的机器人动作。它在消费级 RTX 4090 上以 32 Hz 运行,同时使用 < 1 GB 显存,在 LIBERO 和 RoboTwin 2.0 基准测试中实现了最先进的成功率。
🎯 项目功能
- 任务:将机器人的摄像头输入 + 文本命令转换为一系列低层关节位置动作。
- 关键思想:跳过大型语言模型 (LLM) 这一“中间层”。相反,分别编码视觉(通过 DINOv3)和语言(通过 BERT),让它们通过一个轻量级双向模块进行交互,并直接解码为动作块。
- 结果:0.2B 参数、31 ms 延迟、0.9 GiB 显存、LIBERO 平均成功率 97.6%、RoboTwin 2.0 平均成功率 88%。
🏗️ 架构概览
| 组件 | 作用 |
|---|---|
| 视觉编码器 | DINOv3 ViT-B(LIBERO)或 ViT-L(RoboTwin)——提供密集的视觉标记。 |
| 语言编码器 | BERT-base uncased——为指令生成标记嵌入。 |
| 双向视觉-语言交互 | 小型交叉注意力块,让视觉和文本标记交换信息。 |
| 动作解码器 | 紧凑的前馈网络,输出连续的动作块(LIBERO 为 12 步,RoboTwin 为 50 步)。 |
assets/figures/architecture-overview.png 中的图表显示了流程:V + L → 交互 → 解码器 → A。
📊 性能亮点
- LIBERO(4 套件,10,000+ 集):平均成功率 97.6%,0.2B 参数,31 ms 推理。
- RoboTwin 2.0(50 项任务,干净+随机):0.4B 模型成功率达 88.06%,与更大的基线相当。
- 速度:RTX 4090 上推理速度 32 Hz,显存使用量 < 1 GB(bf16 精度)。
assets/figures/performance.png 中的图表将延迟、成功率和参数数量与以 LLM 为中心的 VLA 基线进行了比较。
📦 入门指南
1. 克隆仓库并设置环境
git clone https://github.com/H-EmbodVis/TurboVLA.git
cd TurboVLA
为每个基准测试(LIBERO 或 RoboTwin)创建单独的 Conda 环境。两者均需要 Python 3.10 和 CUDA 兼容的 PyTorch(2.3.1)。
2. 安装依赖项
- LIBERO
conda create -n turbovla-libero python=3.10 -y
conda activate turbovla-libero
pip install torch==2.3.1 torchvision==0.18.1 --index-url https://download.pytorch.org/whl/cu121
pip install -e "[libero]"
- RoboTwin
conda create -n turbovla-robotwin python=3.10 -y
conda activate turbovla-robotwin
pip install -e "[robotwin]"
pip install flash-attn==2.7.4.post1 --no-build-isolation
按照说明单独安装相应的模拟器(LIBERO、RoboTwin)。
3. 下载模型检查点和数据
pip install -U huggingface_hub
hf download H-EmbodVis/TurboVLA --local-dir pretrained/TurboVLA
按照 README 表格获取 DINOv3、BERT 和 GroundingDINO 权重,并准备 LIBERO TFDS/RLDS 数据集或 RoboTwin 转换数据。
🏋️♀️ 训练与评估
LIBERO(示例)
torchrun --nproc_per_node=4 experiments/libero/train.py \
--dataset_dir data/libero/libero_10_no_noops/1.0.0 \
... (README 中的其他参数)...
评估只需单行调用 experiments/libero/evaluate.py,并传入检查点路径和套件名称。
RoboTwin(示例)
export ROBOTWIN_DATA_ROOT=/path/to/converted/RoboTwin
bash scripts/robotwin/train.sh # 使用 README 中定义的环境变量
评估通过 scripts/robotwin/evaluate.sh 对 RoboTwin 模拟器运行策略服务器。
🤝 如何扩展/贡献
- 硬件支持 – TODO 列表提到添加华为昇腾 NPU 支持。
- 模型扩展 – 仓库已提供 0.2B 和 0.4B 变体;您可以尝试更大的视觉骨干网络或更长的动作块。
- 新基准 – 可以接入任何遵循相同观察(RGB 图像)+ 指令格式的视觉-语言-动作数据集。
所有代码均采用 Apache-2.0 许可证,您可以自由改编用于研究或商业原型。
📚 引用
@article{xie2026turbovla,
title = {TurboVLA: Real-Time Vision-Language-Action Model at 32 Hz on an RTX 4090 with < 1 GB VRAM},
author = {Xie, Hengyi and Yao, Chenfei and Wu, Xianjin and Xi, Xuanyang and Tang, Yiping and Xu, Di and Zhu, Yingying and Liang, Dingkang and Bai, Xiang and Ding, Han},
journal = {arXiv preprint arXiv:2607.27205},
year = {2026}
}
总结 – TurboVLA 表明,连接视觉、语言和机器人控制并不需要庞大的 LLM。其高效设计使得在单个高端 GPU 上实现实时机器人操作成为可能,为设备端或低成本部署打开了大门。
相关
- 项目
- 项目
- 项目
- 项目
- 项目