--- license: apache-2.0 pipeline_tag: robotics library_name: lerobot tags: - diffusion-policy - flow-matching - rectified-flow - so101 - real-robot - manipulation - pick-and-place - lerobot datasets: - wsagi/leisaac-real-pick-orange base_model: - wsagi/FlowHeads-DiffusionPolicy-PickOrange --- # FlowHeads-DiffusionPolicy-Real-PickOrange — SO-101 真机抓橙子(sim-warm-start,FlowDP 真机 best) 真机 SO-101 pick-orange 的 **FlowDP(conv-UNet × rectified-flow head)best checkpoint**:从仿真 best [wsagi/FlowHeads-DiffusionPolicy-PickOrange](https://huggingface.co/wsagi/FlowHeads-DiffusionPolicy-PickOrange)(仿真榜 45.0%)warm-start,用 [wsagi/leisaac-real-pick-orange](https://huggingface.co/datasets/wsagi/leisaac-real-pick-orange)(30 集真机遥操演示)**续训 7000 步(≈4.5 epoch)**。 FlowDP (conv-UNet backbone × rectified-flow head) for real-world SO-101 pick-and-place: warm-started from our sim-best FlowDP checkpoint, fine-tuned for 7000 steps on 30 real teleoperation episodes. **Real-arm score even beats its own sim score** (56.7% vs 45.0% oranges/ep). ## 真机结果 / Real-arm results(2026-07-13) 每轮场景放 3 只橙子,记每轮**放入盘中的橙子数**。Each round has 3 oranges on the table; we count oranges placed on the plate per round. | 策略 / Policy | 轮次成绩 / Per-round | 均值 / Mean | |---|---|---| | **本模型(FlowDP simwarm 7000)/ this model** | 2, 2, 3, 1, 1, 2, 0, 3, 2, 1(10 轮) | **1.7 只/轮(56.7%)** | | ACT simwarm 5000([wsagi/ACT-Real-PickOrange](https://huggingface.co/wsagi/ACT-Real-PickOrange)) | 2, 1, 1, 3, 2, 1, 0, 1, 2, 2(10 轮) | 1.5 只/轮 | | FlowDP 从零 9000 / from-scratch | 能抓取,放置不稳 / grasps, unstable placement | | - 放入 ≥1 只的轮 9/10,两轮 3 只满放。**真机 56.7% 甚至超过同模型的仿真榜成绩 45.0%**。 - **sim-warm-start 再次变现**(与 ACT 线结论一致),且 FlowDP simwarm 反超 ACT simwarm(1.7 vs 1.5 只/轮)成为**真机全场 best**。 ## 场景 / Scene 顶部相机视角(真机布置)/ top-camera view of the real setup: ![Top-Cam-DP](Top-Cam-DP.jpeg) ## 配方 / Recipe | 项 | 值 | |---|---| | 架构 / Arch | FlowDP = lerobot DiffusionPolicy conv-UNet 骨干 × rectified-flow head(DDPM→flow 替换;horizon 16 / n_action_steps 8 / n_obs_steps 2) | | init | [wsagi/FlowHeads-DiffusionPolicy-PickOrange](https://huggingface.co/wsagi/FlowHeads-DiffusionPolicy-PickOrange)(仿真 strict 20-round 45.0% best,step-9800) | | 数据 / Data | [wsagi/leisaac-real-pick-orange](https://huggingface.co/datasets/wsagi/leisaac-real-pick-orange) 30 集 / 25,091 帧 @30fps | | 续训 / Fine-tune | 7000 步(≈4.5 ep),lr 1e-4,batch 16,原生 480×640 | | 观测 / Obs | `front` + `wrist` 相机 640×480 + 6 维关节位置 | ## 用法 / Usage 代码在 [vitorcen/LeIsaac-Training](https://github.com/vitorcen/LeIsaac-Training) 的 `FlowHeads/` 子包(`flowdp` 是自定义 policy type,需先注册再 `from_pretrained`): ```python import sys; sys.path.insert(0, "/dependencies/FlowHeads") import flowdp.configuration_flowdp # registers type="flowdp" from flowdp.modeling_flowdp import FlowDPPolicy policy = FlowDPPolicy.from_pretrained("wsagi/FlowHeads-DiffusionPolicy-Real-PickOrange") ``` ## 相关项目 / Related projects - — 伞仓:多 VLA 基线训练/评测全记录 - — LeIsaac:SO-101 PickOrange 训练 / benchmark / 真机脚手架