VLA-ACL learns which vision tokens a Vision-Language-Action model needs. A lightweight patch scorer is trained on top of a frozen, fine-tuned OpenVLA-OFT policy so that the actions predicted from the top-K vision patches per camera view stay consistent with the full-context actions and the ground-truth actions. At inference time, only the top-K patches are passed to the LLM backbone.
All code lives in src/openvla-oft. See SETUP.md for installation and
LIBERO.md for the LIBERO setup and datasets. Run the commands below from src/openvla-oft.
python vla-scripts/train_scorer.py \
--vla_path moojink/openvla-7b-oft-finetuned-libero-10 \
--data_root_dir modified_libero_rlds \
--dataset_name libero_10_no_noops \
--soft_top_k 64Released scorers are on owendudu/VLA-ACL: one file per LIBERO suite (spatial, object, goal, 10) at k32 and k64. Each file is a scorer state_dict (~130 MB). The eval defaults already match this architecture (5 layers, hidden size 1024, 16 heads).
huggingface-cli download owendudu/VLA-ACL --local-dir checkpoints/vla-aclTo fetch a single scorer:
huggingface-cli download owendudu/VLA-ACL scorer-libero-10-k64.pt --local-dir checkpoints/vla-aclUse the scorer trained on the same suite as the OpenVLA-OFT checkpoint (moojink/openvla-7b-oft-finetuned-libero-{spatial,object,goal,10}), and set --patch_scorer.prune_topk to the K in the filename (32 or 64).
Use a locally stored OpenVLA-OFT checkpoint, so that its modeling code is synced with this repo. The example below keeps 64 patches per camera view on LIBERO-10:
python experiments/robot/libero/run_libero_eval.py \
--pretrained_checkpoint checkpoints/openvla-7b-oft-finetuned-libero-10 \
--task_suite_name libero_10 \
--patch_scorer.enabled True \
--patch_scorer.checkpoint checkpoints/vla-acl/scorer-libero-10-k64.pt \
--patch_scorer.prune_topk 64A checkpoint from Training a Patch Scorer is loaded the same way. Pass its path as --patch_scorer.checkpoint and set --patch_scorer.prune_topk to the K used in that run.
@misc{du2026vlaaclactionconsistentvisualtoken,
title={VLA-ACL: Action-Consistent Visual Token Pruning for Efficient Vision-Language-Action Models},
author={Owen Du and Yang Yue and Jie Zhang and Jiaqi Pi and Chi Bene Chen and Gao Huang},
year={2026},
eprint={2610.08133},
archivePrefix={arXiv},
primaryClass={cs.RO},
url={https://arxiv.org/abs/2610.08133},
}This codebase builds on OpenVLA-OFT.