Skills

Fine Tuning Openvla Oft

Fine-tunes and evaluates OpenVLA-OFT and OpenVLA-OFT+ policies for robot action...

Install

npx skills add Orchestra-Research/AI-Research-SKILLs --skill fine-tuning-openvla-oft -g -a claude-code -y
Category
Testing
Updated
25d ago
License
MIT
Context cost
Mediumabout 3,000 tokens
Runs scripts
No, instructions only

What it does

Fine-tunes and evaluates OpenVLA-OFT and OpenVLA-OFT+ policies for robot action generation with continuous action heads, LoRA adaptation, and FiLM conditioning on LIBERO simulation and ALOHA real-world setups. Use when reproducing OpenVLA-OFT paper results, training custom VLA action heads (L1 or diffusion), deploying server-client inference for ALOHA, or debugging normalization, LoRA merge, and cross-GPU issues.

OpenVLA-OFT

Fine-tuning and evaluation workflows for OpenVLA-OFT and OpenVLA-OFT+ from the official openvla-oft codebase. Covers blank-machine setup plus LoRA-based adaptation of OpenVLA for robot action generation with continuous action prediction heads.

Quick start

Clone the public repo, follow the official setup, then evaluate a pretrained LIBERO checkpoint:

git clone https://github.com/moojink/openvla-oft.git
cd openvla-oft
python experiments/robot/libero/run_libero_eval.py \
  --pretrained_checkpoint moojink/openvla-7b-oft-finetuned-libero-spatial \
  --task_suite_name libero_spatial \
  --center_crop True \
  --num_trials_per_task 50 \
  --seed 7

Core concepts

What OpenVLA-OFT changes: Standard OpenVLA tokenizes continuous actions into discrete bins, losing precision. OFT replaces this with dedicated continuous action heads (L1 regression or diffusion) while keeping the VLA backbone frozen and adapting via LoRA.

OFT vs OFT+ variants:

VariantFiLMImagesTypical use
OFTOff2 (front + wrist)LIBERO simulation
OFT+On3 (high + left + right wrist)ALOHA real-world

Key architecture choices:

  • LoRA adaptation: Rank-32 LoRA on VLA backbone (no full fine-tuning needed)
  • Continuous actions: L1 regression head (default) or diffusion head
  • FiLM conditioning: Feature-wise Linear Modulation for stronger language grounding in OFT+
  • Multi-image input: Configurable 2 or 3 camera streams via num_images_in_input

Compute requirements

TaskGPUVRAMNotes
LIBERO evaluation1x A100/A40~16 GBSingle GPU
ALOHA evaluation1x A100/A40~18 GBSingle GPU
LIBERO fine-tuning8x A100~27 GB/GPUPaper default
ALOHA fine-tuning (OFT+)8x A100~35 GB/GPUFiLM + 3 images
LoRA merge1x any GPU~16 GBOne-time step

Expected performance benchmarks

Read the whole SKILL.md on GitHub

More in Testing