Skip to content
Back to Docs

Fine-tuning Guide

Training methods

MethodVRAMSpeedQuality
loraLowFastGood
qloraLowestMediumGood
fullHighestSlowBest

LoRA fine-tuning

from vlarobot.training import VLATrainer, TrainingConfig

config = TrainingConfig(
    model="openvla-7b",
    dataset="/path/to/demos.hdf5",
    method="lora",
    lora_rank=16,
    num_epochs=10,
    learning_rate=2e-5,
    batch_size=16,
)

trainer = VLATrainer(config)
results = trainer.train()

Prepare your data

from vlarobot.data import VLADataset

# From HDF5
dataset = VLADataset.from_hdf5("demos.hdf5")

# From LeRobot
dataset = VLADataset.from_lerobot("lerobot/pusht")

# Split
train_ds, val_ds = dataset.split(0.8)

Logging with W&B

config = TrainingConfig(
    model="openvla-7b",
    dataset="demos.hdf5",
    wandb_project="my-experiments",
)