Upload BOAT/BOAT_VLA
Browse files- BOAT/BOAT_VLA/README.md +10 -0
- BOAT/BOAT_VLA/config.json +49 -0
- BOAT/BOAT_VLA/model.safetensors +3 -0
- BOAT/BOAT_VLA/norm_stats.pt +3 -0
- BOAT/BOAT_VLA/policy_io.json +54 -0
- BOAT/BOAT_VLA/train_config.yaml +134 -0
BOAT/BOAT_VLA/README.md
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
tags:
|
| 3 |
+
- model_hub_mixin
|
| 4 |
+
- pytorch_model_hub_mixin
|
| 5 |
+
---
|
| 6 |
+
|
| 7 |
+
This model has been pushed to the Hub using the [PytorchModelHubMixin](https://huggingface.co/docs/huggingface_hub/package_reference/mixins#huggingface_hub.PyTorchModelHubMixin) integration:
|
| 8 |
+
- Code: [More Information Needed]
|
| 9 |
+
- Paper: [More Information Needed]
|
| 10 |
+
- Docs: [More Information Needed]
|
BOAT/BOAT_VLA/config.json
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"action_dim": 14,
|
| 3 |
+
"action_embed_init": "normal",
|
| 4 |
+
"action_horizon": 32,
|
| 5 |
+
"action_mask_token_template": "<|action_mask|>",
|
| 6 |
+
"action_token_template": "<|action_{i}|>",
|
| 7 |
+
"action_tokenizer": {
|
| 8 |
+
"kind": "tokens",
|
| 9 |
+
"name": "boat",
|
| 10 |
+
"pretrained_path": "/scratch/xuanweiliu/bimanual_tokenizer/outputs/hopper_boat_robotwin_new/616167.hopper-m-02/train/checkpoints/best/step_300000/pretrained_model"
|
| 11 |
+
},
|
| 12 |
+
"block_ce_weighting": "block_mean",
|
| 13 |
+
"ce_vocab_scope": "full",
|
| 14 |
+
"decode_keep_k": null,
|
| 15 |
+
"decode_stop_mode": "fixed_budget",
|
| 16 |
+
"decode_temperature": null,
|
| 17 |
+
"decode_top_k": null,
|
| 18 |
+
"default_instruction": "Analyze the input image(s) and predict robot actions.",
|
| 19 |
+
"freeze_action_tokenizer": true,
|
| 20 |
+
"freeze_vision_encoder": false,
|
| 21 |
+
"gradient_checkpointing": true,
|
| 22 |
+
"lora_alpha": 16,
|
| 23 |
+
"lora_dropout": 0.05,
|
| 24 |
+
"lora_modules_to_save": [
|
| 25 |
+
"lm_head",
|
| 26 |
+
"embed_tokens"
|
| 27 |
+
],
|
| 28 |
+
"lora_r": 64,
|
| 29 |
+
"lora_target_modules": [
|
| 30 |
+
"q_proj",
|
| 31 |
+
"v_proj",
|
| 32 |
+
"k_proj",
|
| 33 |
+
"o_proj",
|
| 34 |
+
"gate_proj",
|
| 35 |
+
"up_proj",
|
| 36 |
+
"down_proj"
|
| 37 |
+
],
|
| 38 |
+
"max_new_tokens": null,
|
| 39 |
+
"n_action_steps": 16,
|
| 40 |
+
"n_obs_steps": 1,
|
| 41 |
+
"name": "bar_boat_pali",
|
| 42 |
+
"num_action_tokens": null,
|
| 43 |
+
"pretrained_path": null,
|
| 44 |
+
"state_prefix_encoding": "discrete_text",
|
| 45 |
+
"state_prefix_num_bins": 256,
|
| 46 |
+
"use_lora": false,
|
| 47 |
+
"vlm_dtype": "bfloat16",
|
| 48 |
+
"vlm_model_name": "google/paligemma2-3b-mix-224"
|
| 49 |
+
}
|
BOAT/BOAT_VLA/model.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:2731a2053ebac11974527a9c1830e4452a97474587e6bd0596b0fce83d54671d
|
| 3 |
+
size 6073150736
|
BOAT/BOAT_VLA/norm_stats.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:8af2b215b59fbac4e1e7bbece5d95491528f31c95a6c06d017bcf7108b0cc6f5
|
| 3 |
+
size 3957
|
BOAT/BOAT_VLA/policy_io.json
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"obs_features": [
|
| 3 |
+
{
|
| 4 |
+
"key": "observation.state",
|
| 5 |
+
"type": "state",
|
| 6 |
+
"shape": [
|
| 7 |
+
14
|
| 8 |
+
],
|
| 9 |
+
"norm_mode": "min_max"
|
| 10 |
+
},
|
| 11 |
+
{
|
| 12 |
+
"key": "observation.images.cam_high",
|
| 13 |
+
"type": "image",
|
| 14 |
+
"shape": [
|
| 15 |
+
3,
|
| 16 |
+
240,
|
| 17 |
+
320
|
| 18 |
+
],
|
| 19 |
+
"norm_mode": "mean_std"
|
| 20 |
+
},
|
| 21 |
+
{
|
| 22 |
+
"key": "observation.images.cam_left_wrist",
|
| 23 |
+
"type": "image",
|
| 24 |
+
"shape": [
|
| 25 |
+
3,
|
| 26 |
+
240,
|
| 27 |
+
320
|
| 28 |
+
],
|
| 29 |
+
"norm_mode": "mean_std"
|
| 30 |
+
},
|
| 31 |
+
{
|
| 32 |
+
"key": "observation.images.cam_right_wrist",
|
| 33 |
+
"type": "image",
|
| 34 |
+
"shape": [
|
| 35 |
+
3,
|
| 36 |
+
240,
|
| 37 |
+
320
|
| 38 |
+
],
|
| 39 |
+
"norm_mode": "mean_std"
|
| 40 |
+
}
|
| 41 |
+
],
|
| 42 |
+
"action_feature": {
|
| 43 |
+
"key": "action",
|
| 44 |
+
"type": "action",
|
| 45 |
+
"shape": [
|
| 46 |
+
14
|
| 47 |
+
],
|
| 48 |
+
"norm_mode": "min_max"
|
| 49 |
+
},
|
| 50 |
+
"n_obs_steps": 1,
|
| 51 |
+
"n_action_steps": 32,
|
| 52 |
+
"fps": 15,
|
| 53 |
+
"language_key": "task"
|
| 54 |
+
}
|
BOAT/BOAT_VLA/train_config.yaml
ADDED
|
@@ -0,0 +1,134 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
policy:
|
| 2 |
+
pretrained_path: null
|
| 3 |
+
vlm_model_name: google/paligemma2-3b-mix-224
|
| 4 |
+
vlm_dtype: bfloat16
|
| 5 |
+
freeze_vision_encoder: false
|
| 6 |
+
use_lora: false
|
| 7 |
+
lora_r: 64
|
| 8 |
+
lora_alpha: 16
|
| 9 |
+
lora_target_modules:
|
| 10 |
+
- q_proj
|
| 11 |
+
- v_proj
|
| 12 |
+
- k_proj
|
| 13 |
+
- o_proj
|
| 14 |
+
- gate_proj
|
| 15 |
+
- up_proj
|
| 16 |
+
- down_proj
|
| 17 |
+
lora_dropout: 0.05
|
| 18 |
+
lora_modules_to_save:
|
| 19 |
+
- lm_head
|
| 20 |
+
- embed_tokens
|
| 21 |
+
gradient_checkpointing: true
|
| 22 |
+
action_token_template: <|action_{i}|>
|
| 23 |
+
action_embed_init: normal
|
| 24 |
+
state_prefix_encoding: discrete_text
|
| 25 |
+
state_prefix_num_bins: 256
|
| 26 |
+
decode_temperature: null
|
| 27 |
+
decode_top_k: null
|
| 28 |
+
default_instruction: Analyze the input image(s) and predict robot actions.
|
| 29 |
+
action_dim: null
|
| 30 |
+
n_obs_steps: 1
|
| 31 |
+
action_horizon: 32
|
| 32 |
+
n_action_steps: 16
|
| 33 |
+
action_tokenizer:
|
| 34 |
+
name: boat
|
| 35 |
+
kind: tokens
|
| 36 |
+
pretrained_path: /scratch/xuanweiliu/bimanual_tokenizer/outputs/hopper_boat_robotwin_new/616167.hopper-m-02/train/checkpoints/best/step_300000/pretrained_model
|
| 37 |
+
freeze_action_tokenizer: true
|
| 38 |
+
decode_keep_k: null
|
| 39 |
+
block_ce_weighting: block_mean
|
| 40 |
+
ce_vocab_scope: full
|
| 41 |
+
name: bar_boat_pali
|
| 42 |
+
dataset:
|
| 43 |
+
name: robotwin_new_demo_clean
|
| 44 |
+
repo_id: local/robotwin_new_demo_clean
|
| 45 |
+
root: /scratch/xuanweiliu/bimanual_tokenizer/data/lerobot/local/robotwin_new_demo_clean
|
| 46 |
+
hf_datasets_cache: ${oc.env:HF_DATASETS_CACHE,null}
|
| 47 |
+
episodes: null
|
| 48 |
+
exclude_episodes_file: null
|
| 49 |
+
action_stats_file: null
|
| 50 |
+
observation_keys:
|
| 51 |
+
- observation.state
|
| 52 |
+
- observation.images.cam_high
|
| 53 |
+
- observation.images.cam_left_wrist
|
| 54 |
+
- observation.images.cam_right_wrist
|
| 55 |
+
video_backend: null
|
| 56 |
+
bypass_force_cache_sync: true
|
| 57 |
+
trainer:
|
| 58 |
+
max_steps: 30000
|
| 59 |
+
batch_size: 64
|
| 60 |
+
global_batch_size: null
|
| 61 |
+
num_workers: 4
|
| 62 |
+
prefetch_factor: 4
|
| 63 |
+
use_episode_aware_sampler: true
|
| 64 |
+
drop_n_first_frames: 0
|
| 65 |
+
drop_n_last_frames: 0
|
| 66 |
+
weight_decay: 1.0e-06
|
| 67 |
+
betas:
|
| 68 |
+
- 0.95
|
| 69 |
+
- 0.999
|
| 70 |
+
eps: 1.0e-08
|
| 71 |
+
lr_scheduler: cosine
|
| 72 |
+
warmup_steps: 500
|
| 73 |
+
min_lr_ratio: 0.1
|
| 74 |
+
use_ema: true
|
| 75 |
+
ema_decay: 0.995
|
| 76 |
+
mixed_precision: bf16
|
| 77 |
+
gradient_accumulation_steps: 1
|
| 78 |
+
find_unused_parameters: false
|
| 79 |
+
max_grad_norm: 1.0
|
| 80 |
+
distributed_strategy: ddp
|
| 81 |
+
fsdp_min_num_params: 100000000
|
| 82 |
+
fsdp_reshard_after_forward: true
|
| 83 |
+
fsdp_cpu_offload: false
|
| 84 |
+
log_every: 200
|
| 85 |
+
val_every: 1000
|
| 86 |
+
checkpoint_every: 1000
|
| 87 |
+
checkpoint_dir: ${output_dir}/checkpoints
|
| 88 |
+
local_log_path: ${output_dir}/train_metrics.jsonl
|
| 89 |
+
val_ratio: 0.05
|
| 90 |
+
split_seed: ${seed}
|
| 91 |
+
val_batch_size: null
|
| 92 |
+
max_val_batches: 100
|
| 93 |
+
checkpoint_candidates:
|
| 94 |
+
best:
|
| 95 |
+
metric_key: val_reconst_loss
|
| 96 |
+
mode: min
|
| 97 |
+
k: 2
|
| 98 |
+
recent:
|
| 99 |
+
k: 0
|
| 100 |
+
use_wandb: true
|
| 101 |
+
wandb_project: praxis-vla
|
| 102 |
+
wandb_entity: null
|
| 103 |
+
wandb_init_timeout: null
|
| 104 |
+
wandb_upload_eval_videos: true
|
| 105 |
+
wandb_max_eval_videos: 16
|
| 106 |
+
_trainer_type: policy
|
| 107 |
+
lrs:
|
| 108 |
+
vlm: 0.0001
|
| 109 |
+
vision: 0.0001
|
| 110 |
+
bridge: 0.0001
|
| 111 |
+
reconst_every: 1000
|
| 112 |
+
max_reconst_batches: 100
|
| 113 |
+
reconst_action_mode: policy
|
| 114 |
+
sim_eval_every: null
|
| 115 |
+
sim_eval_start_after_step: 0
|
| 116 |
+
sim_eval:
|
| 117 |
+
num_eval_per_task: 20
|
| 118 |
+
num_parallel_env: 1
|
| 119 |
+
record_episodes_per_task: 0
|
| 120 |
+
step_timeout_sec: null
|
| 121 |
+
rollout_failure_retries: 1
|
| 122 |
+
policy_kwargs: {}
|
| 123 |
+
name: train_policy
|
| 124 |
+
seed: 42
|
| 125 |
+
device: cuda
|
| 126 |
+
run_name: robotwin_new_bar_boat_pali_30k
|
| 127 |
+
output_dir: /scratch/xuanweiliu/bimanual_tokenizer/outputs/hopper_bar_boat_pali_robotwin_new_30k/616455.hopper-m-02/train
|
| 128 |
+
run_mode: overwrite
|
| 129 |
+
resume_checkpoint: null
|
| 130 |
+
env:
|
| 131 |
+
type: null
|
| 132 |
+
task: null
|
| 133 |
+
task_ids: null
|
| 134 |
+
python_bin: null
|