Instructions to use TakuyaHiraoka/act_so101_pick_diverse_objects with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- LeRobot
How to use TakuyaHiraoka/act_so101_pick_diverse_objects with LeRobot:
# No code snippets available yet for this library. # To use this model, check the repository files and the library's documentation. # Want to help? PRs adding snippets are welcome at: # https://github.com/huggingface/huggingface.js
- Notebooks
- Google Colab
- Kaggle
Upload folder using huggingface_hub
Browse files
README.md
CHANGED
|
@@ -1,62 +1,114 @@
|
|
| 1 |
---
|
| 2 |
-
datasets: TakuyaHiraoka/
|
| 3 |
library_name: lerobot
|
| 4 |
license: apache-2.0
|
| 5 |
model_name: act
|
| 6 |
pipeline_tag: robotics
|
| 7 |
tags:
|
| 8 |
-
-
|
| 9 |
-
-
|
| 10 |
-
-
|
|
|
|
|
|
|
| 11 |
---
|
| 12 |
|
| 13 |
-
# Model Card for
|
| 14 |
|
| 15 |
-
|
|
|
|
|
|
|
|
|
|
| 16 |
|
|
|
|
|
|
|
|
|
|
| 17 |
|
| 18 |
-
|
|
|
|
|
|
|
| 19 |
|
|
|
|
|
|
|
|
|
|
| 20 |
|
| 21 |
-
|
| 22 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 23 |
|
| 24 |
---
|
| 25 |
|
| 26 |
## How to Get Started with the Model
|
| 27 |
|
| 28 |
-
For a complete walkthrough, see the
|
| 29 |
-
|
| 30 |
|
| 31 |
### Train from scratch
|
| 32 |
|
| 33 |
```bash
|
| 34 |
lerobot-train \
|
| 35 |
-
--dataset.repo_id=${HF_USER}/
|
| 36 |
--policy.type=act \
|
| 37 |
-
--output_dir=outputs/train/
|
| 38 |
--job_name=lerobot_training \
|
| 39 |
--policy.device=cuda \
|
| 40 |
-
--policy.repo_id=${HF_USER}/
|
| 41 |
--wandb.enable=true
|
| 42 |
```
|
| 43 |
|
| 44 |
-
|
|
|
|
| 45 |
|
| 46 |
-
### Evaluate the policy/run inference
|
| 47 |
|
| 48 |
```bash
|
| 49 |
lerobot-record \
|
| 50 |
--robot.type=so100_follower \
|
| 51 |
-
--dataset.repo_id=
|
| 52 |
-
--policy.path=
|
| 53 |
--episodes=10
|
| 54 |
```
|
| 55 |
|
| 56 |
-
Prefix the dataset repo with
|
|
|
|
| 57 |
|
| 58 |
---
|
| 59 |
-
|
| 60 |
-
## Model Details
|
| 61 |
-
|
| 62 |
-
- **License:** apache-2.0
|
|
|
|
| 1 |
---
|
| 2 |
+
datasets: TakuyaHiraoka/so101_pick_diverse_objects
|
| 3 |
library_name: lerobot
|
| 4 |
license: apache-2.0
|
| 5 |
model_name: act
|
| 6 |
pipeline_tag: robotics
|
| 7 |
tags:
|
| 8 |
+
- act
|
| 9 |
+
- so101
|
| 10 |
+
- lerobot
|
| 11 |
+
- imitation-learning
|
| 12 |
+
- human-in-the-loop
|
| 13 |
---
|
| 14 |
|
| 15 |
+
# Model Card for `act_so101_pick_diverse_objects`
|
| 16 |
|
| 17 |
+
This is an [Action Chunking with Transformers (ACT)](https://huggingface.co/papers/2304.13705)
|
| 18 |
+
policy trained to pick up a wide variety of everyday objects with the
|
| 19 |
+
[SO101](https://github.com/TheRobotStudio/SO-ARM100) robotic arm.
|
| 20 |
+
The policy uses **only a wrist-mounted camera** as visual input.
|
| 21 |
|
| 22 |
+
The policy was trained with [LeRobot](https://github.com/huggingface/lerobot)
|
| 23 |
+
and pushed to the Hub. See the full LeRobot documentation at
|
| 24 |
+
[LeRobot Docs](https://huggingface.co/docs/lerobot/index).
|
| 25 |
|
| 26 |
+
**Demo video**
|
| 27 |
+
<video controls src="https://huggingface.co/TakuyaHiraoka/act_so101_pick_diverse_objects/resolve/main/assets/act_rag.mp4"></video>
|
| 28 |
+
<video controls src="https://huggingface.co/TakuyaHiraoka/act_so101_pick_diverse_objects/resolve/main/assets/act_pen.mp4"></video>
|
| 29 |
|
| 30 |
+
---
|
| 31 |
+
|
| 32 |
+
## Model Details
|
| 33 |
|
| 34 |
+
- **Policy class:** ACT (Action Chunking with Transformers)
|
| 35 |
+
- **Robot:** SO101 (single arm)
|
| 36 |
+
- **Observation:** wrist camera only (640 × 480 @ 30 fps) + joint state
|
| 37 |
+
- **Framework:** LeRobot
|
| 38 |
+
- **License:** apache-2.0
|
| 39 |
+
- **Paper:** [arXiv:2304.13705](https://huggingface.co/papers/2304.13705)
|
| 40 |
+
|
| 41 |
+
---
|
| 42 |
+
|
| 43 |
+
## Training Data
|
| 44 |
+
|
| 45 |
+
The policy was trained on a combination of **two datasets** collected on the
|
| 46 |
+
same SO101 setup:
|
| 47 |
+
|
| 48 |
+
### 1. Expert teleoperation data
|
| 49 |
+
- **Dataset:** [TakuyaHiraoka/so101_pick_diverse_objects](https://huggingface.co/datasets/TakuyaHiraoka/so101_pick_diverse_objects)
|
| 50 |
+
- Collected via standard teleoperation by a human expert.
|
| 51 |
+
- Each episode shows the arm moving from a resting pose to grasping a target
|
| 52 |
+
object placed on a tabletop.
|
| 53 |
+
- See the dataset card for details on the objects and environment.
|
| 54 |
+
|
| 55 |
+
### 2. Human-in-the-Loop (HIL) correction data
|
| 56 |
+
- **Dataset:** [TakuyaHiraoka/so101_pick_diverse_objects_hil_round1](https://huggingface.co/datasets/TakuyaHiraoka/so101_pick_diverse_objects_hil_round1)
|
| 57 |
+
- Collected by rolling out a prototype policy (trained on the expert data
|
| 58 |
+
above) and having a human operator intervene to correct failure cases.
|
| 59 |
+
|
| 60 |
+
Combining both sources is intended to improve robustness on objects and
|
| 61 |
+
configurations where pure expert imitation tends to fail.
|
| 62 |
+
|
| 63 |
+
---
|
| 64 |
+
|
| 65 |
+
### Out-of-Scope / Limitations
|
| 66 |
+
|
| 67 |
+
- The policy was trained on a specific tabletop environment and lighting
|
| 68 |
+
condition. Performance can degrade significantly under different
|
| 69 |
+
backgrounds, lighting, or camera mountings.
|
| 70 |
+
- Only a wrist camera is used, so the policy has no global scene context;
|
| 71 |
+
picking objects far outside the wrist camera's field of view is unlikely
|
| 72 |
+
to work.
|
| 73 |
+
- The robot embodiment is fixed (SO101 with the
|
| 74 |
+
[Innomaker U20CAM-1080P-S1](https://github.com/INNO-MAKER/U20CAM-1080P-S1)
|
| 75 |
+
wrist camera). Transferring to other arms or cameras will likely require
|
| 76 |
+
retraining or fine-tuning.
|
| 77 |
|
| 78 |
---
|
| 79 |
|
| 80 |
## How to Get Started with the Model
|
| 81 |
|
| 82 |
+
For a complete walkthrough, see the
|
| 83 |
+
[LeRobot training guide](https://huggingface.co/docs/lerobot/il_robots#train-a-policy).
|
| 84 |
|
| 85 |
### Train from scratch
|
| 86 |
|
| 87 |
```bash
|
| 88 |
lerobot-train \
|
| 89 |
+
--dataset.repo_id=${HF_USER}/ \
|
| 90 |
--policy.type=act \
|
| 91 |
+
--output_dir=outputs/train/ \
|
| 92 |
--job_name=lerobot_training \
|
| 93 |
--policy.device=cuda \
|
| 94 |
+
--policy.repo_id=${HF_USER}/ \
|
| 95 |
--wandb.enable=true
|
| 96 |
```
|
| 97 |
|
| 98 |
+
Checkpoints are written to
|
| 99 |
+
`outputs/train/<desired_policy_repo_id>/checkpoints/`.
|
| 100 |
|
| 101 |
+
### Evaluate the policy / run inference
|
| 102 |
|
| 103 |
```bash
|
| 104 |
lerobot-record \
|
| 105 |
--robot.type=so100_follower \
|
| 106 |
+
--dataset.repo_id=/eval_ \
|
| 107 |
+
--policy.path=TakuyaHiraoka/act_so101_pick_diverse_objects \
|
| 108 |
--episodes=10
|
| 109 |
```
|
| 110 |
|
| 111 |
+
Prefix the evaluation dataset repo with `eval_` and supply `--policy.path`
|
| 112 |
+
pointing to this Hub checkpoint (or a local path).
|
| 113 |
|
| 114 |
---
|
|
|
|
|
|
|
|
|
|
|
|