metadata license: apache-2.0
library_name: pytorch
tags:
- robotics
- VLA
- vision-language-action
- robot-manipulation
- bridgedata
- Qwen3-VL
- imitation-learning
datasets:
- bridgedata-v2
language:
- en
metrics:
- mse
pipeline_tag: robotics
FrozenVLA-2B β Lightweight Vision-Language-Action for Robot Manipulation
A 50M-parameter trainable head on top of frozen Qwen3-VL-2B-Instruct , trained on BridgeData v2 (2,617 episodes) for general-purpose robotic manipulation.
π§ Architecture
ββββββββββββββββββββββββββββββββββββββββββββ
β Qwen3-VL-2B-Instruct (FROZEN) β
β βββββββββββββββ βββββββββββββββββββ β
β β Vision Enc. β -> β LLM (28L) β β
β βββββββββββββββ β hidden=2048 β β
β ββββββββββ¬βββββββββ β
β β β
β last_token_hidden β
β (2048-dim) β
ββββββββββββββββββββββββββββββββΌββββββββββββ
β
ββββββββββββΌβββββββββββ
β MLP Projector β β Trainable (1.3M)
β 2048 β 512 β 512 β
β GELU + Dropout β
ββββββββββββ¬βββββββββββ
β
ββββββββββββΌβββββββββββ
β Action Head β β Trainable
β 512 β 7 β
ββββββββββββ¬βββββββββββ
β
EEF delta: [dx, dy, dz, ax, ay, az, gripper]
Component
Params
Status
Qwen3-VL-2B (Vision + LLM)
2,127,532,032
βοΈ Frozen
MLP Projector
1,314,824
π₯ Trained
Action Head
513
π₯ Trained
Total
2,128,847,369
1.3M trainable
π Training
Item
Detail
Dataset
BridgeData v2 (LeRobot format)
Episodes
2,617
Action format
EEF delta 7D: [dx, dy, dz, ax, ay, az, gripper]
Action normalization
Z-score (mean/std per dimension)
Hardware
Alibaba Cloud PAI Β· NVIDIA A10 24GB
Framework
PyTorch 2.6.0 Β· Transformers 4.51+ Β· CUDA 12.6
Epochs
4 (of 5 planned)
Effective batch size
64 (32 Γ gradient_accumulation=2)
Optimizer
AdamW (lr=1e-4, wd=1e-2)
Schedule
Cosine annealing Β· 500 warmup steps
Precision
bfloat16 Β· gradient clip=1.0
Image size
448Γ448 (Qwen3-VL default)
Frames
All frames per episode (frame_sampling=all)
Training Loss (per epoch)
Epoch
Approx MSE Loss
Checkpoint
1
β
epoch_1.pt (15MB)
2
β
epoch_2.pt (15MB)
3
β
epoch_3.pt (15MB)
4
β
epoch_4.pt (15MB)
Inference Requirements
Platform
VRAM
Notes
RTX 4060 Laptop 8GB
~4 GB
β
Verified Β· sdpa Β· bf16
A10 24GB
~4 GB
β
Training env
T4 16GB
~4 GB
β
Should work
π Quick Start
1. Clone & Install
pip install torch>=2.5.0 transformers>=4.51.0 accelerate sentencepiece protobuf Pillow
git clone https://huggingface.co/YOUR_USERNAME/frozenvla
cd frozenvla
2. Download Base Model
huggingface-cli download Qwen/Qwen3-VL-2B-Instruct --local-dir ./Qwen3-VL-2B-Instruct
3. Load & Infer
import torch
from PIL import Image
from model import FrozenVLA
model = FrozenVLA(
llm_name="./Qwen3-VL-2B-Instruct" ,
mlp_hidden_dim=512 ,
mlp_depth=2 ,
action_dim=7 ,
attn_implementation="sdpa" ,
)
model.load_trainable("epoch_4.pt" )
model = model.to("cuda" ).eval ()
model.mlp_projector = model.mlp_projector.to(dtype=torch.bfloat16)
model.action_head = model.action_head.to(dtype=torch.bfloat16)
image = Image.open ("robot_view.jpg" ).convert("RGB" )
instruction = "pick up the red block"
with torch.no_grad():
action = model([image], [instruction])
print (action.float ().cpu().numpy())
4. Deploy Script (One-Click)
python deploy.py --checkpoint epoch_4.pt --test-image robot_view.jpg
π Files
File
Description
epoch_4.pt
Best trained head (MLP + ActionHead, 15MB)
epoch_1~3.pt
Intermediate checkpoints
model.py
Full model architecture (FrozenVLA class)
config.yaml
Training configuration
deploy.py
One-click deployment + inference script
β οΈ Limitations
Action space : BridgeData EEF delta only β NOT directly compatible with joint-space robots without IK conversion.
Domain : Trained on BridgeData scenes (tabletop manipulation). Zero-shot generalization to novel environments is limited.
Single image input : Uses the current frame only; no temporal context from video history.
Language : English instructions only.
π Citation
@misc{frozenvla-2026,
title = {FrozenVLA-2B: Lightweight VLA from Frozen Qwen3-VL on BridgeData},
author = {},
year = {2026},
url = {https://huggingface.co/YOUR_USERNAME/frozenvla}
}
π License
Apache 2.0