Upload config.yaml with huggingface_hub
Browse files- config.yaml +39 -0
config.yaml
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# V5 Run 2B — two-stream split on top of V4 optimizer hyperparameters.
|
| 2 |
+
#
|
| 3 |
+
# Splits the prefix into two streams and stores each in its own slots:
|
| 4 |
+
# - perceptual stream (image + image-special tokens) → 16 slots
|
| 5 |
+
# - task-anchor stream (language + state tokens) → 1 slot
|
| 6 |
+
# Total: 17 slots per bank entry × 16 bank entries = 272 keys at retrieval.
|
| 7 |
+
# About 10× the bank size of mean_pool, ~10% of full-prefix.
|
| 8 |
+
#
|
| 9 |
+
# n_image_tokens=132 assumes 2 cameras × (64 image + 2 special) = 132.
|
| 10 |
+
# If the actual prefix layout differs the policy raises a RuntimeError on
|
| 11 |
+
# the first forward containing the actual prefix length — verify with a
|
| 12 |
+
# 1-step smoke before kicking off the full 30k-step run.
|
| 13 |
+
#
|
| 14 |
+
# Recipe: V4 optimizer hyperparameters + write_stride=50 + two_stream.
|
| 15 |
+
|
| 16 |
+
_base_: base_libero.yaml
|
| 17 |
+
|
| 18 |
+
policy:
|
| 19 |
+
training_mode: expert_finetune
|
| 20 |
+
base_checkpoint: HuggingFaceVLA/smolvla_libero
|
| 21 |
+
num_vlm_layers: 16
|
| 22 |
+
injection_layer: 8
|
| 23 |
+
gate_type: residual
|
| 24 |
+
write_stride: 50
|
| 25 |
+
two_stream: true
|
| 26 |
+
n_image_tokens: 132
|
| 27 |
+
perceptual_n_slots: 16
|
| 28 |
+
task_n_slots: 1
|
| 29 |
+
|
| 30 |
+
trainer:
|
| 31 |
+
training_mode: expert_finetune
|
| 32 |
+
total_steps: 30000
|
| 33 |
+
memory_lr: 1.0e-4
|
| 34 |
+
expert_lr: 1.0e-5
|
| 35 |
+
warmup_steps: 500
|
| 36 |
+
wandb_project: memory-smolvla-libero
|
| 37 |
+
wandb_run_name: v5_two_stream_v4hp
|
| 38 |
+
checkpoint_dir: checkpoints/v5_two_stream_v4hp
|
| 39 |
+
checkpoint_every: 5000
|