zuoxingdong commited on
Commit
515921f
·
verified ·
1 Parent(s): 9f3d488

Upload EVO1 LIBERO Stage-2 70k checkpoint

Browse files
.gitattributes CHANGED
@@ -1,35 +1 @@
1
- *.7z filter=lfs diff=lfs merge=lfs -text
2
- *.arrow filter=lfs diff=lfs merge=lfs -text
3
- *.bin filter=lfs diff=lfs merge=lfs -text
4
- *.bz2 filter=lfs diff=lfs merge=lfs -text
5
- *.ckpt filter=lfs diff=lfs merge=lfs -text
6
- *.ftz filter=lfs diff=lfs merge=lfs -text
7
- *.gz filter=lfs diff=lfs merge=lfs -text
8
- *.h5 filter=lfs diff=lfs merge=lfs -text
9
- *.joblib filter=lfs diff=lfs merge=lfs -text
10
- *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
- *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
- *.model filter=lfs diff=lfs merge=lfs -text
13
- *.msgpack filter=lfs diff=lfs merge=lfs -text
14
- *.npy filter=lfs diff=lfs merge=lfs -text
15
- *.npz filter=lfs diff=lfs merge=lfs -text
16
- *.onnx filter=lfs diff=lfs merge=lfs -text
17
- *.ot filter=lfs diff=lfs merge=lfs -text
18
- *.parquet filter=lfs diff=lfs merge=lfs -text
19
- *.pb filter=lfs diff=lfs merge=lfs -text
20
- *.pickle filter=lfs diff=lfs merge=lfs -text
21
- *.pkl filter=lfs diff=lfs merge=lfs -text
22
- *.pt filter=lfs diff=lfs merge=lfs -text
23
- *.pth filter=lfs diff=lfs merge=lfs -text
24
- *.rar filter=lfs diff=lfs merge=lfs -text
25
  *.safetensors filter=lfs diff=lfs merge=lfs -text
26
- saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
- *.tar.* filter=lfs diff=lfs merge=lfs -text
28
- *.tar filter=lfs diff=lfs merge=lfs -text
29
- *.tflite filter=lfs diff=lfs merge=lfs -text
30
- *.tgz filter=lfs diff=lfs merge=lfs -text
31
- *.wasm filter=lfs diff=lfs merge=lfs -text
32
- *.xz filter=lfs diff=lfs merge=lfs -text
33
- *.zip filter=lfs diff=lfs merge=lfs -text
34
- *.zst filter=lfs diff=lfs merge=lfs -text
35
- *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  *.safetensors filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
 
 
 
 
README.md ADDED
@@ -0,0 +1,124 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ language:
3
+ - en
4
+ library_name: lerobot
5
+ pipeline_tag: robotics
6
+ tags:
7
+ - vision-language-action
8
+ - imitation-learning
9
+ - lerobot
10
+ - evo1
11
+ - libero
12
+ inference: false
13
+ license: other
14
+ license_name: qwen
15
+ license_link: https://huggingface.co/Qwen/Qwen2.5-72B-Instruct/blob/main/LICENSE
16
+ base_model:
17
+ - OpenGVLab/InternVL3-1B-hf
18
+ datasets:
19
+ - lerobot/libero
20
+ ---
21
+
22
+ # EVO1 · LIBERO (Stage 2, 70k)
23
+
24
+ This is an EVO1 vision-language-action checkpoint trained on all four LIBERO suites with the
25
+ two-stage LeRobot recipe: 5k steps of action-head-only training followed by joint VLM and action-head
26
+ finetuning. This checkpoint was saved at step 70,000 of the 80k Stage-2 schedule and had the best overall
27
+ result among the evaluated 10k, 40k, 60k, and 70k checkpoints.
28
+
29
+ - EVO1: <https://github.com/MINT-SJTU/Evo-1>
30
+ - Base VLM: [`OpenGVLab/InternVL3-1B-hf`](https://huggingface.co/OpenGVLab/InternVL3-1B-hf)
31
+ - Dataset: [`lerobot/libero`](https://huggingface.co/datasets/lerobot/libero)
32
+
33
+ ## Results
34
+
35
+ LeRobot LIBERO evaluation with seed `1000`, 50 episodes per task, 10 tasks per suite, 14-action
36
+ replanning, 448×448 observations, and 2,000 episodes overall:
37
+
38
+ | Suite | Successful episodes | Episodes | Success rate |
39
+ | -------------- | ------------------: | --------: | -----------: |
40
+ | LIBERO Spatial | 485 | 500 | 97.0% |
41
+ | LIBERO Object | 496 | 500 | 99.2% |
42
+ | LIBERO Goal | 483 | 500 | 96.6% |
43
+ | LIBERO-10 | 469 | 500 | 93.8% |
44
+ | **Overall** | **1,933** | **2,000** | **96.65%** |
45
+
46
+ These are single-seed results, not a multi-seed mean or confidence estimate.
47
+
48
+ ## Evaluation
49
+
50
+ Install LeRobot with the EVO1 and LIBERO dependencies:
51
+
52
+ ```bash
53
+ pip install "lerobot[evo1,libero] @ git+https://github.com/huggingface/lerobot.git@e40b58a8dfa9e7b86918c374791599d070518d11"
54
+ ```
55
+
56
+ The following evaluates task 0 of LIBERO Spatial. Run task IDs 0–9 to reproduce the suite result.
57
+
58
+ ```bash
59
+ export MUJOCO_GL=egl
60
+ export PYOPENGL_PLATFORM=egl
61
+
62
+ lerobot-eval \
63
+ --policy.path=zuoxingdong/evo1_libero \
64
+ --policy.vlm_model_name=OpenGVLab/InternVL3-1B-hf \
65
+ --policy.device=cuda \
66
+ --policy.use_amp=true \
67
+ --policy.vlm_dtype=bfloat16 \
68
+ --policy.use_flash_attn=false \
69
+ --policy.enable_gradient_checkpointing=false \
70
+ --policy.n_action_steps=14 \
71
+ --policy.num_inference_timesteps=32 \
72
+ --policy.postprocess_action_dim=7 \
73
+ --policy.binarize_gripper=true \
74
+ --policy.gripper_threshold=0.0 \
75
+ --policy.gripper_below_threshold_value=-1.0 \
76
+ --policy.gripper_above_threshold_value=1.0 \
77
+ --env.type=libero \
78
+ --env.task=libero_spatial \
79
+ --env.task_ids='[0]' \
80
+ --env.camera_name=agentview_image,robot0_eye_in_hand_image \
81
+ --env.camera_name_mapping='{agentview_image: image, robot0_eye_in_hand_image: image2}' \
82
+ --env.control_mode=relative \
83
+ --env.obs_type=pixels_agent_pos \
84
+ --env.observation_width=448 \
85
+ --env.observation_height=448 \
86
+ --env.init_states=true \
87
+ --env.episode_length=280 \
88
+ --env.render_mode=rgb_array \
89
+ --env.max_parallel_tasks=1 \
90
+ --eval.n_episodes=50 \
91
+ --eval.batch_size=1 \
92
+ --eval.use_async_envs=false \
93
+ --eval.recording=false \
94
+ --seed=1000 \
95
+ --output_dir=eval/evo1_libero/spatial-task-0
96
+ ```
97
+
98
+ Use episode lengths 280 for `libero_spatial` and `libero_object`, 300 for `libero_goal`, and 520 for
99
+ `libero_10`.
100
+
101
+ ## Training details
102
+
103
+ - Dataset: all four suites from `lerobot/libero`, revision
104
+ `a1aaacb7f6cd6ee5fb43120f673cebb0cfea7dd4`, with the standard enabled LeRobot image transforms.
105
+ - Stage 1: randomly initialized action expert only, 5k steps.
106
+ - Stage 2: VLM and action expert finetuning, 80k-step cosine schedule; this release is step 70k.
107
+ - Both stages: global batch 128, learning rate 1e-5, warmup 1,000, weight decay 1e-3, dropout 0.2,
108
+ gradient clipping 1.0, chunk size 50, image size 448, and padded state/action dimensions 24.
109
+ - Measured topology: two DDP processes with batch 64 per process on two H100 GPUs using bf16 AMP.
110
+ - Base VLM source revision: `014c0583a0d4bedf29fbe2dbff4f865eb998e171`.
111
+ - Model weight SHA-256: `c6ae0c7350d1810a064d16080137fdbc42d6dac5c6cf2cfb3874907efd959318`.
112
+
113
+ ## Limitations
114
+
115
+ - Evaluation was run with one seed (`1000`).
116
+ - The reported behavior depends on 14-action replanning and the documented LIBERO gripper postprocessing.
117
+ - Loading the policy also downloads `OpenGVLab/InternVL3-1B-hf` unless it is already cached.
118
+
119
+ ## License
120
+
121
+ The EVO1 code is MIT-licensed. InternVL3 is released under MIT, while its Qwen language component is
122
+ covered by the [Qwen License](https://huggingface.co/Qwen/Qwen2.5-72B-Instruct/blob/main/LICENSE). This
123
+ model is therefore published with `license: other` and Qwen attribution. The `lerobot/libero` dataset is
124
+ Apache-2.0.
config.json ADDED
@@ -0,0 +1,103 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "type": "evo1",
3
+ "n_obs_steps": 1,
4
+ "input_features": {
5
+ "observation.images.image": {
6
+ "type": "VISUAL",
7
+ "shape": [
8
+ 3,
9
+ 256,
10
+ 256
11
+ ]
12
+ },
13
+ "observation.images.image2": {
14
+ "type": "VISUAL",
15
+ "shape": [
16
+ 3,
17
+ 256,
18
+ 256
19
+ ]
20
+ },
21
+ "observation.state": {
22
+ "type": "STATE",
23
+ "shape": [
24
+ 8
25
+ ]
26
+ }
27
+ },
28
+ "output_features": {
29
+ "action": {
30
+ "type": "ACTION",
31
+ "shape": [
32
+ 7
33
+ ]
34
+ }
35
+ },
36
+ "device": "cuda",
37
+ "use_amp": true,
38
+ "use_peft": false,
39
+ "push_to_hub": false,
40
+ "repo_id": null,
41
+ "private": null,
42
+ "tags": null,
43
+ "license": null,
44
+ "pretrained_path": null,
45
+ "pretrained_revision": null,
46
+ "training_stage": "stage2",
47
+ "chunk_size": 50,
48
+ "n_action_steps": 50,
49
+ "max_state_dim": 24,
50
+ "max_action_dim": 24,
51
+ "max_views": 3,
52
+ "image_resolution": [
53
+ 448,
54
+ 448
55
+ ],
56
+ "empty_cameras": 0,
57
+ "postprocess_action_dim": null,
58
+ "binarize_gripper": false,
59
+ "gripper_index": 6,
60
+ "gripper_threshold": 0.5,
61
+ "gripper_below_threshold_value": 1.0,
62
+ "gripper_above_threshold_value": -1.0,
63
+ "normalization_mapping": {
64
+ "VISUAL": "IDENTITY",
65
+ "STATE": "MIN_MAX",
66
+ "ACTION": "MIN_MAX"
67
+ },
68
+ "vlm_model_name": "OpenGVLab/InternVL3-1B-hf",
69
+ "vlm_num_layers": 14,
70
+ "vlm_dtype": "float32",
71
+ "max_text_length": 1024,
72
+ "use_flash_attn": true,
73
+ "action_head": "flowmatching",
74
+ "embed_dim": 896,
75
+ "hidden_dim": 1024,
76
+ "state_hidden_dim": 1024,
77
+ "num_heads": 8,
78
+ "num_layers": 8,
79
+ "dropout": 0.2,
80
+ "num_inference_timesteps": 32,
81
+ "num_categories": 1,
82
+ "return_cls_only": false,
83
+ "enable_gradient_checkpointing": true,
84
+ "gradient_checkpointing_use_reentrant": false,
85
+ "finetune_vlm": true,
86
+ "finetune_language_model": true,
87
+ "finetune_vision_model": true,
88
+ "finetune_action_head": true,
89
+ "apply_training_stage_defaults": true,
90
+ "task_field": "task",
91
+ "embodiment_id_field": null,
92
+ "default_embodiment_id": 0,
93
+ "rtc_config": null,
94
+ "optimizer_lr": 1e-05,
95
+ "optimizer_betas": [
96
+ 0.9,
97
+ 0.999
98
+ ],
99
+ "optimizer_eps": 1e-08,
100
+ "optimizer_weight_decay": 0.001,
101
+ "optimizer_grad_clip_norm": 1.0,
102
+ "scheduler_warmup_steps": 1000
103
+ }
model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c6ae0c7350d1810a064d16080137fdbc42d6dac5c6cf2cfb3874907efd959318
3
+ size 3104659920
policy_postprocessor.json ADDED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "policy_postprocessor",
3
+ "steps": [
4
+ {
5
+ "registry_name": "unnormalizer_processor",
6
+ "config": {
7
+ "eps": 1e-08,
8
+ "features": {
9
+ "action": {
10
+ "type": "ACTION",
11
+ "shape": [
12
+ 24
13
+ ]
14
+ }
15
+ },
16
+ "norm_map": {
17
+ "VISUAL": "IDENTITY",
18
+ "STATE": "MIN_MAX",
19
+ "ACTION": "MIN_MAX"
20
+ }
21
+ },
22
+ "state_file": "policy_postprocessor_step_0_unnormalizer_processor.safetensors"
23
+ },
24
+ {
25
+ "registry_name": "evo1_action_processor",
26
+ "config": {
27
+ "action_dim": 7,
28
+ "binarize_gripper": false,
29
+ "gripper_index": 6,
30
+ "gripper_threshold": 0.5,
31
+ "gripper_below_threshold_value": 1.0,
32
+ "gripper_above_threshold_value": -1.0
33
+ }
34
+ },
35
+ {
36
+ "registry_name": "device_processor",
37
+ "config": {
38
+ "device": "cpu",
39
+ "float_dtype": "float32"
40
+ }
41
+ }
42
+ ]
43
+ }
policy_postprocessor_step_0_unnormalizer_processor.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:be872a1c074a41935944c6103ec3728a352ce63b50c647bd64a05c8fd7603182
3
+ size 9216
policy_preprocessor.json ADDED
@@ -0,0 +1,76 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "policy_preprocessor",
3
+ "steps": [
4
+ {
5
+ "registry_name": "rename_observations_processor",
6
+ "config": {
7
+ "rename_map": {}
8
+ }
9
+ },
10
+ {
11
+ "registry_name": "to_batch_processor",
12
+ "config": {}
13
+ },
14
+ {
15
+ "registry_name": "evo1_pad_state_processor",
16
+ "config": {
17
+ "max_state_dim": 24
18
+ }
19
+ },
20
+ {
21
+ "registry_name": "evo1_pad_action_processor",
22
+ "config": {
23
+ "max_action_dim": 24
24
+ }
25
+ },
26
+ {
27
+ "registry_name": "normalizer_processor",
28
+ "config": {
29
+ "eps": 1e-08,
30
+ "features": {
31
+ "observation.images.image": {
32
+ "type": "VISUAL",
33
+ "shape": [
34
+ 3,
35
+ 256,
36
+ 256
37
+ ]
38
+ },
39
+ "observation.images.image2": {
40
+ "type": "VISUAL",
41
+ "shape": [
42
+ 3,
43
+ 256,
44
+ 256
45
+ ]
46
+ },
47
+ "observation.state": {
48
+ "type": "STATE",
49
+ "shape": [
50
+ 24
51
+ ]
52
+ },
53
+ "action": {
54
+ "type": "ACTION",
55
+ "shape": [
56
+ 24
57
+ ]
58
+ }
59
+ },
60
+ "norm_map": {
61
+ "VISUAL": "IDENTITY",
62
+ "STATE": "MIN_MAX",
63
+ "ACTION": "MIN_MAX"
64
+ }
65
+ },
66
+ "state_file": "policy_preprocessor_step_4_normalizer_processor.safetensors"
67
+ },
68
+ {
69
+ "registry_name": "device_processor",
70
+ "config": {
71
+ "device": "cuda",
72
+ "float_dtype": null
73
+ }
74
+ }
75
+ ]
76
+ }
policy_preprocessor_step_4_normalizer_processor.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:dd8613329e21de83cf20de675fe4db6df3f6f083f01c4120a37047ff79a6f4d0
3
+ size 9224
train_config.json ADDED
@@ -0,0 +1,253 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "dataset": {
3
+ "repo_id": "lerobot/libero",
4
+ "root": null,
5
+ "episodes": null,
6
+ "image_transforms": {
7
+ "enable": true,
8
+ "max_num_transforms": 3,
9
+ "random_order": false,
10
+ "tfs": {
11
+ "brightness": {
12
+ "weight": 1.0,
13
+ "type": "ColorJitter",
14
+ "kwargs": {
15
+ "brightness": [
16
+ 0.8,
17
+ 1.2
18
+ ]
19
+ }
20
+ },
21
+ "contrast": {
22
+ "weight": 1.0,
23
+ "type": "ColorJitter",
24
+ "kwargs": {
25
+ "contrast": [
26
+ 0.8,
27
+ 1.2
28
+ ]
29
+ }
30
+ },
31
+ "saturation": {
32
+ "weight": 1.0,
33
+ "type": "ColorJitter",
34
+ "kwargs": {
35
+ "saturation": [
36
+ 0.5,
37
+ 1.5
38
+ ]
39
+ }
40
+ },
41
+ "hue": {
42
+ "weight": 1.0,
43
+ "type": "ColorJitter",
44
+ "kwargs": {
45
+ "hue": [
46
+ -0.05,
47
+ 0.05
48
+ ]
49
+ }
50
+ },
51
+ "sharpness": {
52
+ "weight": 1.0,
53
+ "type": "SharpnessJitter",
54
+ "kwargs": {
55
+ "sharpness": [
56
+ 0.5,
57
+ 1.5
58
+ ]
59
+ }
60
+ },
61
+ "affine": {
62
+ "weight": 1.0,
63
+ "type": "RandomAffine",
64
+ "kwargs": {
65
+ "degrees": [
66
+ -5.0,
67
+ 5.0
68
+ ],
69
+ "translate": [
70
+ 0.05,
71
+ 0.05
72
+ ]
73
+ }
74
+ }
75
+ }
76
+ },
77
+ "revision": "a1aaacb7f6cd6ee5fb43120f673cebb0cfea7dd4",
78
+ "use_imagenet_stats": true,
79
+ "video_backend": "torchcodec",
80
+ "return_uint8": true,
81
+ "depth_output_unit": "mm",
82
+ "streaming": false,
83
+ "eval_split": 0.0
84
+ },
85
+ "env": null,
86
+ "policy": {
87
+ "type": "evo1",
88
+ "n_obs_steps": 1,
89
+ "input_features": {
90
+ "observation.images.image": {
91
+ "type": "VISUAL",
92
+ "shape": [
93
+ 3,
94
+ 256,
95
+ 256
96
+ ]
97
+ },
98
+ "observation.images.image2": {
99
+ "type": "VISUAL",
100
+ "shape": [
101
+ 3,
102
+ 256,
103
+ 256
104
+ ]
105
+ },
106
+ "observation.state": {
107
+ "type": "STATE",
108
+ "shape": [
109
+ 8
110
+ ]
111
+ }
112
+ },
113
+ "output_features": {
114
+ "action": {
115
+ "type": "ACTION",
116
+ "shape": [
117
+ 7
118
+ ]
119
+ }
120
+ },
121
+ "device": "cuda",
122
+ "use_amp": true,
123
+ "use_peft": false,
124
+ "push_to_hub": false,
125
+ "repo_id": null,
126
+ "private": null,
127
+ "tags": null,
128
+ "license": null,
129
+ "pretrained_path": null,
130
+ "pretrained_revision": null,
131
+ "training_stage": "stage2",
132
+ "chunk_size": 50,
133
+ "n_action_steps": 50,
134
+ "max_state_dim": 24,
135
+ "max_action_dim": 24,
136
+ "max_views": 3,
137
+ "image_resolution": [
138
+ 448,
139
+ 448
140
+ ],
141
+ "empty_cameras": 0,
142
+ "postprocess_action_dim": null,
143
+ "binarize_gripper": false,
144
+ "gripper_index": 6,
145
+ "gripper_threshold": 0.5,
146
+ "gripper_below_threshold_value": 1.0,
147
+ "gripper_above_threshold_value": -1.0,
148
+ "normalization_mapping": {
149
+ "VISUAL": "IDENTITY",
150
+ "STATE": "MIN_MAX",
151
+ "ACTION": "MIN_MAX"
152
+ },
153
+ "vlm_model_name": "OpenGVLab/InternVL3-1B-hf",
154
+ "vlm_num_layers": 14,
155
+ "vlm_dtype": "float32",
156
+ "max_text_length": 1024,
157
+ "use_flash_attn": true,
158
+ "action_head": "flowmatching",
159
+ "embed_dim": 896,
160
+ "hidden_dim": 1024,
161
+ "state_hidden_dim": 1024,
162
+ "num_heads": 8,
163
+ "num_layers": 8,
164
+ "dropout": 0.2,
165
+ "num_inference_timesteps": 32,
166
+ "num_categories": 1,
167
+ "return_cls_only": false,
168
+ "enable_gradient_checkpointing": true,
169
+ "gradient_checkpointing_use_reentrant": false,
170
+ "finetune_vlm": true,
171
+ "finetune_language_model": true,
172
+ "finetune_vision_model": true,
173
+ "finetune_action_head": true,
174
+ "apply_training_stage_defaults": true,
175
+ "task_field": "task",
176
+ "embodiment_id_field": null,
177
+ "default_embodiment_id": 0,
178
+ "rtc_config": null,
179
+ "optimizer_lr": 1e-05,
180
+ "optimizer_betas": [
181
+ 0.9,
182
+ 0.999
183
+ ],
184
+ "optimizer_eps": 1e-08,
185
+ "optimizer_weight_decay": 0.001,
186
+ "optimizer_grad_clip_norm": 1.0,
187
+ "scheduler_warmup_steps": 1000
188
+ },
189
+ "reward_model": null,
190
+ "output_dir": "outputs/train/evo1_libero_stage2_80k",
191
+ "job_name": "evo1_libero_stage2_80k",
192
+ "resume": false,
193
+ "seed": 1000,
194
+ "cudnn_deterministic": false,
195
+ "num_workers": 4,
196
+ "batch_size": 64,
197
+ "prefetch_factor": 2,
198
+ "persistent_workers": true,
199
+ "steps": 80000,
200
+ "env_eval_freq": 0,
201
+ "log_freq": 10,
202
+ "eval_steps": 0,
203
+ "max_eval_samples": 0,
204
+ "tolerance_s": 0.0001,
205
+ "save_checkpoint": true,
206
+ "save_freq": 10000,
207
+ "use_policy_training_preset": true,
208
+ "optimizer": {
209
+ "type": "adamw",
210
+ "lr": 1e-05,
211
+ "weight_decay": 0.001,
212
+ "grad_clip_norm": 1.0,
213
+ "betas": [
214
+ 0.9,
215
+ 0.999
216
+ ],
217
+ "eps": 1e-08
218
+ },
219
+ "scheduler": {
220
+ "type": "cosine_annealing_with_warmup",
221
+ "num_warmup_steps": 1000
222
+ },
223
+ "eval": {
224
+ "n_episodes": 50,
225
+ "batch_size": 50,
226
+ "use_async_envs": true,
227
+ "recording": false,
228
+ "recording_repo_id": null,
229
+ "recording_private": false
230
+ },
231
+ "wandb": {
232
+ "enable": false,
233
+ "disable_artifact": false,
234
+ "project": "lerobot",
235
+ "entity": null,
236
+ "notes": null,
237
+ "run_id": null,
238
+ "mode": null,
239
+ "add_tags": true
240
+ },
241
+ "peft": null,
242
+ "job": {
243
+ "target": null,
244
+ "image": "huggingface/lerobot-gpu:latest",
245
+ "timeout": "2d",
246
+ "detach": false,
247
+ "tags": []
248
+ },
249
+ "save_checkpoint_to_hub": false,
250
+ "sample_weighting": null,
251
+ "rename_map": {},
252
+ "checkpoint_path": null
253
+ }