Robotics
LeRobot
Safetensors
smolvla
matanxp commited on
Commit
c7ec8ec
·
verified ·
1 Parent(s): be4ca93

Upload policy weights, train config and readme

Browse files
Files changed (4) hide show
  1. README.md +7 -6
  2. config.json +42 -23
  3. model.safetensors +2 -2
  4. train_config.json +57 -32
README.md CHANGED
@@ -1,21 +1,22 @@
1
  ---
 
2
  datasets: matanxp/record-complex-25
3
  library_name: lerobot
4
  license: apache-2.0
5
- model_name: act
6
  pipeline_tag: robotics
7
  tags:
8
  - lerobot
9
- - act
10
  - robotics
11
  ---
12
 
13
- # Model Card for act
14
 
15
  <!-- Provide a quick summary of what the model is/does. -->
16
 
17
 
18
- [Action Chunking with Transformers (ACT)](https://huggingface.co/papers/2304.13705) is an imitation-learning method that predicts short action chunks instead of single steps. It learns from teleoperated data and often achieves high success rates.
19
 
20
 
21
  This policy has been trained and pushed to the Hub using [LeRobot](https://github.com/huggingface/lerobot).
@@ -31,7 +32,7 @@ Below is the short version on how to train and run inference/eval:
31
  ### Train from scratch
32
 
33
  ```bash
34
- python -m lerobot.scripts.train \
35
  --dataset.repo_id=${HF_USER}/<dataset> \
36
  --policy.type=act \
37
  --output_dir=outputs/train/<desired_policy_repo_id> \
@@ -46,7 +47,7 @@ _Writes checkpoints to `outputs/train/<desired_policy_repo_id>/checkpoints/`._
46
  ### Evaluate the policy/run inference
47
 
48
  ```bash
49
- python -m lerobot.record \
50
  --robot.type=so100_follower \
51
  --dataset.repo_id=<hf_user>/eval_<dataset> \
52
  --policy.path=<hf_user>/<desired_policy_repo_id> \
 
1
  ---
2
+ base_model: lerobot/smolvla_base
3
  datasets: matanxp/record-complex-25
4
  library_name: lerobot
5
  license: apache-2.0
6
+ model_name: smolvla
7
  pipeline_tag: robotics
8
  tags:
9
  - lerobot
10
+ - smolvla
11
  - robotics
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).
 
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> \
 
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> \
config.json CHANGED
@@ -1,8 +1,8 @@
1
  {
2
- "type": "act",
3
  "n_obs_steps": 1,
4
  "normalization_mapping": {
5
- "VISUAL": "MEAN_STD",
6
  "STATE": "MEAN_STD",
7
  "ACTION": "MEAN_STD"
8
  },
@@ -37,25 +37,44 @@
37
  "private": null,
38
  "tags": null,
39
  "license": null,
40
- "chunk_size": 100,
41
- "n_action_steps": 100,
42
- "vision_backbone": "resnet18",
43
- "pretrained_backbone_weights": "ResNet18_Weights.IMAGENET1K_V1",
44
- "replace_final_stride_with_dilation": false,
45
- "pre_norm": false,
46
- "dim_model": 512,
47
- "n_heads": 8,
48
- "dim_feedforward": 3200,
49
- "feedforward_activation": "relu",
50
- "n_encoder_layers": 4,
51
- "n_decoder_layers": 1,
52
- "use_vae": true,
53
- "latent_dim": 32,
54
- "n_vae_encoder_layers": 4,
55
- "temporal_ensemble_coeff": null,
56
- "dropout": 0.1,
57
- "kl_weight": 10.0,
58
- "optimizer_lr": 1e-05,
59
- "optimizer_weight_decay": 0.0001,
60
- "optimizer_lr_backbone": 1e-05
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
61
  }
 
1
  {
2
+ "type": "smolvla",
3
  "n_obs_steps": 1,
4
  "normalization_mapping": {
5
+ "VISUAL": "IDENTITY",
6
  "STATE": "MEAN_STD",
7
  "ACTION": "MEAN_STD"
8
  },
 
37
  "private": null,
38
  "tags": null,
39
  "license": null,
40
+ "chunk_size": 50,
41
+ "n_action_steps": 50,
42
+ "max_state_dim": 32,
43
+ "max_action_dim": 32,
44
+ "resize_imgs_with_padding": [
45
+ 512,
46
+ 512
47
+ ],
48
+ "empty_cameras": 0,
49
+ "adapt_to_pi_aloha": false,
50
+ "use_delta_joint_actions_aloha": false,
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.0,
65
+ "scheduler_warmup_steps": 1000,
66
+ "scheduler_decay_steps": 30000,
67
+ "scheduler_decay_lr": 2.5e-06,
68
+ "vlm_model_name": "HuggingFaceTB/SmolVLM2-500M-Video-Instruct",
69
+ "load_vlm_weights": true,
70
+ "add_image_special_tokens": false,
71
+ "attention_mode": "cross_attn",
72
+ "prefix_length": 0,
73
+ "pad_language_to": "max_length",
74
+ "num_expert_layers": 0,
75
+ "num_vlm_layers": 16,
76
+ "self_attn_every_n_layers": 2,
77
+ "expert_width_multiplier": 0.75,
78
+ "min_period": 0.004,
79
+ "max_period": 4.0
80
  }
model.safetensors CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:8318c083f29ffa4a0cd652762ea92fa710f5f309189bfeaded9f9b39bdd0bd0a
3
- size 206700792
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e5a9046fc1758ef60be392e471c1aade1e729dda713d94bca1d993f58859c264
3
+ size 906713296
train_config.json CHANGED
@@ -66,10 +66,10 @@
66
  },
67
  "env": null,
68
  "policy": {
69
- "type": "act",
70
  "n_obs_steps": 1,
71
  "normalization_mapping": {
72
- "VISUAL": "MEAN_STD",
73
  "STATE": "MEAN_STD",
74
  "ACTION": "MEAN_STD"
75
  },
@@ -104,35 +104,54 @@
104
  "private": null,
105
  "tags": null,
106
  "license": null,
107
- "chunk_size": 100,
108
- "n_action_steps": 100,
109
- "vision_backbone": "resnet18",
110
- "pretrained_backbone_weights": "ResNet18_Weights.IMAGENET1K_V1",
111
- "replace_final_stride_with_dilation": false,
112
- "pre_norm": false,
113
- "dim_model": 512,
114
- "n_heads": 8,
115
- "dim_feedforward": 3200,
116
- "feedforward_activation": "relu",
117
- "n_encoder_layers": 4,
118
- "n_decoder_layers": 1,
119
- "use_vae": true,
120
- "latent_dim": 32,
121
- "n_vae_encoder_layers": 4,
122
- "temporal_ensemble_coeff": null,
123
- "dropout": 0.1,
124
- "kl_weight": 10.0,
125
- "optimizer_lr": 1e-05,
126
- "optimizer_weight_decay": 0.0001,
127
- "optimizer_lr_backbone": 1e-05
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
  },
129
- "output_dir": "outputs/train/act_record-complex-25",
130
- "job_name": "act_record-complex-25",
131
  "resume": false,
132
  "seed": 1000,
133
  "num_workers": 4,
134
- "batch_size": 8,
135
- "steps": 100000,
136
  "eval_freq": 20000,
137
  "log_freq": 200,
138
  "save_checkpoint": true,
@@ -140,16 +159,22 @@
140
  "use_policy_training_preset": true,
141
  "optimizer": {
142
  "type": "adamw",
143
- "lr": 1e-05,
144
- "weight_decay": 0.0001,
145
  "grad_clip_norm": 10.0,
146
  "betas": [
147
  0.9,
148
- 0.999
149
  ],
150
  "eps": 1e-08
151
  },
152
- "scheduler": null,
 
 
 
 
 
 
153
  "eval": {
154
  "n_episodes": 50,
155
  "batch_size": 50,
@@ -161,7 +186,7 @@
161
  "project": "lerobot",
162
  "entity": null,
163
  "notes": null,
164
- "run_id": "k779etf4",
165
  "mode": null
166
  }
167
  }
 
66
  },
67
  "env": null,
68
  "policy": {
69
+ "type": "smolvla",
70
  "n_obs_steps": 1,
71
  "normalization_mapping": {
72
+ "VISUAL": "IDENTITY",
73
  "STATE": "MEAN_STD",
74
  "ACTION": "MEAN_STD"
75
  },
 
104
  "private": null,
105
  "tags": null,
106
  "license": null,
107
+ "chunk_size": 50,
108
+ "n_action_steps": 50,
109
+ "max_state_dim": 32,
110
+ "max_action_dim": 32,
111
+ "resize_imgs_with_padding": [
112
+ 512,
113
+ 512
114
+ ],
115
+ "empty_cameras": 0,
116
+ "adapt_to_pi_aloha": false,
117
+ "use_delta_joint_actions_aloha": false,
118
+ "tokenizer_max_length": 48,
119
+ "num_steps": 10,
120
+ "use_cache": true,
121
+ "freeze_vision_encoder": true,
122
+ "train_expert_only": true,
123
+ "train_state_proj": true,
124
+ "optimizer_lr": 0.0001,
125
+ "optimizer_betas": [
126
+ 0.9,
127
+ 0.95
128
+ ],
129
+ "optimizer_eps": 1e-08,
130
+ "optimizer_weight_decay": 1e-10,
131
+ "optimizer_grad_clip_norm": 10.0,
132
+ "scheduler_warmup_steps": 1000,
133
+ "scheduler_decay_steps": 30000,
134
+ "scheduler_decay_lr": 2.5e-06,
135
+ "vlm_model_name": "HuggingFaceTB/SmolVLM2-500M-Video-Instruct",
136
+ "load_vlm_weights": true,
137
+ "add_image_special_tokens": false,
138
+ "attention_mode": "cross_attn",
139
+ "prefix_length": 0,
140
+ "pad_language_to": "max_length",
141
+ "num_expert_layers": 0,
142
+ "num_vlm_layers": 16,
143
+ "self_attn_every_n_layers": 2,
144
+ "expert_width_multiplier": 0.75,
145
+ "min_period": 0.004,
146
+ "max_period": 4.0
147
  },
148
+ "output_dir": "outputs/train/smolvla_record-complex-25",
149
+ "job_name": "smolvla_record-copmlex-25",
150
  "resume": false,
151
  "seed": 1000,
152
  "num_workers": 4,
153
+ "batch_size": 32,
154
+ "steps": 20000,
155
  "eval_freq": 20000,
156
  "log_freq": 200,
157
  "save_checkpoint": true,
 
159
  "use_policy_training_preset": true,
160
  "optimizer": {
161
  "type": "adamw",
162
+ "lr": 0.0001,
163
+ "weight_decay": 1e-10,
164
  "grad_clip_norm": 10.0,
165
  "betas": [
166
  0.9,
167
+ 0.95
168
  ],
169
  "eps": 1e-08
170
  },
171
+ "scheduler": {
172
+ "type": "cosine_decay_with_warmup",
173
+ "num_warmup_steps": 1000,
174
+ "num_decay_steps": 30000,
175
+ "peak_lr": 0.0001,
176
+ "decay_lr": 2.5e-06
177
+ },
178
  "eval": {
179
  "n_episodes": 50,
180
  "batch_size": 50,
 
186
  "project": "lerobot",
187
  "entity": null,
188
  "notes": null,
189
+ "run_id": "u4osiv3x",
190
  "mode": null
191
  }
192
  }