Baseer β€” SmolVLA grasp policy (serums)

Language-conditioned SmolVLA policy for the SO-100 arm, trained for the Baseer project β€” an Arabic voice-controlled assistive arm (Fanar hackathon, Theme 4: Physical AI / Imitation Learning).

The policy grasps a Hair Serum/Face Serum/ Jasmine Perfume or Shea Perfume Perfrom a vanity table and places it at a fixed delivery zone. At deploy time it's paired with Fanar-Oryx localization (the arm pre-positions above the Oryx-located object, then this policy does the final descent + grasp) and a closed-loop torque/width grasp check with retry-on-miss.

Details

  • Architecture: SmolVLA (SmolVLM2-500M backbone, ~450M params, ~100M trainable action expert), language-conditioned.
  • Robot: SO-100 follower (Feetech STS3215), single front camera (640Γ—480 @ 30 fps).
  • Training: 20,000 steps, batch size 32, final loss 0.012 (RTX 6000, ~6.5 h).
  • Tasks: "Pick up the hair serum and place it in the delivery zone" / "... the face serum ...".
  • Dataset: 55CancriE/baseer_serums (28 episodes).

Files

  • model.safetensors β€” policy weights (~1.1 GB)
  • config.json, train_config.json β€” policy + training config
  • policy_preprocessor*, policy_postprocessor* β€” input/output normalization

Usage (LeRobot)

from lerobot.policies.factory import get_policy_class, make_pre_post_processors
from lerobot.configs.policies import PreTrainedConfig

path = "55CancriE/baseer-smolvla-serums"
cfg = PreTrainedConfig.from_pretrained(path)
policy = get_policy_class(cfg.type).from_pretrained(path).eval()
# NOTE: processors are saved with device='cuda'; override for mps/cpu deploy:
pre, post = make_pre_post_processors(
    cfg, pretrained_path=path,
    preprocessor_overrides={"device_processor": {"device": "mps"}},
    postprocessor_overrides={"device_processor": {"device": "mps"}},
)

Or deploy the full localize β†’ grasp β†’ verify β†’ retry β†’ deliver pipeline with backend/agent/agent4_grasp.py in the project repo.

Project: github.com/fatma936-sudo/baseer Β· project page

Downloads last month
60
Safetensors
Model size
0.5B params
Tensor type
F32
Β·
BF16
Β·
Video Preview
loading

Dataset used to train 55CancriE/baseer-smolvla-serums