中文

SmolVLA

为新一代机器人技术设计的紧凑、高效、开源的视觉语言动作 (VLA) 模型。

🚀 认识 SmolVLA

SmolVLA 是由 Hugging Face 开发的一款仅有 4.5 亿参数的开创性视觉语言动作 (VLA) 模型。它经过精心设计,旨在在消费级硬件上实现经济高效的部署,让先进的机器人技术走进更多开发者和爱好者。

基于开放社区 LeRobot 的数据集进行训练,SmolVLA 真正体现了开源协同的力量,其性能可与规模更大的专有模型相媲美甚至超越。

📌 核心特性

紧凑高效的架构

结合精简的 SmolVLM-2 视觉语言模型和 Flow-Matching Transformer 动作专家,实现无与伦比的效率。

异步推理

通过将动作预测与执行解耦,实现实时响应,将任务完成时间平均缩短约30%。

开放与社区驱动

完全在 Hugging Face 上公开的 LeRobot 社区数据集上训练,并以开放源码形式发布,鼓励广泛使用和研究。

卓越性能

在 LIBERO 和 Meta-World 等模拟环境中表现出色,并在真实世界任务中取得了约 78.3% 的平均成功率。

🎬 运行实例

SmolVLA 概览

社区 DIY 机器人视频

🛠️ 快速上手指南

📋 模型概览

SmolVLA 是一个拥有4.5亿参数的视觉语言动作模型,专为经济实惠且高效的机器人技术而设计。它针对消费级硬件进行了优化,同时保持了竞争性的性能。

参数量: 4.5亿
月下载量: 15,383+
微调模型: 29个

1. 环境设置

在开始之前,您需要按照安装指南正确设置环境。

git clone https://github.com/huggingface/lerobot.git
cd lerobot
pip install -e ".[smolvla]"

2. 加载预训练模型

最快体验 SmolVLA 的方式是直接从 Hugging Face 加载预训练模型。

from lerobot.common.policies.smolvla.modeling_smolvla import SmolVLAPolicy
policy = SmolVLAPolicy.from_pretrained("lerobot/smolvla_base")

3. 微调预训练模型

在特定数据集上微调 SmolVLA 以获得更好的任务性能。此示例使用 SO101 抓取-放置数据集。

python lerobot/scripts/train.py \
  --policy.path=lerobot/smolvla_base \
  --dataset.repo_id=lerobot/svla_so101_pickplace \
  --batch_size=64 \
  --steps=20000 \
  --output_dir=outputs/train/my_smolvla \
  --job_name=my_smolvla_training \
  --policy.device=cuda \
  --wandb.enable=true

4. 从头开始训练

使用预训练的VLM和从零初始化的动作专家来训练 SmolVLA 神经网络。

python lerobot/scripts/train.py \
  --dataset.repo_id=lerobot/svla_so101_pickplace \
  --batch_size=64 \
  --steps=200000 \
  --output_dir=outputs/train/my_smolvla \
  --job_name=my_smolvla_training \
  --policy.device=cuda \
  --wandb.enable=true

🗂️ 数据集信息

SmolVLA 在社区贡献的数据集上进行训练。svla_so101_pickplace 数据集包含:

📊 更多资源

🤝 社区微调模型

探索社区构建的惊人应用!这些29个微调模型展示了SmolVLA在各种机器人任务中的多功能性。

📊 训练数据集探索器

探索用于训练SmolVLA的svla_so101_pickplace数据集。这个交互式查看器展示了真实的机器人演示数据。

💡 提示: 使用数据集查看器来了解SmolVLA学习的动作序列、摄像头角度和机器人状态。

🌐 资源与社群

加入我们,共同推进开放、经济、高效的机器人技术。我们欢迎您贡献数据、改进代码或分享您的项目。