mannequin sounds costly, fragile, and exhausting to confirm. I needed a smaller take a look at: can I run an actual OpenVLA LoRA fine-tune in Colab, show that the dataset loaded accurately, verify that the GPU carried out actual coaching, and depart behind proof that another person can examine?
In case you are making an attempt to know whether or not OpenVLA fine-tuning is approachable, this text provides you a small, reproducible path earlier than you spend time on bigger robotic experiments. By the tip, you’ll know what adjustments in OpenVLA fine-tuning, what a LoRA adapter buys you, the best way to run the official coaching path in Colab, and the best way to confirm that the result’s greater than a pocket book that merely completed with out crashing.
The OpenVLA paper introduces OpenVLA as a 7-billion-parameter open-source vision-language-action mannequin skilled on 970,000 real-world robotic demonstrations. That scale is strictly why a small, verifiable first run is helpful.
OpenVLA is a mannequin for robotic management. A vision-language-action mannequin, or VLA, takes two inputs: a digicam picture from the robotic workspace and a natural-language instruction reminiscent of “put the cup on the plate.” From these inputs, it predicts the following motion the robotic ought to take.
Fantastic-tuning means taking a pretrained mannequin and coaching it additional on a particular dataset. For OpenVLA, the dataset consists of robotic demonstrations. Every demonstration reveals what the robotic noticed, what instruction it was following, and what motion it took subsequent. The purpose is to enhance the mannequin’s means to foretell the demonstrated motion for a job household that issues to the run.
This text walks by one small, reproducible OpenVLA fine-tuning run. It makes use of the `openvla/openvla-7b` checkpoint, which is the 7-billion-parameter checkpoint used within the official OpenVLA recipe, and trains a Low-Rank Adaptation (LoRA) adapter as an alternative of updating the complete mannequin. LoRA retains the run smaller as a result of it trains solely a small set of adapter weights, whereas many of the authentic mannequin stays frozen.
The run makes use of the `libero_spatial_no_noops` Robotic Studying Dataset Commonplace (RLDS) dataset. Robotic Studying Dataset Commonplace is a format for storing robotic demonstrations as episodes. Every episode comprises observations, directions, actions, and step data. On this run, OpenVLA learns from these episodes by evaluating its predicted motion tokens with the demonstrated motion tokens.
The remainder of the article follows that path from setup to proof. It explains the dataset, the coaching command, the necessary hyperparameters, what OpenVLA predicts, what the loss and motion accuracy metrics imply, and the way the finished run was checked in Weights & Biases (W&B). The purpose is to not make the run look bigger than it’s. The purpose is to make it inspectable.
What that is and isn’t
This tutorial demonstrates a reproducible, end-to-end OpenVLA adaptation workflow. The LIBERO dataset hundreds efficiently, the official fine-tuning pipeline runs, LoRA adapter
weights are up to date, coaching metrics are logged, GPU utilization is seen, and the ensuing run could be inspected in W&B.
The brief Colab run is an integration validation, not a task-performance benchmark. Measuring whether or not the tailored coverage improves success charges would require held-out
simulation rollouts or real-robot analysis. Right here, the purpose is to offer readers a working, verifiable basis earlier than they decide to an extended coaching and analysis run.
Replica supplies
Colab pocket book: https://colab.analysis.google.com/drive/1AiiJuFvNUTyQ-eksm9Mj7wAGtvH_V4zQ
W&B run: https://wandb.ai/wb-authors/openvla-lora-finetune/runs/zwo162re
Dataset: libero_spatial_no_noops
Mannequin: openvla/openvla-7b
{Hardware}: Colab A100 Excessive-RAM
Coaching size: 100 steps

What OpenVLA fine-tuning adjustments
After the checkpoint is loaded, fine-tuning adjustments the mannequin’s habits by coaching on robotic demonstrations. A robotic coverage is the a part of the system that chooses the following robotic motion. On this run, OpenVLA is the coverage: it receives a workspace picture and an instruction, then predicts motion tokens for the following robotic transfer.
Motion tokens are discrete vocabulary entries that stand for robotic management values. The launched OpenVLA motion represents a normalized seven-degree-of-freedom finish effector command. The tip effector is the instrument or gripper on the finish of the robotic arm. The seven values symbolize x, y, z, roll, pitch, yaw, and gripper. A robotic system should convert these normalized values again to the motion scale utilized by its personal robotic and dataset earlier than execution.

Throughout coaching, the mannequin sees a picture, a language instruction, and the following motion demonstrated within the LIBERO dataset. The LoRA adapter learns small weight updates that make the mannequin extra prone to predict the motion tokens demonstrated on this job household.
Prompting and reinforcement studying clear up completely different issues. A immediate adjustments the directions given to the mannequin when it’s used. Fantastic-tuning updates weights utilizing demonstration knowledge. On-line reinforcement studying improves a coverage by trial and error, reward, and suggestions from an atmosphere.
Fantastic-tuning is helpful when the pretrained coverage is near the duty however mismatched to the robotic setup. Frequent causes are a brand new digicam angle, a brand new gripper, a special motion scale, completely different objects, or job language that was not effectively coated within the authentic coaching knowledge. Robotics papers typically name this drawback embodiment shift: the robotic physique, sensors, or motion house modified, so the previous coverage not matches the brand new setup.
Why begin with LoRA
Low Rank Adaptation (LoRA) is the adapter technique used on this run. It trains a small set of recent weights whereas many of the base OpenVLA checkpoint stays frozen. That makes LoRA a sensible first experiment for a big robotic mannequin as a result of the run makes use of much less reminiscence and produces a smaller adapter checkpoint.

The OpenVLA undertaking studies that LoRA matched full fine-tuning in its parameter-efficient fine-tuning experiments whereas coaching only one.4 p.c of the parameters. That declare helps the selection of LoRA for a primary run, nevertheless it doesn’t make this 100-step run a full mannequin high quality analysis.
For this text, LoRA is helpful as a result of it retains the experiment sufficiently small to run within the pocket book whereas nonetheless utilizing the official OpenVLA fine-tuning script. The result’s a smoke take a look at with actual coaching proof: the dataset hundreds, the adapter trains, metrics are logged, and the completed run syncs to W&B.
The dataset used on this run
LIBERO is a benchmark for language-conditioned robotic manipulation. The spatial cut up focuses on duties the place the robotic should observe spatial relationships between objects, reminiscent of transferring one object relative to a different object. Robotic Studying Dataset Commonplace (RLDS) shops robotic demonstrations as episodes. Every episode comprises observations, language directions, actions, and step metadata. The no_noops suffix signifies that no-op actions have been eliminated, so the coaching knowledge focuses on steps through which the robotic adjustments the duty state. The pocket book downloads the dataset routinely and shops it within the Colab runtime.

The pattern episode under reveals what the dataset comprises. The frames are digicam observations from one robotic demonstration. The instruction for this episode is: “decide up the black bowl on the ramekin and place it on the plate.” The primary motion has seven values: x, y, z, roll, pitch, yaw, and gripper.

The animated GIF under reveals the identical episode over time, whereas the contact sheet above provides a steady nonetheless view for readers and exports.

/content material/knowledge/rlds/modified_libero_rlds
The OpenVLA coaching script wants two dataset values. –data_root_dir factors to the folder that comprises the modified LIBERO RLDS knowledge, and –dataset_name selects the precise LIBERO cut up used for coaching:
--dataset_name libero_spatial_no_noops
These two values are the hyperlink between the downloaded knowledge and the coaching command. If the folder or cut up identify is flawed, OpenVLA can not load the demonstrations.
Dataset license. This run makes use of the libero_spatial_no_noops cut up from the modified LIBERO RLDS knowledge distributed by the OpenVLA undertaking. The LIBERO datasets are launched beneath the Artistic Commons Attribution 4.0 Worldwide (CC BY 4.0) license, which allows industrial use with attribution. The LIBERO and OpenVLA codebases are launched beneath the MIT License. Dataset supply: LIBERO (Liu et al., 2023).
Colab runtime setup
The pocket book is constructed for a single Colab run: set the runtime as soon as, add a Weights & Biases API key in Colab Secrets and techniques, and run the cells from high to backside. It’s designed for an A100 Excessive-RAM Colab runtime, not a free CPU runtime or a small native laptop computer. The purpose is to maintain the experiment sufficiently small for one pocket book session whereas nonetheless utilizing the actual OpenVLA coaching path. The fastened dataset path and automated W&B entity detection preserve the command constant throughout accounts.
Use this runtime kind:
Runtime kind: Python 3
{Hardware} accelerator: A100 GPU
Excessive-RAM: on
The pocket book reads WANDB_API_KEY from Colab Secrets and techniques. Throughout sync, it asks W&B which default entity belongs to the important thing and writes the run there. The ultimate run URL belongs to the account linked to that key.
OpenVLA pins older machine studying dependencies, so the pocket book makes use of two Python environments:
/content material/openvla_venv OpenVLA coaching atmosphere
/content material/wandb_sync_venv W&B sync atmosphere
The coaching atmosphere runs the official OpenVLA script. The sync atmosphere makes use of a present W&B shopper to add the offline run after coaching finishes. This cut up retains the OpenVLA dependency stack steady and nonetheless helps present W&B authentication.
The distinctive half is the sync logic. The pocket book trains offline within the OpenVLA atmosphere, creates a recent sync atmosphere, resolves the entity from the API key, and uploads the offline run:
!pip set up -U wandb
import wandb
from google.colab import userdata
wandb.login(key=userdata.get("WANDB_API_KEY"))
wandb.init(undertaking="openvla-lora-finetune")
Coaching command
The pocket book runs the official OpenVLA LoRA entry level, vla-scripts/finetune.py. The core command is:
torchrun --standalone --nnodes 1 --nproc-per-node 1 vla-scripts/finetune.py
--vla_path openvla/openvla-7b
--data_root_dir /content material/knowledge/rlds/modified_libero_rlds
--dataset_name libero_spatial_no_noops
--run_root_dir /content material/openvla_runs
--adapter_tmp_dir /content material/openvla_adapter_tmp
--lora_rank 32
--batch_size 2
--grad_accumulation_steps 8
--learning_rate 0.0005
--image_aug True
--wandb_project openvla-lora-finetune
--wandb_entity "$WANDB_ENTITY"
--max_steps 100
Gradient accumulation means the coach accumulates gradients throughout a number of small batches earlier than performing a single optimizer replace. The efficient batch dimension is:
efficient batch dimension = batch dimension x gradient accumulation steps x variety of coaching processes
For this run:
2 x 8 x 1 = 16
The run makes use of 100 coaching steps. That is sufficient to confirm that the dataset hundreds, LoRA trains, metrics are logged, and W&B sync works.
The hyperparameters are deliberately conservative for an A100 Colab smoke run. LoRA rank 32 and studying charge 0.0005 observe the OpenVLA LoRA instance’s scale. A batch dimension of two retains GPU reminiscence manageable. Gradient accumulation of 8 provides an efficient batch dimension of 16, whereas the bodily batch dimension stays small. Picture augmentation stays on as a result of the OpenVLA LoRA recipe makes use of it to enhance robustness to visible variation.
Proof captured by the pocket book
On the finish of the Colab run, the pocket book writes an proof folder and zip file:
/content material/openvla_article_outputs/
/content material/openvla_article_outputs.zip
The proof folder comprises:
colab_environment.json
openvla_lora_colab_command.sh
openvla_lora_train_stdout.txt
wandb_run_url.txt
wandb_verified_run.json
The coaching log confirms the precise mannequin and dataset:
Fantastic-tuning OpenVLA Mannequin `openvla/openvla-7b` on `libero_spatial_no_noops`
The verified W&B metadata factors to the synced run:
https://wandb.ai/wb-authors/openvla-lora-finetune/runs/zwo162re
What the run confirmed
The 100-step run produced a visual studying sign. Three metrics matter earlier than studying the numbers. train_loss measures supervised coaching error, so decrease is best. l1_loss measures absolute motion error, so decrease is best. action_accuracy measures how typically predicted motion tokens match demonstrated motion tokens, so greater is best. The necessary end result isn’t the ultimate motion accuracy by itself. The necessary result’s that each one three alerts transfer within the anticipated course throughout an actual coaching run: supervised loss decreases, motion error decreases, and action-token accuracy improves. The W&B abstract recorded:
train_loss: 3.42928
l1_loss: 0.2222
action_accuracy: 0.28571




That is the system proof. system/reminiscence reveals the host’s reminiscence utilization. Course of GPU Energy Utilization (W) and Course of GPU Energy Utilization (%) present that the Colab A100 was energetic throughout the coaching window. Course of GPU energy was roughly 170 to 190 watts for a lot of the run, and course of GPU utilization sat round 40 p.c. These panels assist verify that the pocket book carried out actual GPU coaching work after which synced the metrics to W&B.
These metrics present that OpenVLA LoRA fine-tuning ran on the RLDS dataset, used the A100 GPU, and synced interactive charts to W&B.
Use the tracker as proof
For this sort of robotics tutorial, the experiment tracker is the audit path for the run. The necessary query is whether or not every article declare connects to logged metrics, system telemetry, recordsdata, and metadata from the identical coaching job.
This run makes use of W&B as a result of the pocket book and captured proof had been synced there. The identical proof sample applies to any tracker able to storing metrics, system telemetry, recordsdata, and a steady run URL. The run provides the tutorial a reviewable document:
- Run URL
- Coaching loss curve
- L1 motion loss curve
- Motion accuracy curve
- System reminiscence
- GPU energy utilization
- Synced run recordsdata
The pocket book trains with W&B offline logging first, then syncs the completed run. That makes the run resilient to dependency conflicts whereas nonetheless ending with a dynamic W&B web page that readers can open.
Reproduce the run
Open the companion pocket book:
https://colab.analysis.google.com/drive/1AiiJuFvNUTyQ-eksm9Mj7wAGtvH_V4zQ
Set the runtime to A100 GPU with Excessive-RAM. Add WANDB_API_KEY in Colab Secrets and techniques. Then select:
Runtime -> Run all
The pocket book performs the complete sequence so as. It installs dependencies, clones OpenVLA, levels the modified LIBERO RLDS dataset, creates the OpenVLA Python 3.10 atmosphere, runs the LoRA fine-tune, syncs the offline W&B run, verifies the W&B run URL, and zippers the proof recordsdata.
When the run completes, open the W&B hyperlink printed by the pocket book to examine the run historical past, charts, recordsdata, and metadata.
What this run provides you
A 100-step LoRA run won’t inform you whether or not a robotic coverage is able to deploy. It’ll inform you whether or not the coaching path is wired accurately: the proper dataset hundreds, the official script runs, the adapter receives updates, the graphics processing unit does actual work, and the metrics survive outdoors the pocket book.
That’s the sensible worth of the article. Earlier than scaling to longer coaching, simulation analysis, or actual robotic testing, you may have a compact baseline that’s reproducible, inspectable, and sincere about what it proves.
The identical sample applies past OpenVLA. For any large-model fine-tuning tutorial, the helpful query isn’t solely whether or not the pocket book is full. The helpful query is whether or not the run leaves behind sufficient proof for an additional individual to examine the info, command, metrics, {hardware} exercise, and closing artifacts. For me, that’s the actual lesson: earlier than asking whether or not a fine-tuned robotic mannequin is sweet, first show that the coaching run is actual, reproducible, and measurable.
Sources
- OpenVLA: An Open Supply Imaginative and prescient Language Motion Mannequin, the paper behind the mannequin, structure, dataset scale, and fine-tuning claims.
- OpenVLA undertaking web page, the undertaking description for mannequin construction, robotic evaluations, and parameter-efficient fine-tuning.
- openvla/openvla GitHub repository, the official supply for set up, LoRA command arguments, dataset setup, and coaching scripts.





