ailerobotvlapi0-fastsmolvla

LeRobot v0.5: Tổng quan tính năng mới

Tổng quan LeRobot v0.5 — Pi0-FAST, SmolVLA, Real-Time Chunking, HIL-SERL, Unitree G1, PEFT/LoRA, và 10x training speed.

Nguyễn Anh Tuấn8 tháng 4, 202611 phút đọc
LeRobot v0.5: Tổng quan tính năng mới

LeRobot v0.5: Bản cập nhật lớn nhất từ trước đến nay

Sau hơn 6 tháng phát triển với 200+ pull requests từ 50+ contributors, LeRobot v0.5 đã chính thức ra mắt — và đây không phải một bản cập nhật nhỏ. Đây là bước nhảy vọt lớn nhất kể từ khi Hugging Face phát hành LeRobot, mang đến những thay đổi căn bản từ kiến trúc CLI, policy mới, cho đến cách xử lý dataset và hỗ trợ phần cứng.

Nếu bạn đã theo dõi series VLA-LeRobot của chúng tôi, bạn sẽ nhận ra rằng nhiều giới hạn mà chúng ta phải "work around" trong v0.3/v0.4 giờ đã được giải quyết triệt để. Hãy cùng đi qua từng tính năng quan trọng.

AI và robotics đang phát triển nhanh chóng

Tổng quan: Những con số ấn tượng

Trước khi đi vào chi tiết, hãy nhìn qua bức tranh toàn cảnh:

  • 200+ PRs merged từ cộng đồng
  • 50+ contributors trên toàn thế giới
  • 6 policies mới bao gồm Pi0-FAST, SmolVLA, Wall-X, X-VLA, SARM, và HIL-SERL
  • 5 robots mới được hỗ trợ: Unitree G1 (humanoid đầu tiên!), OpenArm, Earth Rover, SO-100, SO-101
  • 10x tốc độ training nhờ streaming video encoding
  • Paper được accept tại ICLR 2026 — xác nhận chất lượng nghiên cứu đằng sau framework

LeRobot v0.5 không chỉ là cập nhật phần mềm — đây là tín hiệu rõ ràng rằng open-source robotics AI đang bước vào giai đoạn trưởng thành.

CLI mới: lerobot-trainlerobot-eval

Tạm biệt python -m lerobot.scripts.*

Một trong những thay đổi đầu tiên bạn sẽ nhận thấy là CLI hoàn toàn mới. Thay vì gọi:

# Cách cũ (deprecated)
python -m lerobot.scripts.train --policy.type=act --dataset.repo_id=lerobot/aloha_sim_insertion_human

Bây giờ bạn dùng:

# Cách mới trong v0.5
lerobot-train --policy.type=act --dataset.repo_id=lerobot/aloha_sim_insertion_human

Tương tự cho evaluation:

# Cách mới
lerobot-eval --policy.path=outputs/train/act_aloha_sim/checkpoints/last/pretrained_model

Và thu thập dữ liệu:

# Record dataset
lerobot-record --robot.type=so100 --repo_id=USER/my_dataset --num_episodes=50

Tại sao thay đổi? Lý do chính là developer experience. Các lệnh python -m dài dòng, dễ gõ sai, và khó nhớ. CLI mới được cài đặt tự động khi bạn pip install lerobot, hoạt động như một command-line tool thực thụ với auto-completion và help messages rõ ràng.

Cấu trúc arguments mới

Arguments giờ được tổ chức theo nhóm logic:

lerobot-train \
  --policy.type=act \                     # Policy configuration
  --policy.chunk_size=100 \
  --dataset.repo_id=lerobot/aloha_sim \   # Dataset configuration
  --dataset.episodes=[0,1,2,3,4] \
  --training.batch_size=64 \              # Training configuration
  --training.steps=100000 \
  --training.lr=1e-5

Cấu trúc này rõ ràng hơn nhiều so với flat arguments trong v0.3/v0.4.

Policies mới: 6 mô hình đột phá

1. Pi0-FAST: Autoregressive VLA, 5x nhanh hơn

Pi0-FAST là sự kết hợp giữa kiến trúc PaliGemma và FAST action tokenizer — một cách tiếp cận hoàn toàn mới để encode robot actions. Thay vì dùng flow matching (iterative denoising) như Pi0 gốc, Pi0-FAST tokenize actions thành discrete tokens và dùng autoregressive decoding với KV-caching.

Kết quả: 5x nhanh hơn inference so với diffusion-based Pi0, với hiệu năng tương đương trên LIBERO benchmark (82.5 average success rate).

# Fine-tune Pi0-FAST
lerobot-train \
  --policy.type=pi0_fast \
  --policy.pretrained_path=lerobot/pi0_fast_base \
  --dataset.repo_id=USER/my_dataset \
  --training.steps=20000

2. SmolVLA: VLA cho consumer GPU

SmolVLA giải quyết vấn đề lớn nhất của VLA models: chúng quá nặng cho phần cứng thông thường. Với chỉ 450M parameters (SmolVLM2-500M backbone + 100M Flow Matching action expert), SmolVLA chạy được trên RTX 3060/4060 — GPU mà bất kỳ ai cũng có thể sở hữu.

Điểm đặc biệt: SmolVLA được train hoàn toàn trên open-source data, đạt 78% real-world success rate trên single-arm manipulation tasks.

# Fine-tune SmolVLA
lerobot-train \
  --policy.path=lerobot/smolvla_base \
  --dataset.repo_id=USER/my_dataset \
  --training.batch_size=64 \
  --training.steps=20000

3. Wall-X: Cross-embodiment Policy

Wall-X mở rộng khái niệm "train một lần, deploy nhiều robot" — một cross-embodiment policy có thể transfer giữa SO-100, ALOHA, và Franka Panda mà không cần retrain từ đầu.

4. X-VLA: Extended VLA Architecture

X-VLA mở rộng kiến trúc VLA truyền thống với multi-modal reasoning, cho phép model xử lý đồng thời hình ảnh, text instructions, và proprioceptive feedback.

5. SARM: Self-Adaptive Robot Manipulation

SARM tập trung vào adaptation — khả năng tự điều chỉnh behavior dựa trên feedback từ environment mà không cần human intervention.

6. HIL-SERL: Human-in-the-Loop RL

HIL-SERL kết hợp reinforcement learning với human feedback, cho phép robot cải thiện liên tục thông qua interaction với operator. Đây là bước tiến quan trọng cho deployment trong môi trường thực tế.

Công nghệ AI ngày càng tiến bộ

Real-Time Chunking: Phản hồi nhanh hơn, mượt hơn

Vấn đề với Action Chunking truyền thống

Trong bài về ACT, chúng ta đã thảo luận về action chunking — predict một chunk gồm nhiều actions cùng lúc thay vì từng action một. Tuy nhiên, có một hạn chế: robot phải chờ thực hiện xong toàn bộ chunk trước khi nhận chunk mới. Điều này tạo ra latency và khiến robot phản ứng chậm với thay đổi bất ngờ.

Real-Time Chunking giải quyết như thế nào

Real-Time Chunking (RTC) cho phép robot liên tục cập nhật plan mà không phải chờ chunk hiện tại kết thúc. Cụ thể:

  1. Model vẫn predict full action chunk (ví dụ: 10 actions)
  2. Nhưng chỉ execute một vài actions đầu trước khi query model lại
  3. Actions mới được blend với actions cũ chưa execute, tạo ra trajectory mượt mà hơn

Cách bật RTC rất đơn giản:

lerobot-train \
  --policy.type=pi0_fast \
  --policy.rtc_config.enabled=true \
  --policy.rtc_config.n_steps_warmup=5 \
  --dataset.repo_id=USER/my_dataset

RTC đặc biệt hiệu quả khi kết hợp với Pi0-FAST nhờ tốc độ inference nhanh — model có thể replan nhiều lần trong khoảng thời gian mà diffusion-based model chỉ kịp predict một lần.

PEFT/LoRA: Fine-tune VLA lớn với chi phí nhỏ

Tại sao cần PEFT?

Các VLA models lớn như Pi0 (3B params) hay OpenVLA (7B params) đòi hỏi nhiều GPU và RAM để fine-tune toàn bộ. PEFT (Parameter-Efficient Fine-Tuning) cho phép bạn chỉ train một tập con rất nhỏ parameters, giảm đáng kể yêu cầu phần cứng.

LoRA trong LeRobot v0.5

LeRobot v0.5 tích hợp LoRA (Low-Rank Adaptation) trực tiếp vào training pipeline:

lerobot-train \
  --policy.type=pi0_fast \
  --policy.pretrained_path=lerobot/pi0_fast_base \
  --policy.peft_config.use_peft=true \
  --policy.peft_config.lora_r=16 \
  --policy.peft_config.lora_alpha=32 \
  --dataset.repo_id=USER/my_dataset \
  --training.steps=10000

Với LoRA rank 16, bạn chỉ train khoảng 0.5% tổng số parameters, giảm VRAM từ 40GB xuống còn 8-12GB — vừa đủ cho một RTX 4090 hoặc thậm chí RTX 3090.

Nếu bạn đã đọc bài về VLA models, bạn sẽ thấy PEFT/LoRA là giải pháp thực tế nhất để democratize VLA fine-tuning cho cộng đồng.

Robots mới: Từ single-arm đến humanoid

Unitree G1: Humanoid đầu tiên trong LeRobot

Đây có lẽ là tính năng được mong đợi nhất: LeRobot giờ hỗ trợ Unitree G1 — humanoid robot đầu tiên trong framework. Bạn có thể:

  • Thu thập dữ liệu teleop cho whole-body control
  • Train VLA policies cho manipulation tasks
  • Chạy sim-to-real transfer với MJPC environments
# Record trên Unitree G1
lerobot-record \
  --robot.type=unitree_g1 \
  --repo_id=USER/g1_dataset \
  --num_episodes=20

OpenArm: Low-cost open-source arm

OpenArm là cánh tay robot giá rẻ mới, thiết kế cho giáo dục và nghiên cứu. Hoàn toàn 3D-printable, dùng servo giá rẻ, và tương thích đầy đủ với LeRobot pipeline.

Earth Rover: Mobile robotics

Earth Rover mở rộng LeRobot ra ngoài manipulation — bây giờ bạn có thể dùng cùng framework cho mobile robotics, navigation, và exploration.

SO-100 và SO-101

SO-100 và SO-101 là evolution của SO-100 arm, với cải tiến về accuracy, build quality, và tích hợp camera tốt hơn.

Dataset Improvements: 10x tốc độ training

Streaming Video Encoding

Đây là thay đổi âm thầm nhưng ảnh hưởng lớn nhất đến trải nghiệm sử dụng hàng ngày. Trước v0.5, LeRobot lưu images dưới dạng individual PNG/JPEG files — mỗi frame là một file riêng. Với dataset 1000 episodes ở 30 FPS, bạn có thể có hàng triệu files nhỏ, gây:

  • Chậm khi load từ disk (I/O overhead)
  • Tốn dung lượng (PNG không nén hiệu quả)
  • Chậm khi upload/download từ Hugging Face Hub

V0.5 chuyển sang streaming video encoding — toàn bộ visual observations được encode thành video files (MP4/WebM), và được decode on-the-fly trong training. Kết quả:

  • 10x tốc độ data loading nhờ giảm I/O
  • 5-8x giảm dung lượng nhờ video compression
  • Seamless streaming từ Hugging Face Hub mà không cần download toàn bộ

Subtask Annotation

V0.5 cho phép annotate subtasks trong mỗi episode, giúp model học hierarchical behavior:

# Ví dụ annotation
{
    "episode_0": {
        "subtasks": [
            {"start": 0, "end": 45, "label": "reach_object"},
            {"start": 45, "end": 90, "label": "grasp_object"},
            {"start": 90, "end": 150, "label": "place_object"}
        ]
    }
}

Điều này đặc biệt hữu ích cho long-horizon tasks và multi-step manipulation.

EnvHub: Sim environments từ Hugging Face

EnvHub cho phép bạn load simulation environments trực tiếp từ Hugging Face Hub, giống như cách bạn load models và datasets:

# Load environment từ Hub
lerobot-eval \
  --policy.path=USER/my_policy \
  --env.type=hub \
  --env.repo_id=lerobot/libero_object

Điều này giải quyết vấn đề lớn: trước đây, setup simulation environments là rào cản lớn nhất cho người mới. Bạn phải cài MuJoCo, Isaac Gym, hoặc PyBullet riêng, configure paths, install dependencies — tất cả trước khi chạy được dòng code đầu tiên.

Với EnvHub, bạn chỉ cần pip install lerobot và mọi thứ hoạt động.

Tương lai của robot learning

Yêu cầu hệ thống mới

Python 3.12+ bắt buộc

V0.5 yêu cầu Python 3.12 trở lên. Nếu bạn đang dùng Python 3.10 hoặc 3.11, cần nâng cấp trước khi update.

# Kiểm tra version
python --version

# Nếu cần, cài Python 3.12
# Ubuntu/Debian
sudo apt install python3.12 python3.12-venv

Transformers v5

LeRobot v0.5 yêu cầu Hugging Face Transformers v5, đi kèm nhiều cải tiến về performance và support cho các model mới.

Quick Start: Từ cài đặt đến training

Bước 1: Cài đặt LeRobot v0.5

# Tạo virtual environment
python3.12 -m venv lerobot-env
source lerobot-env/bin/activate

# Cài đặt LeRobot
pip install lerobot

# Hoặc từ source (khuyến nghị cho development)
git clone https://github.com/huggingface/lerobot.git
cd lerobot
pip install -e ".[dev]"

Bước 2: Train ACT trên simulation

lerobot-train \
  --policy.type=act \
  --dataset.repo_id=lerobot/aloha_sim_insertion_human \
  --training.batch_size=8 \
  --training.steps=100000

Bước 3: Train Pi0-FAST

pip install -e ".[pi]"

lerobot-train \
  --policy.type=pi0_fast \
  --policy.pretrained_path=lerobot/pi0_fast_base \
  --dataset.repo_id=lerobot/aloha_sim_insertion_human \
  --training.steps=20000 \
  --training.dtype=bfloat16

Bước 4: Train SmolVLA

pip install -e ".[smolvla]"

lerobot-train \
  --policy.path=lerobot/smolvla_base \
  --dataset.repo_id=USER/my_dataset \
  --training.batch_size=64 \
  --training.steps=20000

Bước 5: Evaluate

lerobot-eval \
  --policy.path=outputs/train/checkpoints/last/pretrained_model \
  --env.type=libero \
  --env.task=libero_object

Migration Guide: Từ v0.3/v0.4 lên v0.5

Breaking changes quan trọng

  1. CLI hoàn toàn mới: python -m lerobot.scripts.train thay bằng lerobot-train
  2. Python 3.12+ bắt buộc: Không còn hỗ trợ Python 3.10/3.11
  3. Dataset format mới: Video encoding thay vì image files
  4. Config system mới: Arguments tổ chức theo groups (policy., dataset., training.)
  5. Policy API changes: Một số class names và method signatures đã thay đổi

Chuyển đổi dataset cũ

# Convert dataset từ v0.3/v0.4 format sang v0.5
lerobot-convert-dataset \
  --repo_id=USER/old_dataset \
  --output_repo_id=USER/new_dataset \
  --encode_videos=true

Chuyển đổi training scripts

Nếu bạn có custom training scripts, cần cập nhật imports:

# Cũ (v0.3/v0.4)
from lerobot.common.policies.act.configuration_act import ACTConfig
from lerobot.common.policies.act.modeling_act import ACTPolicy

# Mới (v0.5) - vẫn tương thích nhưng khuyến nghị dùng CLI
# Hoặc dùng API mới:
from lerobot.policies import ACTPolicy, ACTConfig

Lộ trình phía trước

LeRobot v0.5 đặt nền tảng cho những phát triển tiếp theo:

  • v0.6 (dự kiến): Multi-task learning, shared representations across tasks
  • v0.7+: Multi-robot coordination, fleet learning
  • Dài hạn: Foundation models cho robotics, zero-shot transfer

Nếu bạn muốn đi sâu vào từng policy mới, hãy theo dõi hai bài tiếp theo trong series: SmolVLA training guidePi0-FAST training guide.

Kết luận

LeRobot v0.5 đánh dấu bước chuyển từ "research framework" sang "production-ready platform". Với CLI mới dễ dùng, policies mạnh mẽ chạy được trên consumer hardware, và dataset pipeline nhanh gấp 10 lần, rào cản để bắt đầu với robot learning chưa bao giờ thấp đến thế.

Đặc biệt, sự xuất hiện của SmolVLA (450M params, chạy trên RTX 3060) và PEFT/LoRA support có nghĩa là bất kỳ ai có một GPU tầm trung cũng có thể train VLA model cho robot thật. Đây là democratization thực sự của robot AI.

Nếu bạn quan tâm đến nền tảng lý thuyết của các mô hình này, hãy đọc bài về Diffusion Policytổng quan về VLA models để hiểu rõ hơn.


Bài viết liên quan

NT

Nguyễn Anh Tuấn

Robotics & AI Engineer. Building VnRobo — sharing knowledge about robot learning, VLA models, and automation.

Bài viết liên quan

NEWTutorial
Hướng dẫn GigaBrain-0: VLA + World Model + RL
vlaworld-modelreinforcement-learninggigabrainroboticsmanipulation

Hướng dẫn GigaBrain-0: VLA + World Model + RL

Hướng dẫn chi tiết huấn luyện VLA bằng World Model và Reinforcement Learning với framework RAMP từ GigaBrain — open-source, 3.5B params.

12/4/202611 phút đọc
NEWTutorial
StarVLA: Xây dựng VLA Model mô-đun
vlastarvlarobot-manipulationaideep-learningqwen-vlflow-matchingiclr-2026

StarVLA: Xây dựng VLA Model mô-đun

Hướng dẫn chi tiết xây dựng Vision-Language-Action model với StarVLA — framework mô-đun kiểu Lego từ ICLR 2026, hỗ trợ 4 kiến trúc action head.

12/4/202611 phút đọc
NEWTutorial
Hướng dẫn fine-tune NVIDIA GR00T N1
vlahumanoidnvidiaisaac-labfine-tuningdeep-learninggrootsim2real

Hướng dẫn fine-tune NVIDIA GR00T N1

Hướng dẫn chi tiết fine-tune VLA model GR00T N1 cho humanoid robot với Isaac Lab và dữ liệu AGIBOT World — từ cài đặt đến inference.

12/4/202612 phút đọc