This is a merged, full OpenVLA checkpoint fine-tuned on LIBERO-Spatial. It is not an adapter-only upload.
The run was created to replace an under-trained 2k-step LoRA policy with a controlled, resumable 10k-step
experiment and an honest closed-loop evaluation.
The demo assets were regenerated from this exact published checkpoint after evaluation. They use the same
official harness, suite, seed, and center-crop setting, with one episode per task. They are qualitative
demonstrations; the reported 31/50 score comes from the earlier complete 5-episode-per-task evaluation.
Evaluation
Evaluation used OpenVLA's official experiments/robot/libero/run_libero_eval.py harness. Success is LIBERO's
environment goal predicate, not a visual or manually assigned label. The run completed all 50 episodes with
no caught episode exceptions.
#
LIBERO-Spatial task
Successes
1
Black bowl between the plate and ramekin → plate
1/5 (20%)
2
Black bowl next to the ramekin → plate
5/5 (100%)
3
Black bowl from table center → plate
1/5 (20%)
4
Black bowl on the cookie box → plate
5/5 (100%)
5
Black bowl in the top drawer of the wooden cabinet → plate
2/5 (40%)
6
Black bowl on the ramekin → plate
4/5 (80%)
7
Black bowl next to the cookie box → plate
4/5 (80%)
8
Black bowl on the stove → plate
2/5 (40%)
9
Black bowl next to the plate → plate
4/5 (80%)
10
Black bowl on the wooden cabinet → plate
3/5 (60%)
Overall
10 tasks × 5 episodes
31/50 (62.0%)
The 62% result crossed the experiment's predefined 60% usable threshold, but not its 75% stretch target. It
also remains below a separate 84.9% reproduction of the official LIBERO-Spatial checkpoint. Episode counts
differ, so the comparison should be read as directional rather than as a confidence-adjusted leaderboard.
Training recipe
Setting
Value
OpenVLA source commit
c8f03f48af692657d3060c19588038c7220e9af9
LoRA target modules
all-linear
LoRA rank / alpha / dropout
32 / 16 / 0.0
Trainable parameters
110,828,288 / 7,652,065,472 (1.45%)
Per-device batch / accumulation
8 / 2
Effective batch
16
Optimizer
AdamW
Learning rate
constant 5e-4
Image augmentation
enabled for all 10,000 steps
Gradient clipping
global norm 1.0
Checkpoint interval
every 1,000 optimizer steps, including optimizer and RNG state
Training hardware
1× NVIDIA A100-SXM4-80GB
Stable throughput
approximately 1.31 seconds/step after CPU quota tuning
The final 500-step window averaged 65.34% action-token accuracy, 1.244 cross-entropy loss, and 0.0362 L1
action loss. No NaN or infinite training metrics were observed. The step-10000 adapter was merged into the
base model, and the checkpoint includes the dataset_statistics.json needed for action un-normalization.
Loading the checkpoint
OpenVLA predicts one 7-DoF action at a time. A robot or simulator must call the policy repeatedly in a
closed-loop controller.
python
1import torch
2from PIL import Image
3from transformers import AutoModelForVision2Seq, AutoProcessor
45model_id ="duanxingjuan/openvla-7b-libero-spatial-lora-clean-10k"67processor = AutoProcessor.from_pretrained(model_id, trust_remote_code=True)8model = AutoModelForVision2Seq.from_pretrained(9 model_id,10 attn_implementation="flash_attention_2",11 torch_dtype=torch.bfloat16,12 low_cpu_mem_usage=True,13 trust_remote_code=True,14).to("cuda:0")1516image = Image.open("observation.png").convert("RGB")17instruction ="pick up the black bowl next to the ramekin and place it on the plate"18prompt =f"In: What action should the robot take to {instruction.lower()}?\nOut:"19inputs = processor(prompt, image).to("cuda:0", dtype=torch.bfloat16)2021action = model.predict_action(22**inputs,23 unnorm_key="libero_spatial_no_noops",24 do_sample=False,25)26print(action)# shape: (7,)
For faithful LIBERO evaluation, use the official harness with --center_crop True; the center crop matches
the image augmentation used throughout fine-tuning.
Limitations and safety
This model was adapted and evaluated only on the simulated LIBERO-Spatial suite.
Per-task results vary from 20% to 100%; the aggregate score hides meaningful spatial failure modes.
Five trials per task is sufficient for this experiment's gate but still gives wide per-task uncertainty.
The checkpoint has not been validated on a physical robot, other cameras, other embodiments, or safety-
critical control. Do not deploy it on real hardware without independent validation, constraints, and an
emergency-stop system.
The model inherits the general limitations of OpenVLA and its pretraining data.
Reproducibility artifacts
The accompanying study repository contains the locked recipe, clipped/resumable trainer, preflight checks,
watchdog, strict evaluation-summary validator, upload verifier, and CPU-only tests:
nele-duan/openVLA-study.
The archived evaluation summary records seed=7, center_crop=true, 50 completed episodes, and the ten
per-task rates shown above. The original model upload was verified at commit
1766524cf02cafd329d2a91e5cccb3bd5b8a10f9 before the card and demonstration assets were added.
Citation
bibtex
1@article{kim24openvla,
2 title={OpenVLA: An Open-Source Vision-Language-Action Model},
3 author={Moo Jin Kim and Karl Pertsch and Siddharth Karamcheti and Ted Xiao and Ashwin Balakrishna and Suraj Nair and Rafael Rafailov and Ethan Foster and Grace Lam and Pannag Sanketi and Quan Vuong and Thomas Kollar and Benjamin Burchfiel and Russ Tedrake and Dorsa Sadigh and Sergey Levine and Percy Liang and Chelsea Finn},
4 journal={arXiv preprint arXiv:2406.09246},
5 year={2024}
6}
This is an independent learning experiment, not an official OpenVLA release.