ShenBW commited on
Commit
8c0695f
·
verified ·
1 Parent(s): 1b24eb9

Add SmolVLA RoboTwin model metadata

Browse files
smolvla_robotwin_all_data_full_finetune_bs512/config.json ADDED
@@ -0,0 +1,501 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_ROBOTWIN_DATA_ROOTS": [
3
+ "datasets/robotwin_clean_lerobotv2.1",
4
+ "datasets/robotwin_randomized_lerobotv2.1"
5
+ ],
6
+ "_ROBOTWIN_TASK_LIST": [
7
+ "adjust_bottle",
8
+ "beat_block_hammer",
9
+ "blocks_ranking_rgb",
10
+ "blocks_ranking_size",
11
+ "click_alarmclock",
12
+ "click_bell",
13
+ "dump_bin_bigbin",
14
+ "grab_roller",
15
+ "handover_block",
16
+ "handover_mic",
17
+ "hanging_mug",
18
+ "lift_pot",
19
+ "move_can_pot",
20
+ "move_pillbottle_pad",
21
+ "move_playingcard_away",
22
+ "move_stapler_pad",
23
+ "open_laptop",
24
+ "open_microwave",
25
+ "pick_diverse_bottles",
26
+ "pick_dual_bottles",
27
+ "place_a2b_left",
28
+ "place_a2b_right",
29
+ "place_bread_basket",
30
+ "place_bread_skillet",
31
+ "place_burger_fries",
32
+ "place_can_basket",
33
+ "place_cans_plasticbox",
34
+ "place_container_plate",
35
+ "place_dual_shoes",
36
+ "place_empty_cup",
37
+ "place_fan",
38
+ "place_mouse_pad",
39
+ "place_object_basket",
40
+ "place_object_scale",
41
+ "place_object_stand",
42
+ "place_phone_stand",
43
+ "place_shoe",
44
+ "press_stapler",
45
+ "put_bottles_dustbin",
46
+ "put_object_cabinet",
47
+ "rotate_qrcode",
48
+ "scan_object",
49
+ "shake_bottle",
50
+ "shake_bottle_horizontally",
51
+ "stack_blocks_three",
52
+ "stack_blocks_two",
53
+ "stack_bowls_three",
54
+ "stack_bowls_two",
55
+ "stamp_seal",
56
+ "turn_switch"
57
+ ],
58
+ "eval": {
59
+ "dataset": {
60
+ "img_keys": [
61
+ "cam_high",
62
+ "cam_left_wrist",
63
+ "cam_right_wrist"
64
+ ],
65
+ "transforms": [
66
+ {
67
+ "action_dim": 32,
68
+ "action_key": "action",
69
+ "norm_type": "mean_std",
70
+ "state_dim": 32,
71
+ "state_key": "proprio",
72
+ "type": "NormalizeStatesAndActions"
73
+ },
74
+ {
75
+ "add_new_line": true,
76
+ "type": "ParquetPrompter",
77
+ "use_conversation": false
78
+ },
79
+ {
80
+ "max_len": 48,
81
+ "tokenizer": {
82
+ "model_path": "./checkpoints/SmolVLM2-500M-Video-Instruct",
83
+ "type": "PretrainedTokenizer"
84
+ },
85
+ "type": "ProcessPrompts"
86
+ },
87
+ {
88
+ "height": 512,
89
+ "pad_direction": "top-left",
90
+ "type": "ResizeImagesWithPad",
91
+ "width": 512
92
+ },
93
+ {
94
+ "type": "SimpleNormalizeImages"
95
+ }
96
+ ],
97
+ "type": "PrivateInferenceDataset"
98
+ },
99
+ "denormalize_action": {
100
+ "action_dim": 14,
101
+ "norm_type": "mean_std",
102
+ "statistic_name": "robotwin_all",
103
+ "type": "DenormalizePrivateAction"
104
+ },
105
+ "eval_chunk_size": 50,
106
+ "model_family": "smolvla",
107
+ "num_trials_per_task": 100,
108
+ "seed": 0,
109
+ "task_list": [
110
+ "adjust_bottle",
111
+ "beat_block_hammer",
112
+ "blocks_ranking_rgb",
113
+ "blocks_ranking_size",
114
+ "click_alarmclock",
115
+ "click_bell",
116
+ "dump_bin_bigbin",
117
+ "grab_roller",
118
+ "handover_block",
119
+ "handover_mic",
120
+ "hanging_mug",
121
+ "lift_pot",
122
+ "move_can_pot",
123
+ "move_pillbottle_pad",
124
+ "move_playingcard_away",
125
+ "move_stapler_pad",
126
+ "open_laptop",
127
+ "open_microwave",
128
+ "pick_diverse_bottles",
129
+ "pick_dual_bottles",
130
+ "place_a2b_left",
131
+ "place_a2b_right",
132
+ "place_bread_basket",
133
+ "place_bread_skillet",
134
+ "place_burger_fries",
135
+ "place_can_basket",
136
+ "place_cans_plasticbox",
137
+ "place_container_plate",
138
+ "place_dual_shoes",
139
+ "place_empty_cup",
140
+ "place_fan",
141
+ "place_mouse_pad",
142
+ "place_object_basket",
143
+ "place_object_scale",
144
+ "place_object_stand",
145
+ "place_phone_stand",
146
+ "place_shoe",
147
+ "press_stapler",
148
+ "put_bottles_dustbin",
149
+ "put_object_cabinet",
150
+ "rotate_qrcode",
151
+ "scan_object",
152
+ "shake_bottle",
153
+ "shake_bottle_horizontally",
154
+ "stack_blocks_three",
155
+ "stack_blocks_two",
156
+ "stack_bowls_three",
157
+ "stack_bowls_two",
158
+ "stamp_seal",
159
+ "turn_switch"
160
+ ],
161
+ "task_suite_name": [
162
+ "clean",
163
+ "random"
164
+ ],
165
+ "type": "RobotwinEvalRunner",
166
+ "unnorm_key": "robotwin_all"
167
+ },
168
+ "inference_model": {
169
+ "action_in_proj": {
170
+ "in_dim": 32,
171
+ "out_dim": 720,
172
+ "type": "LinearProjector"
173
+ },
174
+ "action_out_proj": {
175
+ "in_dim": 720,
176
+ "out_dim": 32,
177
+ "type": "LinearProjector"
178
+ },
179
+ "action_time_mlp_in": {
180
+ "in_dim": 1440,
181
+ "out_dim": 720,
182
+ "type": "LinearProjector"
183
+ },
184
+ "action_time_mlp_out": {
185
+ "in_dim": 720,
186
+ "out_dim": 720,
187
+ "type": "LinearProjector"
188
+ },
189
+ "add_image_special_tokens": false,
190
+ "chunk_size": 50,
191
+ "freeze_vlm_backbone": false,
192
+ "llm_expert": {
193
+ "attention_bias": false,
194
+ "attention_mode": "cross_attn",
195
+ "head_dim": 64,
196
+ "hidden_act": "silu",
197
+ "hidden_size": 720,
198
+ "intermediate_size": -1,
199
+ "max_position_embeddings": 8192,
200
+ "num_attention_heads": 15,
201
+ "num_hidden_layers": 16,
202
+ "num_key_value_heads": 5,
203
+ "rms_norm_eps": 1e-05,
204
+ "self_attn_every_n_layers": 2,
205
+ "torch_dtype": "bfloat16",
206
+ "type": "SmolVLMExpert",
207
+ "vlm_kv_dim": 320,
208
+ "vocab_size": 49280
209
+ },
210
+ "max_action_dim": 32,
211
+ "name_mapping": {
212
+ "action_in_proj.projector": "model.action_in_proj",
213
+ "action_out_proj.projector": "model.action_out_proj",
214
+ "action_time_mlp_in.projector": "model.action_time_mlp_in",
215
+ "action_time_mlp_out.projector": "model.action_time_mlp_out",
216
+ "llm_expert.expert": "model.vlm_with_expert.lm_expert",
217
+ "state_proj.projector": "model.state_proj",
218
+ "vlm_backbone.vlm": "model.vlm_with_expert.vlm.model"
219
+ },
220
+ "num_steps": 10,
221
+ "ori_action_dim": 14,
222
+ "pretrained_name_or_path": "./checkpoints/smolvla_base/model.safetensors",
223
+ "state_proj": {
224
+ "in_dim": 32,
225
+ "out_dim": 960,
226
+ "type": "LinearProjector"
227
+ },
228
+ "type": "SmolVLAFlowMatching",
229
+ "vlm_backbone": {
230
+ "num_vlm_layers": 16,
231
+ "scale_factor": 4,
232
+ "text_config": {
233
+ "head_dim": 64,
234
+ "hidden_act": "silu",
235
+ "hidden_size": 960,
236
+ "intermediate_size": 2560,
237
+ "max_position_embeddings": 8192,
238
+ "num_attention_heads": 15,
239
+ "num_hidden_layers": 32,
240
+ "num_key_value_heads": 5,
241
+ "rms_norm_eps": 1e-05,
242
+ "vocab_size": 49280
243
+ },
244
+ "torch_dtype": "bfloat16",
245
+ "type": "SmolVLMBackbone",
246
+ "vision_config": {
247
+ "hidden_act": "gelu_pytorch_tanh",
248
+ "hidden_size": 768,
249
+ "image_size": 512,
250
+ "intermediate_size": 3072,
251
+ "layer_norm_eps": 1e-06,
252
+ "num_attention_heads": 12,
253
+ "num_hidden_layers": 12,
254
+ "patch_size": 16
255
+ }
256
+ }
257
+ },
258
+ "model": {
259
+ "action_in_proj": {
260
+ "in_dim": 32,
261
+ "out_dim": 720,
262
+ "type": "LinearProjector"
263
+ },
264
+ "action_out_proj": {
265
+ "in_dim": 720,
266
+ "out_dim": 32,
267
+ "type": "LinearProjector"
268
+ },
269
+ "action_time_mlp_in": {
270
+ "in_dim": 1440,
271
+ "out_dim": 720,
272
+ "type": "LinearProjector"
273
+ },
274
+ "action_time_mlp_out": {
275
+ "in_dim": 720,
276
+ "out_dim": 720,
277
+ "type": "LinearProjector"
278
+ },
279
+ "add_image_special_tokens": false,
280
+ "chunk_size": 50,
281
+ "freeze_vlm_backbone": false,
282
+ "llm_expert": {
283
+ "attention_bias": false,
284
+ "attention_mode": "cross_attn",
285
+ "head_dim": 64,
286
+ "hidden_act": "silu",
287
+ "hidden_size": 720,
288
+ "intermediate_size": -1,
289
+ "max_position_embeddings": 8192,
290
+ "num_attention_heads": 15,
291
+ "num_hidden_layers": 16,
292
+ "num_key_value_heads": 5,
293
+ "rms_norm_eps": 1e-05,
294
+ "self_attn_every_n_layers": 2,
295
+ "torch_dtype": "bfloat16",
296
+ "type": "SmolVLMExpert",
297
+ "vlm_kv_dim": 320,
298
+ "vocab_size": 49280
299
+ },
300
+ "max_action_dim": 32,
301
+ "name_mapping": {
302
+ "action_in_proj.projector": "model.action_in_proj",
303
+ "action_out_proj.projector": "model.action_out_proj",
304
+ "action_time_mlp_in.projector": "model.action_time_mlp_in",
305
+ "action_time_mlp_out.projector": "model.action_time_mlp_out",
306
+ "llm_expert.expert": "model.vlm_with_expert.lm_expert",
307
+ "state_proj.projector": "model.state_proj",
308
+ "vlm_backbone.vlm": "model.vlm_with_expert.vlm.model"
309
+ },
310
+ "num_steps": 10,
311
+ "ori_action_dim": 14,
312
+ "pretrained_name_or_path": "./checkpoints/smolvla_base/model.safetensors",
313
+ "state_proj": {
314
+ "in_dim": 32,
315
+ "out_dim": 960,
316
+ "type": "LinearProjector"
317
+ },
318
+ "type": "SmolVLAFlowMatching",
319
+ "vlm_backbone": {
320
+ "num_vlm_layers": 16,
321
+ "scale_factor": 4,
322
+ "text_config": {
323
+ "head_dim": 64,
324
+ "hidden_act": "silu",
325
+ "hidden_size": 960,
326
+ "intermediate_size": 2560,
327
+ "max_position_embeddings": 8192,
328
+ "num_attention_heads": 15,
329
+ "num_hidden_layers": 32,
330
+ "num_key_value_heads": 5,
331
+ "rms_norm_eps": 1e-05,
332
+ "vocab_size": 49280
333
+ },
334
+ "torch_dtype": "bfloat16",
335
+ "type": "SmolVLMBackbone",
336
+ "vision_config": {
337
+ "hidden_act": "gelu_pytorch_tanh",
338
+ "hidden_size": 768,
339
+ "image_size": 512,
340
+ "intermediate_size": 3072,
341
+ "layer_norm_eps": 1e-06,
342
+ "num_attention_heads": 12,
343
+ "num_hidden_layers": 12,
344
+ "patch_size": 16
345
+ }
346
+ }
347
+ },
348
+ "runner": {
349
+ "change_key_name": false,
350
+ "collator": {
351
+ "keys": [
352
+ "states",
353
+ "timestamp",
354
+ "images",
355
+ "img_masks",
356
+ "lang_tokens",
357
+ "lang_masks",
358
+ "actions",
359
+ "action_masks"
360
+ ],
361
+ "meta_keys": [
362
+ "task_description",
363
+ "prompt",
364
+ "info",
365
+ "stats"
366
+ ],
367
+ "type": "DictCollator"
368
+ },
369
+ "deterministic_algorithms": true,
370
+ "enable_gradient_checkpointing": true,
371
+ "enable_mixed_precision_training": true,
372
+ "grad_accumulation_steps": 1,
373
+ "lr_scheduler": {
374
+ "min_lr": 2.5e-06,
375
+ "type": "linear-warmup+cosine-decay",
376
+ "warmup_ratio": 0.03
377
+ },
378
+ "max_epochs": 5,
379
+ "max_grad_norm": 10.0,
380
+ "max_keep_ckpts": 3,
381
+ "max_steps": null,
382
+ "metric": {
383
+ "active_trackers": [
384
+ "jsonl",
385
+ "wandb"
386
+ ],
387
+ "run_dir": "work_dirs",
388
+ "type": "VLAMetric",
389
+ "window_size": 1
390
+ },
391
+ "mixed_precision_dtype": "bf16",
392
+ "optimizer": {
393
+ "lr": 0.0001,
394
+ "type": "AdamW",
395
+ "weight_decay": 0.01
396
+ },
397
+ "sampler": null,
398
+ "save_iter_interval": 10000,
399
+ "seed": 0,
400
+ "sharding_strategy": "full-shard",
401
+ "tokenizer": {
402
+ "model_path": "./checkpoints/SmolVLM2-500M-Video-Instruct",
403
+ "type": "PretrainedTokenizer"
404
+ },
405
+ "type": "FSDPTrainRunner"
406
+ },
407
+ "train_dataloader": {
408
+ "dataset": {
409
+ "datasets": [
410
+ {
411
+ "action_key": "action",
412
+ "action_window_size": 50,
413
+ "data_root_path": [
414
+ "datasets/robotwin_clean_lerobotv2.1",
415
+ "datasets/robotwin_randomized_lerobotv2.1"
416
+ ],
417
+ "statistic_name": "robotwin_all",
418
+ "transforms": [
419
+ {
420
+ "name_mappings": {
421
+ "actions": [
422
+ "actions"
423
+ ],
424
+ "observation.state": [
425
+ "states"
426
+ ]
427
+ },
428
+ "parquet_keys": [
429
+ "observation.state",
430
+ "timestamp",
431
+ "actions",
432
+ "info",
433
+ "stats",
434
+ "action_masks"
435
+ ],
436
+ "type": "ProcessParquetInputs",
437
+ "video_backend": "pyav",
438
+ "video_keys": [
439
+ "observation.images.cam_high",
440
+ "observation.images.cam_left_wrist",
441
+ "observation.images.cam_right_wrist"
442
+ ]
443
+ },
444
+ {
445
+ "action_dim": 32,
446
+ "action_key": "action",
447
+ "norm_type": "mean_std",
448
+ "state_dim": 32,
449
+ "state_key": "proprio",
450
+ "type": "NormalizeStatesAndActions"
451
+ },
452
+ {
453
+ "add_new_line": true,
454
+ "type": "ParquetPrompter",
455
+ "use_conversation": false
456
+ },
457
+ {
458
+ "max_len": 48,
459
+ "tokenizer": {
460
+ "model_path": "./checkpoints/SmolVLM2-500M-Video-Instruct",
461
+ "type": "PretrainedTokenizer"
462
+ },
463
+ "type": "ProcessPrompts"
464
+ },
465
+ {
466
+ "height": 512,
467
+ "pad_direction": "top-left",
468
+ "type": "ResizeImagesWithPad",
469
+ "width": 512
470
+ },
471
+ {
472
+ "type": "SimpleNormalizeImages"
473
+ }
474
+ ],
475
+ "type": "ParquetDataset",
476
+ "use_delta": false,
477
+ "window_start_idx": 0
478
+ }
479
+ ],
480
+ "name_mappings": {
481
+ "action": [
482
+ "action"
483
+ ],
484
+ "observation.state": [
485
+ "proprio"
486
+ ]
487
+ },
488
+ "reshuffle_each_epoch": true,
489
+ "seed": 0,
490
+ "statistic_keys": [
491
+ "observation.state",
492
+ "action",
493
+ "timestamp"
494
+ ],
495
+ "statistic_name": "robotwin_all",
496
+ "type": "DistributedRepeatingDataset"
497
+ },
498
+ "per_device_batch_size": 32,
499
+ "per_device_num_workers": 4
500
+ }
501
+ }