Robotics
LeRobot
Safetensors
smolvla
Beable commited on
Commit
48407ba
·
verified ·
1 Parent(s): 804c4df

Upload policy weights, train config and readme

Browse files
Files changed (4) hide show
  1. README.md +63 -0
  2. config.json +8 -8
  3. model.safetensors +1 -1
  4. train_config.json +24 -24
README.md ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ base_model: lerobot/smolvla_base
3
+ datasets: Beable/lerobot-SOARM100-sim2
4
+ library_name: lerobot
5
+ license: apache-2.0
6
+ model_name: smolvla
7
+ pipeline_tag: robotics
8
+ tags:
9
+ - lerobot
10
+ - robotics
11
+ - smolvla
12
+ ---
13
+
14
+ # Model Card for smolvla
15
+
16
+ <!-- Provide a quick summary of what the model is/does. -->
17
+
18
+
19
+ [SmolVLA](https://huggingface.co/papers/2506.01844) is a compact, efficient vision-language-action model that achieves competitive performance at reduced computational costs and can be deployed on consumer-grade hardware.
20
+
21
+
22
+ This policy has been trained and pushed to the Hub using [LeRobot](https://github.com/huggingface/lerobot).
23
+ See the full documentation at [LeRobot Docs](https://huggingface.co/docs/lerobot/index).
24
+
25
+ ---
26
+
27
+ ## How to Get Started with the Model
28
+
29
+ For a complete walkthrough, see the [training guide](https://huggingface.co/docs/lerobot/il_robots#train-a-policy).
30
+ Below is the short version on how to train and run inference/eval:
31
+
32
+ ### Train from scratch
33
+
34
+ ```bash
35
+ lerobot-train \
36
+ --dataset.repo_id=${HF_USER}/<dataset> \
37
+ --policy.type=act \
38
+ --output_dir=outputs/train/<desired_policy_repo_id> \
39
+ --job_name=lerobot_training \
40
+ --policy.device=cuda \
41
+ --policy.repo_id=${HF_USER}/<desired_policy_repo_id>
42
+ --wandb.enable=true
43
+ ```
44
+
45
+ _Writes checkpoints to `outputs/train/<desired_policy_repo_id>/checkpoints/`._
46
+
47
+ ### Evaluate the policy/run inference
48
+
49
+ ```bash
50
+ lerobot-record \
51
+ --robot.type=so100_follower \
52
+ --dataset.repo_id=<hf_user>/eval_<dataset> \
53
+ --policy.path=<hf_user>/<desired_policy_repo_id> \
54
+ --episodes=10
55
+ ```
56
+
57
+ Prefix the dataset repo with **eval\_** and supply `--policy.path` pointing to a local or hub checkpoint.
58
+
59
+ ---
60
+
61
+ ## Model Details
62
+
63
+ - **License:** apache-2.0
config.json CHANGED
@@ -11,8 +11,8 @@
11
  "type": "VISUAL",
12
  "shape": [
13
  3,
14
- 360,
15
- 640
16
  ]
17
  },
18
  "observation.state": {
@@ -32,8 +32,8 @@
32
  },
33
  "device": "cuda",
34
  "use_amp": false,
35
- "push_to_hub": false,
36
- "repo_id": null,
37
  "private": null,
38
  "tags": null,
39
  "license": null,
@@ -51,16 +51,16 @@
51
  "tokenizer_max_length": 48,
52
  "num_steps": 10,
53
  "use_cache": true,
54
- "freeze_vision_encoder": true,
55
- "train_expert_only": true,
56
  "train_state_proj": true,
57
- "optimizer_lr": 0.0001,
58
  "optimizer_betas": [
59
  0.9,
60
  0.95
61
  ],
62
  "optimizer_eps": 1e-08,
63
- "optimizer_weight_decay": 1e-10,
64
  "optimizer_grad_clip_norm": 10,
65
  "scheduler_warmup_steps": 1000,
66
  "scheduler_decay_steps": 30000,
 
11
  "type": "VISUAL",
12
  "shape": [
13
  3,
14
+ 720,
15
+ 1280
16
  ]
17
  },
18
  "observation.state": {
 
32
  },
33
  "device": "cuda",
34
  "use_amp": false,
35
+ "push_to_hub": true,
36
+ "repo_id": "Beable/leroVLA",
37
  "private": null,
38
  "tags": null,
39
  "license": null,
 
51
  "tokenizer_max_length": 48,
52
  "num_steps": 10,
53
  "use_cache": true,
54
+ "freeze_vision_encoder": false,
55
+ "train_expert_only": false,
56
  "train_state_proj": true,
57
+ "optimizer_lr": 1e-05,
58
  "optimizer_betas": [
59
  0.9,
60
  0.95
61
  ],
62
  "optimizer_eps": 1e-08,
63
+ "optimizer_weight_decay": 0.0001,
64
  "optimizer_grad_clip_norm": 10,
65
  "scheduler_warmup_steps": 1000,
66
  "scheduler_decay_steps": 30000,
model.safetensors CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:de1d0562a61e5a3310a1a486f38aea8707b3493667b62b5bd8afce52d32ca9c6
3
  size 1197790016
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:41f9cc12e3298863908f85a0dbf8696f88a6f9f8ed256ebbfbd594de9351197a
3
  size 1197790016
train_config.json CHANGED
@@ -1,10 +1,10 @@
1
  {
2
  "dataset": {
3
- "repo_id": "Beable/lerobot-SOARM100-sim",
4
  "root": null,
5
  "episodes": null,
6
  "image_transforms": {
7
- "enable": false,
8
  "max_num_transforms": 3,
9
  "random_order": false,
10
  "tfs": {
@@ -60,10 +60,10 @@
60
  }
61
  }
62
  },
63
- "revision": null,
64
  "use_imagenet_stats": true,
65
- "video_backend": "pyav",
66
- "tolerance_s": 0.2,
67
  "timestamps_check": "warn"
68
  },
69
  "env": null,
@@ -80,8 +80,8 @@
80
  "type": "VISUAL",
81
  "shape": [
82
  3,
83
- 360,
84
- 640
85
  ]
86
  },
87
  "observation.state": {
@@ -101,8 +101,8 @@
101
  },
102
  "device": "cuda",
103
  "use_amp": false,
104
- "push_to_hub": false,
105
- "repo_id": null,
106
  "private": null,
107
  "tags": null,
108
  "license": null,
@@ -120,16 +120,16 @@
120
  "tokenizer_max_length": 48,
121
  "num_steps": 10,
122
  "use_cache": true,
123
- "freeze_vision_encoder": true,
124
- "train_expert_only": true,
125
  "train_state_proj": true,
126
- "optimizer_lr": 0.0001,
127
  "optimizer_betas": [
128
  0.9,
129
  0.95
130
  ],
131
  "optimizer_eps": 1e-08,
132
- "optimizer_weight_decay": 1e-10,
133
  "optimizer_grad_clip_norm": 10,
134
  "scheduler_warmup_steps": 1000,
135
  "scheduler_decay_steps": 30000,
@@ -147,22 +147,22 @@
147
  "min_period": 0.004,
148
  "max_period": 4.0
149
  },
150
- "output_dir": "outputs/train/vla_ft",
151
- "job_name": "smolvla_ft",
152
  "resume": false,
153
  "seed": 1000,
154
  "num_workers": 4,
155
- "batch_size": 32,
156
- "steps": 20000,
157
  "eval_freq": 20000,
158
- "log_freq": 50,
159
  "save_checkpoint": true,
160
- "save_freq": 20000,
161
  "use_policy_training_preset": true,
162
  "optimizer": {
163
  "type": "adamw",
164
- "lr": 0.0001,
165
- "weight_decay": 1e-10,
166
  "grad_clip_norm": 10,
167
  "betas": [
168
  0.9,
@@ -174,12 +174,12 @@
174
  "type": "cosine_decay_with_warmup",
175
  "num_warmup_steps": 1000,
176
  "num_decay_steps": 30000,
177
- "peak_lr": 0.0001,
178
  "decay_lr": 2.5e-06
179
  },
180
  "eval": {
181
- "n_episodes": 0,
182
- "batch_size": 0,
183
  "use_async_envs": false
184
  },
185
  "wandb": {
 
1
  {
2
  "dataset": {
3
+ "repo_id": "Beable/lerobot-SOARM100-sim2",
4
  "root": null,
5
  "episodes": null,
6
  "image_transforms": {
7
+ "enable": true,
8
  "max_num_transforms": 3,
9
  "random_order": false,
10
  "tfs": {
 
60
  }
61
  }
62
  },
63
+ "revision": "v2.1",
64
  "use_imagenet_stats": true,
65
+ "video_backend": "torchcodec",
66
+ "tolerance_s": 0.02,
67
  "timestamps_check": "warn"
68
  },
69
  "env": null,
 
80
  "type": "VISUAL",
81
  "shape": [
82
  3,
83
+ 720,
84
+ 1280
85
  ]
86
  },
87
  "observation.state": {
 
101
  },
102
  "device": "cuda",
103
  "use_amp": false,
104
+ "push_to_hub": true,
105
+ "repo_id": "Beable/leroVLA",
106
  "private": null,
107
  "tags": null,
108
  "license": null,
 
120
  "tokenizer_max_length": 48,
121
  "num_steps": 10,
122
  "use_cache": true,
123
+ "freeze_vision_encoder": false,
124
+ "train_expert_only": false,
125
  "train_state_proj": true,
126
+ "optimizer_lr": 1e-05,
127
  "optimizer_betas": [
128
  0.9,
129
  0.95
130
  ],
131
  "optimizer_eps": 1e-08,
132
+ "optimizer_weight_decay": 0.0001,
133
  "optimizer_grad_clip_norm": 10,
134
  "scheduler_warmup_steps": 1000,
135
  "scheduler_decay_steps": 30000,
 
147
  "min_period": 0.004,
148
  "max_period": 4.0
149
  },
150
+ "output_dir": "outputs/train/2025-08-14/02-35-56_smolvla",
151
+ "job_name": "smolvla",
152
  "resume": false,
153
  "seed": 1000,
154
  "num_workers": 4,
155
+ "batch_size": 4,
156
+ "steps": 15000,
157
  "eval_freq": 20000,
158
+ "log_freq": 100,
159
  "save_checkpoint": true,
160
+ "save_freq": 2000,
161
  "use_policy_training_preset": true,
162
  "optimizer": {
163
  "type": "adamw",
164
+ "lr": 1e-05,
165
+ "weight_decay": 0.0001,
166
  "grad_clip_norm": 10,
167
  "betas": [
168
  0.9,
 
174
  "type": "cosine_decay_with_warmup",
175
  "num_warmup_steps": 1000,
176
  "num_decay_steps": 30000,
177
+ "peak_lr": 1e-05,
178
  "decay_lr": 2.5e-06
179
  },
180
  "eval": {
181
+ "n_episodes": 50,
182
+ "batch_size": 50,
183
  "use_async_envs": false
184
  },
185
  "wandb": {