MiniVLA β€” MyCobot 280 Pi Task2 (v6, Epoch 2)

Vision-Language-Action model fine-tuned for: "Put the yellow block on the shelf onto the black table on the right".

Performance

Metric Value
Overall MAE 1.31
Overall RMSE 2.52
Gripper 3-Class Accuracy 98.03%
Dim MAE
dx 2.58 mm
dy 1.61 mm
dz 1.58 mm
droll 1.19Β°
dpitch 0.75Β°
dyaw 1.43Β°
gripper 0.018

Model

  • Base: prism-qwen25-extra-dinosiglip-224px+0_5b (LIBERO-90 pretrained)
  • LLM: Qwen2.5 0.5B, fully unfrozen
  • Vision: DINOv2 + SigLIP 224px, fully unfrozen
  • Action tokenizer: extra_action_tokenizer (vocab=151921)
  • Total params: 1.25B
  • Training: 90 trajectories, 2 epochs, lr=2e-5 cosine, batch=1

Quick Start

import os
os.environ["PRISMATIC_DATA_ROOT"] = "./"
os.environ["TOKENIZERS_PARALLELISM"] = "false"

from prismatic.models import load_vla
from deploy.mybot_deploy import MyBotDeploy

# 1. Load model
vla = load_vla("purplehihi/minivla-myCobot280pi-task2-v6", hf_token="dummy")

# 2. Load deployment controller
deploy = MyBotDeploy(stats_path="dataset_statistics.json")
deploy.set_current_encoders(current_encoders)  # from robot

# 3. Per-frame inference
action = vla.predict_action(image, instruction, unnorm_key="mycobot_task2")
encoders, gripper_pwm, info = deploy.step(action)
robot.send_angles(encoders.tolist(), speed=50)
robot.set_gripper(gripper_pwm)

Deployment Pipeline (mybot_deploy.py)

VLA output [dx,dy,dz,droll,dpitch,dyaw,gripper]
  β†’ unnormalize (BOUNDS: q01/q99)
  β†’ current EEF + delta = target EEF
  β†’ numerical IK (damped least squares)
  β†’ 6 joint angles β†’ motor encoders
  β†’ gripper [0,1] β†’ PWM [0,100]

The IK uses damped least squares (Levenberg-Marquardt) with numerical Jacobian. Accuracy: ~0.3mm position, ~0.2Β° orientation (100 random tests).

Normalization Bounds

Dim Min Max
dx -35 +35 mm
dy -30 +30 mm
dz -25 +25 mm
droll -25 +25Β°
dpitch -15 +15Β°
dyaw -20 +20Β°
gripper 0 1 (absolute, not normalized)

Files

  • model.pt β€” Fine-tuned weights (step 60920, loss=2.7e-5)
  • dataset_statistics.json β€” Normalization stats with BOUNDS q01/q99
  • config.json β€” Training config and metadata
  • mybot_deploy.py β€” Edge deployment: VLA output β†’ encoder commands + IK
Downloads last month
8
Video Preview
loading