pepijn223
98ee5cdc22
feat(lingbot_va): implement training / fine-tuning (flow-matching loss)
...
- Implement LingBotVAPolicy.forward(): dual-stream flow-matching training loss
(latent + action, timestep-weighted, action-masked) ported from upstream train.py;
VAE-encodes camera clips, UMT5-encodes the task, noises both streams, runs the
block-causal flex-attention training pass (forward_train).
- training_loss_from_streams() core + _build_training_streams() data prep (action
scatter into the 30-d space, multi-frame VAE encode incl. robotwin_tshape).
- get_optim_params returns only trainable transformer params (LoRA/PEFT friendly);
VAE/UMT5 stay frozen. Training needs attn_mode='flex'.
- Add a tiny-config single-training-step test (forward->loss->backward->AdamW) and a
Training/fine-tuning section in the docs.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-23 17:31:28 +00:00
..
2026-06-23 17:30:31 +00:00
2026-05-21 22:14:07 +02:00
2026-04-01 12:59:12 +02:00
2026-04-12 20:03:04 +02:00
2026-06-12 15:12:33 +02:00
2026-04-12 20:03:04 +02:00
2026-04-12 20:03:04 +02:00
2026-05-11 15:19:12 +02:00
2026-04-12 20:03:04 +02:00
2026-05-14 15:11:35 +02:00
2025-06-05 17:48:43 +02:00
2026-01-26 17:53:25 +01:00
2025-09-18 15:25:26 +02:00
2026-05-14 23:46:42 +02:00
2026-04-12 20:03:04 +02:00
2026-04-12 20:03:04 +02:00
2026-04-12 20:03:04 +02:00
2026-04-12 20:03:04 +02:00
2026-05-06 18:01:16 +02:00
2025-08-28 11:18:54 +02:00
2026-05-21 22:14:07 +02:00
2026-05-11 15:19:12 +02:00
2026-06-15 16:28:54 +02:00
2025-09-23 16:32:34 +02:00
2026-05-12 15:49:54 +02:00
2026-05-14 23:46:42 +02:00
2026-06-06 00:32:38 +02:00
2025-09-18 15:25:26 +02:00
2025-07-17 14:30:20 +02:00
2026-06-15 16:28:54 +02:00
2026-05-11 19:47:55 +02:00
2026-01-08 13:04:30 +01:00
2026-04-12 20:03:04 +02:00
2025-09-24 16:17:39 +02:00
2026-05-19 14:46:11 +02:00
2026-03-04 15:08:49 +01:00
2026-06-03 14:22:05 +02:00
2026-06-03 14:48:19 +02:00
2026-04-20 21:07:21 +02:00
2026-04-03 14:44:53 +02:00
2026-06-23 17:31:28 +00:00
2026-04-09 10:29:20 +02:00
2026-06-03 14:48:19 +02:00
2026-06-22 13:51:21 +02:00
2026-04-05 21:23:13 +02:00
2025-07-17 14:30:20 +02:00
2026-01-25 22:29:37 +01:00
2026-01-28 17:25:57 +01:00
2026-05-13 11:09:19 +02:00
2026-04-12 20:03:04 +02:00
2026-04-12 20:03:04 +02:00
2026-03-06 15:52:54 +01:00
2026-06-03 14:48:19 +02:00
2025-08-01 17:39:39 +02:00
2025-08-01 17:39:39 +02:00
2025-10-23 13:50:30 +02:00
2026-05-27 18:58:37 +02:00
2026-03-28 00:41:26 +01:00
2026-04-12 20:03:04 +02:00
2026-04-05 19:25:38 +02:00
2026-04-05 19:25:38 +02:00
2026-04-05 19:25:38 +02:00
2025-08-01 17:39:39 +02:00
2025-08-01 17:39:39 +02:00
2026-06-04 19:22:51 +02:00
2025-08-01 17:39:39 +02:00
2026-01-06 15:13:35 +01:00
2026-06-03 14:48:19 +02:00
2026-01-08 14:45:07 +01:00
2026-05-14 23:46:42 +02:00
2026-05-18 19:49:21 +02:00
2026-04-28 00:57:35 +02:00
2026-04-20 17:10:53 +02:00
2026-04-20 19:12:15 +02:00
2026-05-29 21:45:39 +02:00
2026-04-20 20:21:27 +02:00
2026-04-20 17:46:39 +02:00
2026-04-28 00:57:35 +02:00
2026-04-28 17:56:24 +02:00
2026-05-21 22:14:07 +02:00
2026-01-08 13:04:30 +01:00
2026-03-31 12:16:34 +02:00
2026-05-14 23:46:42 +02:00
2026-05-19 14:46:11 +02:00
2026-05-27 14:24:31 +02:00
2025-12-05 13:32:58 +01:00
2026-04-28 00:57:35 +02:00
2026-05-14 23:46:42 +02:00
2026-05-14 23:46:42 +02:00
2026-06-04 19:22:51 +02:00
2026-04-21 17:54:11 +02:00
2026-02-18 22:46:12 +01:00
2026-04-23 14:50:32 +02:00