Skip to main content

LIBERO-Plus: In-depth Robustness Analysis of Vision-Language-Action Models

📄 Paper | 🏗️ Assets | 🌐 Website | 🤗 Model | 📁 RldsDataset 📁 LerobotDataset

libero-plus

🔥 Overview

This repository contains the official implementation and benchmark for our paper "In-depth Robustness Analysis for Vision-Language-Action Models". We systematically expose the hidden vulnerabilities of contemporary VLA models through comprehensive robustness evaluation across seven perturbation dimensions. You can simply replace the original libero with a pip install -e . without modifying your code.

🚀 Key Findings

  • Significant Fragility: VLA models exhibit extreme sensitivity to camera viewpoints and robot initial states, with performance dropping from 95% to below 30% under modest perturbations
  • Language Ignorance: Models largely ignore language instructions, functioning more like Vision-Action models
  • Negative Compositional Generalization: Combined perturbations reveal complex interaction effects beyond independent factors

📊 LIBERO-plus Benchmark

7 Perturbation Dimensions

We introduce LIBERO-plus, a comprehensive benchmark with 10,030 tasks spanning:

  1. Objects Layout - Confounding objects and target object displacement
  2. Camera Viewpoints - Position, orientation, and field-of-view changes
  3. Robot Initial States - Manipulator initial pose variations
  4. Language Instructions - LLM-based instruction rewriting
  5. Light Conditions - Intensity, direction, color, and shadow variations
  6. Background Textures - Scene and surface appearance changes
  7. Sensor Noise - Photometric distortions and image degradation

Evaluated Models

  • OpenVLA and variants (OFT, OFT_w, OFT_m)
  • π₀ and π₀-fast
  • Nora, WorldVLA, UniVLA, RIPT-VLA

🛠️ Installation

The usage of this project is identical to LIBERO. Simply replace the originally installed LIBERO repository with our repository without modifying your code.

# Clone our repository
git clone https://github.com/sylvestf/LIBERO-plus.git
cd LIBERO-plus

If you have LIBERO installed, please uninstall or remove it first. Please verify if the repo path in the following configuration file needs to be updated to path_to_liberoplus_repo. Here are the default paths for the configuration files: /root/.libero/config.yaml. You can check your libero_config_path at path_to_your_LIBERO_repo/libero/libero/__init__.py.

Then install our new LIBERO repository

# Install the new LIBERO package
pip install -e .

# New dependencies installed on top of LIBERO
apt install libexpat1
apt install libfontconfig1-dev
apt install libpython3-stdlib
apt-get install libmagickwand-dev
pip install -r extra_requirements.txt

Please download our assets from LIBERO-plus, including hundreds of new objects, textures, and other required assets. Please unzip the assets.zip file to /LIBERO-plus/libero/libero path. You can also find the RLDS training dataset mentioned in our paper and the OpenVLA-OFT weights after mix-SFT on this dataset. We also provide LEROBOT training dataset and training dataset for each suite.

The extracted directory structure should look like:

LIBERO-plus/
└── libero/
    └── libero/
        └── assets/
            ├── articulated_objects/
            ├── new_objects/
            ├── scenes/
            ├── stable_hope_objects/
            ├── stable_scanned_objects/
            ├── textures/
            ├── turbosquid_objects/
            ├── serving_region.xml
            ├── wall_frames.stl
            └── wall.xml

🔧 Evaluation

The evaluation method is almost identical to LIBERO. The only required modification is adjusting num_trials_per_task from 50 to 1 in your configuration.

📊 LIBERO-Plus Benchmark Leaderboard

Model Camera Robot Language Light Background Noise Layout Total
OpenVLA 0.8 3.5 23.0 8.1 34.8 15.2 28.5 17.3
OpenVLA-OFT 56.4 31.9 79.5 88.7 93.3 75.8 74.2 70.0
OpenVLA-OFT_w 10.4 38.7 70.5 76.8 93.6 49.9 69.9 56.4
NORA 2.2 37.0 65.1 45.7 58.6 12.8 62.1 39.8
WorldVLA 0.1 27.9 41.6 43.7 17.1 10.9 38.0 25.3
UniVLA 1.8 46.2 69.6 69.0 81.0 21.2 31.9 43.9
π₀ 13.8 6.0 58.8 85.0 81.4 79.0 68.9 54.6
π₀-Fast 65.1 21.6 61.0 73.2 73.2 74.4 68.8 64.2
RIPT-VLA 55.2 31.2 77.6 88.4 91.6 73.5 74.2 69.3
OpenVLA-OFT_m 55.6 21.7 81.0 92.7 91.0 78.6 68.7 68.1
OpenVLA-OFT+ (Ours) 92.8 30.3 85.8 94.9 93.9 89.3 77.6 79.6

Origin LIBERO Benchmark Leaderboard

To make it easier to get all the results in one place, we've compiled the evaluation results of current VLA models on the original LIBERO benchmark in this table.

Citation

If you find this work useful for your research, please cite our paper:

@article{fei25libero-plus,
    title={LIBERO-Plus: In-depth Robustness Analysis of Vision-Language-Action Models},
    author={Senyu Fei and Siyin Wang and Junhao Shi and Zihao Dai and Jikun Cai and Pengfang Qian and Li Ji and Xinzhe He and Shiduo Zhang and Zhaoye Fei and Jinlan Fu and Jingjing Gong and Xipeng Qiu},
    journal = {arXiv preprint arXiv:2510.13626},
    year={2025},
}

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rlinf_liberoplus-0.1.1.tar.gz (6.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rlinf_liberoplus-0.1.1-py3-none-any.whl (25.0 MB view details)

Uploaded Python 3

File details

Details for the file rlinf_liberoplus-0.1.1.tar.gz.

File metadata

  • Download URL: rlinf_liberoplus-0.1.1.tar.gz
  • Upload date:
  • Size: 6.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for rlinf_liberoplus-0.1.1.tar.gz
Algorithm Hash digest
SHA256 b06e37f18d40b4d8920efe65e0538961c08fab14600c69ad82cc704611e9dae1
MD5 0e0ba39d9d2fd719f82f67275ec1d69f
BLAKE2b-256 6f9e275d1e7fe50b6c872a1af276e992343b5b3d6ebf8ac03ff9a28bf5102c6c

See more details on using hashes here.

File details

Details for the file rlinf_liberoplus-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: rlinf_liberoplus-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 25.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for rlinf_liberoplus-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a862e8e4952ac52371e04ac8c80c67e4831f39b462198ba347174eae32f789f0
MD5 903b7914f6c6ae9731d39fffe433e39b
BLAKE2b-256 4913a041d215d63c3bfdce0341dcecb122adfffbec7224c56bc3d8d9cf57980a

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

This release

0.1.1 This release

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page