openvla-oft_skill

This skill fine-tunes and evaluates OpenVLA-OFT policies for robot action generation with LoRA and FiLM conditioning.
  • TeX

5.2k

GitHub Stars

1

Bundled Files

2 months ago

Catalog Refreshed

3 months ago

First Indexed

Readme & install

Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.

Installation

Preview and clipboard use veilstrat where the catalogue uses aiagentskills.

npx veilstrat add skill orchestra-research/ai-research-skills --skill openvla-oft

  • SKILL.md14.5 KB

Overview

This skill fine-tunes and evaluates OpenVLA-OFT and OpenVLA-OFT+ policies for robot action generation with continuous action heads, LoRA adaptation, and FiLM conditioning. It packages workflows for LIBERO simulation and ALOHA real-world setups, including training, evaluation, LoRA merge, and server-client deployment. Use it to reproduce paper results, train custom continuous action heads (L1 or diffusion), and debug cross-GPU or normalization problems.

How this skill works

The skill wraps official OpenVLA-OFT scripts to freeze the VLA backbone and adapt with LoRA adapters while replacing tokenized actions with continuous action heads (L1 regression or diffusion). It supports OFT (2-camera, no FiLM) for LIBERO and OFT+ (3-camera, FiLM) for ALOHA, plus dataset conversion, training launch commands, evaluation runners, and a VLA inference server. It includes utilities for invariant checks (config parity), LoRA merging, and common failure diagnostics (unnormalization keys, GPU type issues).

When to use it

  • Reproducing OpenVLA-OFT paper experiments on LIBERO or ALOHA
  • Training custom continuous action heads (L1 regression or diffusion) with LoRA adapters
  • Deploying a VLA inference server for ALOHA robot evaluation (server-client)
  • Debugging normalization, LoRA merge, or cross-GPU checkpoint issues
  • Evaluating pretrained OpenVLA-OFT checkpoints on LIBERO or ALOHA

Best practices

  • Keep training and inference flags identical (use_film, num_images_in_input, use_proprio, lora_rank, center_crop)
  • Prefer LoRA adaptation to full fine-tuning; merge adapters for deployment on different GPU types
  • Validate dataset normalization keys and set --unnorm_key to match checkpoint stats
  • Use recommended software stack (Python 3.10.14, PyTorch 2.2.0) and route caches to scratch on clusters
  • Run intermediate evals (50k, 100k, 150k) and choose checkpoints by task success, not loss

Example use cases

  • Run LIBERO evaluation on a pretrained checkpoint to reproduce reported success rates
  • Fine-tune OpenVLA-OFT with RLDS LIBERO datasets using torchrun across 8 A100 GPUs and LoRA rank 32
  • Train OFT+ on ALOHA with FiLM and 3 image streams, start the VLA server, and run client-side robot rollouts
  • Merge LoRA adapters into a deployable checkpoint when moving between GPU types
  • Parse LIBERO logs to extract per-task success rates and validate reproduction

FAQ

Adapters often need re-merging on the downstream device. Run the provided merge_lora_weights_and_save script to reapply LoRA to the base weights on the target GPU.

My actions are incorrectly scaled at inference—what should I check?

Confirm the checkpoint contains the expected norm_stats and that --unnorm_key matches your dataset’s statistics. Mismatched unnormalization keys produce wrong action magnitudes.

Which config flags must be identical between training and inference?

Ensure parity for use_l1_regression/use_diffusion, use_film, num_images_in_input, use_proprio, lora_rank, and image crop settings (train image_aug → eval center_crop).

What are minimum GPU requirements for single-GPU LIBERO evaluation?

A single A100 or A40 with ~16 GB VRAM is sufficient for LIBERO evaluation; ALOHA evaluation typically needs ~18 GB.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
openvla-oft skill by orchestra-research/ai-research-skills | VeilStrat