Views
No views yet
1pip install huggingface_hub
2huggingface-cli download denkiwakame/Qwen3.5-0.8B-LoRA-LAP-UR5e-PyAV --local-dir ./Qwen3.5-0.8B-LoRA-LAP-UR5e-PyAV1import pickle
2import torch
3from peft import PeftModel
4from transformers import Qwen2_5_VLForConditionalGeneration, Qwen2_5_VLProcessor
5
6ckpt_dir = "./Qwen3.5-0.8B-LoRA-LAP-UR5e-PyAV"
7
8# Load base model + LoRA adapter
9base = Qwen2_5_VLForConditionalGeneration.from_pretrained(
10 "Qwen/Qwen3.5-0.8B", torch_dtype=torch.bfloat16, device_map="auto",
11)
12model = PeftModel.from_pretrained(base, f"{ckpt_dir}/model_final")
13processor = Qwen2_5_VLProcessor.from_pretrained(f"{ckpt_dir}/model_final")
14
15# Load dataset stats (required for action denormalization)
16with open(f"{ckpt_dir}/dataset_stats.pkl", "rb") as f:
17 dataset_stats = pickle.load(f)1from rv_train.train import get_pretrained_model
2
3model, cfg = get_pretrained_model("./Qwen3.5-0.8B-LoRA-LAP-UR5e-PyAV", device=0)
4model.eval()dataset_stats.pkl1import pickle
2
3with open("dataset_stats.pkl", "rb") as f:
4 stats = pickle.load(f)
5# stats contains mean/std for action dimensionsmain holds the recommended/final weights.
Earlier training-step snapshots are published as branches named step-<global_step> (e.g., step-17000, step-18000).
Load any of them by passing revision=:1# Download a specific revision
2huggingface-cli download denkiwakame/Qwen3.5-0.8B-LoRA-LAP-UR5e-PyAV --revision step-18000 --local-dir ./Qwen3.5-0.8B-LoRA-LAP-UR5e-PyAV-step-18000
3
4# Or load directly via transformers
5Qwen2_5_VLForConditionalGeneration.from_pretrained(
6 "denkiwakame/Qwen3.5-0.8B-LoRA-LAP-UR5e-PyAV",
7 revision="step-18000",
8 subfolder="model_final",
9)Qwen/Qwen3.5-0.8B1DATALOADER:
2 ROBOVERSE:
3 cfg_opts: IMAGE.crop_img:0.9:IMAGE.img_size:224:IMAGE.cam_list:('3p1','wrist_right1')
4 cfg_path: libs/RoboVerse/roboverse/configs/ur5e_cluttered_pick_3obj_120.yaml
5 batch_size: 16
6 num_workers: 8
7EXP:
8 AMP: true
9 DATASET: roboverse
10 EXP_ID: lap_qwen3_5_08b_fft_ur5e_cluttered_pick_3obj_120_lora
11 LOSS: {}
12 LR_SCHED: none
13 MODEL: qwen
14 OPTIMIZER: adamw
15 SEED: 0
16EXP_EXTRA:
17 no_test: true
18 no_track: true
19 no_val: true
20 save_at_steps:
21 - 2000
22 - 4000
23 - 6000
24 - 8000
25 save_ckp: 0
26 save_last_ckpt: true
27 test_eval_freq: 1
28 val_eval_freq: 1
29LR_SCHED:
30 lr_clip: 1.0e-08
31 lr_decay_factor: 0.5
32 lr_patience: 4
33MODEL:
34 QWEN:
35 action_mask_aug_per: 0.4
36 action_type: original
37 add_vision_id: true
38 attention_dropout: 0.0
39 enable_thinking: true
40 grad_checkpoint: false
41 history: 1
42 horizon: 8
43 lap_action_is_absolute: true
44 lap_emit_holds: false
45 lap_rotation_precision: 1
46 lap_sum_decimal: 1f
47 lora_config: default
48 lora_rank: 8
49 num_bins_actions: 1000
50 num_cam: 2
51 original_action_dim: 7
52 qwen_model_id: Qwen/Qwen3.5-0.8B
53 reasoning: true
54 rgb_img_size:
55 - 224
56 - 224
57 rgb_input: true
58 tiled_rgb_imgs: true
59 use_flash_attention_2: true
60 use_lora: true
61 use_qlora: false
62TRAIN:
63 clip_grad_norm: 0.0
64 l2: 1.0e-10
65 lr: 1.0e-05
66 num_epochs: 100
67 num_iters: 10000
68 save_iter_ckp: 2500
69WANDB:
70 enable: true
71 entity: ''
72 log_interval: 100
73 mode: online
74 project: vla0
75 resume_id: ''
76 run_name: ''
77 tags: ''
78
79| File | Description |
|---|---|
model_final/adapter_config.json | PEFT adapter configuration (includes base_model_name_or_path) |
model_final/adapter_model.safetensors | LoRA adapter weights |
model_final/tokenizer.json | Tokenizer |
dataset_stats.pkl | Action normalization statistics (required for inference) |
config.yaml | Training configuration |