kangkb7701/so101-vla-datasets
SO-101 VLA Datasets Vision-Language-Action(VLA) 학습용 데이터셋 모음. SO-101 (SO-ARM101) 팔로워 로봇으로 직접 수집한 tabletop manipulation 데모를 LeRobot v3.0 포맷으로 정리했습니다. 하나의 repo 안에 객체(object) → 태스크(task) → 변형(variant) 계층으로 하위폴더를 나눠 담습니다. Robot: so_follower (SO-ARM101), 6-DoF Format: LeRobot v3.0 — data/*.parquet + videos/*.mp4 + meta/ Modalities: RGB 카메라 2대 + 관절 상태/액션 + 자연어 태스크 지시문 License: Apache-2.0 (필요시 변경 가능) 📁 구조 so101-vla-datasets/ ├── cube/pick-place/ # "orange… See the full description on the dataset page: https://huggingface.co/datasets/kangkb7701/so101-vla-datasets.
SO-101 VLA Datasets
Vision-Language-Action(VLA) 학습용 데이터셋 모음. SO-101 (SO-ARM101) 팔로워 로봇으로 직접 수집한 tabletop manipulation 데모를 LeRobot v3.0 포맷으로 정리했습니다. 하나의 repo 안에 객체(object) → 태스크(task) → 변형(variant) 계층으로 하위폴더를 나눠 담습니다.
- Robot:
so_follower(SO-ARM101), 6-DoF - Format: LeRobot v3.0 —
data/*.parquet+videos/*.mp4+meta/ - Modalities: RGB 카메라 2대 + 관절 상태/액션 + 자연어 태스크 지시문
- License: Apache-2.0 (필요시 변경 가능)
📁 구조
so101-vla-datasets/
├── cube/pick-place/ # "orange cube를 색깔 바구니에 담기"
│ ├── base/ # raw 데모
│ └── vp-sam3-top/ # + SAM3 visual prompt overlay (top view)
├── fruit/pick-place/ # "과일(banana 등)을 3색 바구니에 담기"
│ ├── base/ # raw 데모
│ ├── vp-sam3-dual/ # + SAM3 visual prompt overlay (dual view)
│ ├── vp-vla/ # + VP-VLA: visual-prompt 이벤트 & grounding 타겟
│ ├── vp-vla-ee7/ # + VP-VLA (ee7 변형)
│ ├── act-goal-onehot/ # + goal one-hot 타겟(observation.environment_state)
│ └── act-extra/ # ACT 학습용 추가 데모
├── primitives/ # 초기 태스크 프리미티브 (카메라/fps 구성이 다름)
│ ├── pickup/
│ ├── push/
│ └── put-inside/
└── eval/
└── groot-green/ # 정책 평가용 hold-out📊 서브셋 상세
pick-place계열은 10 FPS · top+wrist 카메라,primitives계열은 30 FPS · front+top 카메라로 수집 구성이 서로 다릅니다. 두 계열을 함께 학습할 때는 카메라 키/프레임레이트 정합에 주의하세요.
🔤 변형(variant) 설명
🧬 Feature schema
action—float32[6]:shoulder_pan.pos, shoulder_lift.pos, elbow_flex.pos, wrist_flex.pos, wrist_roll.pos, gripper.posobservation.state—float32[6]: 위와 동일한 관절 위치observation.images.{top,wrist}또는{front,top}— RGB 비디오 (mp4)- 표준 LeRobot 인덱스:
timestamp, frame_index, episode_index, index, task_index - 태스크 지시문은
meta/tasks.parquet에 저장 (예: "pick the banana and place it in the yellow basket")
🚀 사용법
특정 서브셋만 내려받아 로드합니다. 하위폴더 데이터셋은 표준 한 줄 로드가 안 되므로 `root=`로 경로를 지정하세요.
from huggingface_hub import snapshot_download
from lerobot.common.datasets.lerobot_dataset import LeRobotDataset
subset = "fruit/pick-place/base"
local = snapshot_download(
repo_id="kangkb7701/so101-vla-datasets",
repo_type="dataset",
allow_patterns=f"{subset}/*",
)
ds = LeRobotDataset("kangkb7701/so101-vla-datasets", root=f"{local}/{subset}")
print(ds, ds.num_episodes, ds.num_frames)CLI로 서브셋만 받기:
hf download kangkb7701/so101-vla-datasets --repo-type dataset \
--include "cube/pick-place/base/*" --local-dir ./so101_cube_base🛠️ 빌더 / 재현
빌더 스크립트와 업로드 매니페스트는 GitHub repo에 있습니다. upload_to_hf.py가 원본 폴더 → repo 하위폴더 매핑을 그대로 정의합니다.
📌 인용
이 데이터셋을 사용하시면 아래로 표기해 주세요.
@misc{so101_vla_datasets,
title = {SO-101 VLA Datasets},
author = {kangkb7701},
year = {2025},
howpublished = {\url{https://huggingface.co/datasets/kangkb7701/so101-vla-datasets}}
}