| # Humanoid |
| ## Run Multi-view Video Generation in DreamGen |
|
|
| This document provides instructions and examples on how to run multi-view video generation using the Cosmos-Predict2-Multiview model from the **root directory** (without `cd`). |
|
|
| ## Environment Setup |
|
|
| To run DreamGen scripts from the root directory, you must add `models/dreamgen` to your `PYTHONPATH` so that internal imports like `from examples...` can be resolved: |
|
|
| ```bash |
| # From the root: /pfss/mlde/workspaces/mlde_wsp_IAS_SAMMerge/VLA/doanh/video_world/video_gen_physics |
| export PYTHONPATH=$PYTHONPATH:$(pwd)/models/dreamgen |
| ``` |
|
|
| ## Running the Multi-view Script |
|
|
| The multi-view pipeline generates **7 views** with **29 frames** at **720p**. |
|
|
| Here is the command to run multi-view inference from the root directory: |
|
|
| ```bash |
| torchrun --nproc_per_node=1 --master_port=12341 \ |
| -m examples.video2world_gr00t \ |
| --model_size 14B \ |
| --gr00t_variant droid \ |
| --prompt "A multi-view video shows that a robot pick the lid and put it on the pot The video is split into four views: The top-left view shows the robotic arm from the left side, the top-right view shows it from the right side, the bottom-left view shows a first-person perspective from the robot's end-effector (gripper), and the bottom-right view is a black screen (inactive view). The robot pick the lid and put it on the pot" \ |
| --input_path models/dreamgen/assets/sample_gr00t_dreams_droid/episode_000408.png \ |
| --prompt_prefix "" \ |
| --num_gpus 1 \ |
| --disable_guardrail \ |
| --save_path output/generated_video_droid.mp4 |
| |
| ``` |
|
|
| ### Parameter Explanations |
| - `--model_size 2B`: Uses the 2-Billion parameter multi-view checkpoint. |
| - `--input_path`: Path to your initial image (relative to the root). |
| - `--num_conditional_frames 1`: Uses only the first frame (the image) as the condition. |
| - `--n_views 7`: Generates 7 different camera views. |
| - `--save_path`: The output location for the generated `mp4` video. |
|
|
| ### Multi-GPU Support |
| To run with Context Parallelism using multiple GPUs: |
|
|
| ```bash |
| torchrun --nproc_per_node=2 --master_port=12341 \ |
| -m examples.video2world_gr00t \ |
| --model_size 14B \ |
| --gr00t_variant droid \ |
| --prompt "A multi-view video shows that a robot pick the lid and put it on the pot The video is split into four views: The top-left view shows the robotic arm from the left side, the top-right view shows it from the right side, the bottom-left view shows a first-person perspective from the robot's end-effector (gripper), and the bottom-right view is a black screen (inactive view). The robot pick the lid and put it on the pot" \ |
| --input_path models/dreamgen/assets/sample_gr00t_dreams_droid/episode_000408.png \ |
| --prompt_prefix "" \ |
| --num_gpus 2 \ |
| --disable_guardrail \ |
| --save_path output/generated_video_droid.mp4 |
| |
| ``` |
| # Đảm bảo đang ở thư mục root: /pfss/mlde/workspaces/mlde_wsp_IAS_SAMMerge/VLA/doanh/video_world/video_gen_physics |
|
|
| source models/DreamDojo/.venv/bin/activate |
| export PYTHONPATH=$PYTHONPATH:$(pwd)/models/dreamgen |
|
|
| torchrun --nproc_per_node=2 --master_port=12341 \ |
| -m examples.video2world_gr00t \ |
| --model_size 14B \ |
| --gr00t_variant droid \ |
| --prompt "A multi-view video shows that a robot picks up a pomegranate with its left hand and puts it in the storage box, then picks up a mango with its right hand and puts it in the storage box. The video is split into four views: top-left (front view), top-right (head view), bottom-left (wrist view), and bottom-right (black screen)." \ |
| --input_path models/dreamgen/airbot_multiview_input.png \ |
| --prompt_prefix "" \ |
| --num_gpus 2 \ |
| --disable_guardrail \ |
| --save_path output/generated_video_airbot_droid.mp4 |
|
|
|
|
| # Chạy tất cả 6 Airbot (5 episodes mỗi bộ, FPS=10) |
| NUM_GPUS=1 MAX_EPISODES=0 bash scripts/run_multiview_airbot_all.sh |
| |
| # Hoặc override |
| MAX_EPISODES=3 FPS=8 bash scripts/run_multiview_airbot_all.sh |
| |
| |
| # Single-arm (datasets/single_arm/multiview) |
|
|
| Full-batch prep + DreamGen (`2×2` grid: `exterior_1_left`, `exterior_2_left`, `wrist_left`, black quadrant): |
|
|
| ```bash |
| source models/dreamgen/.venv/bin/activate |
| export PYTHONPATH=$PYTHONPATH:$(pwd)/models/dreamgen |
| |
| NUM_GPUS=2 bash scripts/run_single_arm_multiview_dreamgen_all.sh |
| ``` |
|
|
| One branch only (`makovian` or `non_makovian`): |
|
|
| ```bash |
| DATASET_PATH=datasets/single_arm/multiview/makovian NUM_GPUS=2 \ |
| bash scripts/run_single_arm_multiview_dreamgen_batch.sh |
| ``` |
|
|
| Pipeline chính (`scripts/run_single_arm_multiview_dreamgen_batch.sh`) gọi **`examples.video2world_gr00t`** và checkpoint **`Cosmos-Predict2-14B-Sample-GR00T-Dreams-DROID`** (resolve từ `CHECKPOINTS_DIR` trong `imaginaire/constants.py`). Để baseline **Video2World 2B** (không GR00T), ghi **`tmp/`** — script mặc định **`USE_LVG=1`** + **`NUM_CHUNKS=4`** (`examples.video2world_lvg`, 480p/16fps khớp `model-480p-16fps.pt`; xem `--resolution` / `--fps` trong `video2world_lvg.py`): |
|
|
| ```bash |
| TMP_OUT=./tmp NUM_GPUS=2 \ |
| BATCH_JSON=./sampling_dataset/dense/single_arm/input/multiview/dreamgen/makovian/batch_input.json \ |
| bash scripts/run_single_arm_multiview_video2world_2b_tmp.sh |
| ``` |
| NUM_CHUNKS=3 NUM_GPUS=1 bash scripts/run_single_arm_multiview_video2world_2b_tmp.sh |
| Một clip ngắn (không nối chunk): `USE_LVG=0`. Ghi đè checkpoint: `DIT_PATH=...`. Đây là **`video2world_lvg` / `video2world`**, không phải `video2world_gr00t`. |
| |
| |
| **Độ dài video (số frame thật):** `examples.video2world_gr00t` **không** có cờ `--num_frames`; độ dài mỗi lần sinh do checkpoint / `state_t` cố định (tài liệu multiview: khoảng **29** frame @ 16fps training). Để **video dài hơn**, dùng **LVG** (nối nhiều chunk): |
|
|
| ```bash |
| USE_LVG=1 NUM_CHUNKS=3 NUM_GPUS=1 \ |
| DATASET_PATH=datasets/single_arm/multiview/makovian \ |
| bash scripts/run_single_arm_multiview_dreamgen_batch.sh |
| ``` |
|
|
| `NUM_CHUNKS` càng lớn → clip càng dài (tốn GPU/time hơn). `--fps` trên bản **không**-LVG chỉ đổi tốc độ phát khi encode MP4; bản LVG hiện encode nội bộ **16 fps**. |
|
|
| **Tại sao trước đây có hàng loạt `[WARN] … missing video for exterior_1_left`?** Script cũ đi theo **toàn bộ** `episode_index` trong `meta/episodes.jsonl` (có thể hàng chục nghìn dòng), trong khi trên đĩa bạn chỉ có **một subset** file `episode_XXXXXX.mp4` (dataset chưa tải đủ / chỉ giữ shard). Index kiểu `005698` nằm trong meta nhưng **không có file** ⇒ cảnh báo. **Mặc định mới:** prepare dùng **`--episode_source disk`**: chỉ lấy các episode mà **đủ cả 3 camera** đều có mp4 dưới `videos/chunk-*/…` (khoảng 128 episode trong ví dụ makovian của bạn). Prompt vẫn lấy từ meta khi trùng index; thiếu dòng meta thì fallback câu generic. Nếu cố tình muốn đi theo đúng meta và chấp nhận skip + warn: `EPISODE_SOURCE=meta`. |
| |
| **Gợi ý cũ (`MIN_EPISODE_INDEX`)** vẫn dùng được để giới hạn dải index sau khi đã lọc theo disk: |
|
|
| ```bash |
| MAX_EPISODES=50 MIN_EPISODE_INDEX=1000 NUM_GPUS=2 \ |
| DATASET_PATH=datasets/single_arm/multiview/makovian \ |
| bash scripts/run_single_arm_multiview_dreamgen_batch.sh |
| ``` |
|
|
| Output mặc định: `sampling_dataset/dense/single_arm/input/multiview/dreamgen/<category>/` (grid PNG + `batch_input.json`) và `sampling_dataset/dense/single_arm/output/multiview/dreamgen/<category>/` (mp4). Thư mục `dense/` là tuyến video chuẩn (full steps); sau này có thể thêm các tuyến khác (vd. video tăng tốc / sparse) cạnh `dense/` — xem skill `sampling-dataset-structure`. |
|
|
|
|
| # Bimanual |
| ## Aloha_robot |
| |
| ### DreamGen batch (2×2 grid, droid variant) |
| |
| LeRobot tasks live under `datasets/bimanual/multiview/{makovian,non_makovian}/<task>/`. |
| Grid inputs and `batch_input.json` are written to `sampling_dataset/bimanual/input/multiview/dreamgen/<category>/<task>/`. |
| Generated videos default to `sampling_dataset/bimanual/output/multiview/dreamgen/<category>/<task>/`. |
|
|
| Prepare only (3 static+dynamic slots: high, low, left wrist + black quadrant): |
|
|
| ```bash |
| python scripts/prepare_bimanual_multiview_dreamgen_batch.py \ |
| --dataset_path datasets/bimanual/multiview/makovian/close_toolbox |
| ``` |
|
|
| Four live views (high, low, left wrist, right wrist): |
|
|
| ```bash |
| python scripts/prepare_bimanual_multiview_dreamgen_batch.py \ |
| --dataset_path /pfss/mlde/workspaces/mlde_wsp_IAS_SAMMerge/VLA/doanh/video_world/video_gen_physics/datasets/bimanual/multiview/non_makovian/fold_bath_towel \ |
| --four_views |
| ``` |
|
|
| Single-task prepare + inference: |
|
|
| ```bash |
| source models/DreamDojo/.venv/bin/activate |
| export PYTHONPATH=$PYTHONPATH:$(pwd)/models/dreamgen |
| |
| DATASET_PATH=datasets/bimanual/multiview/makovian/close_toolbox \ |
| bash scripts/run_bimanual_multiview_dreamgen_batch.sh |
| ``` |
| ```bash |
| source models/dreamgen/.venv/bin/activate |
| export PYTHONPATH=$PYTHONPATH:$(pwd)/models/dreamgen |
| |
| DATASET_PATH=datasets/bimanual/multiview/non_makovian/fold_bath_towel \ |
| bash scripts/run_bimanual_multiview_dreamgen_batch.sh |
| ``` |
| ### Tự động toàn bộ task |
|
|
| Script [scripts/run_bimanual_multiview_dreamgen_all.sh](scripts/run_bimanual_multiview_dreamgen_all.sh) lần lượt xử lý **mọi thư mục task** có `meta/episodes.jsonl` dưới `datasets/bimanual/multiview/makovian/*` và `.../non_makovian/*` (thứ tự tên thư mục). Mỗi task: (1) tạo lưới + `batch_input.json` dưới `sampling_dataset/bimanual/input/multiview/dreamgen/<category>/<task>/`, (2) chạy DreamGen lên batch đó. |
|
|
| Từ root repo (đã có venv trong script): |
|
|
| ```bash |
| # Cả makovian + non_makovian, infer toàn episode, 2 GPU |
| NUM_GPUS=2 bash scripts/run_bimanual_multiview_dreamgen_all.sh |
| |
| # Chỉ một nhánh |
| CATEGORY=makovian NUM_GPUS=2 bash scripts/run_bimanual_multiview_dreamgen_all.sh |
| |
| # Bốn ô camera (không ô đen) |
| FOUR_VIEWS=1 NUM_GPUS=2 bash scripts/run_bimanual_multiview_dreamgen_all.sh |
| |
| # Chỉ chuẩn bị batch + PNG (ffmpeg), không cần GPU — chạy infer sau |
| PREPARE_ONLY=1 bash scripts/run_bimanual_multiview_dreamgen_all.sh |
| |
| # Batch đã có sẵn: chỉ infer |
| SKIP_PREPARE=1 NUM_GPUS=2 bash scripts/run_bimanual_multiview_dreamgen_all.sh |
| |
| # Giới hạn episode mỗi task (test nhanh) |
| MAX_EPISODES=3 NUM_GPUS=1 bash scripts/run_bimanual_multiview_dreamgen_all.sh |
| ``` |
|
|
| Biến môi trường khác: `MULTIVIEW_ROOT`, `INPUT_DIR`, `OUTPUT_DIR_ROOT` (ghi đè thư mục video ra), `DYNAMIC_WRIST`, `MODEL_SIZE`, `MASTER_PORT`, `FPS`. |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ABQCFW5HLSyivpYQpzRsAgg/data/gr00t/brush_screws_into_dustpan_human_brush_left_hold?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AHgy4x95OLbl04yHDw7IqqI/data/gr00t/brush_screws_into_dustpan_left_brush_human_hold?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ACnI8RPDbWA9msMM0rX1_Xo/data/gr00t/close_cardboard_box?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AONAPYNvhZNtiKMuMOHvHJ4/data/gr00t/close_toolbox?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AONAPYNvhZNtiKMuMOHvHJ4/data/gr00t/close_toolbox?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ABhzbzBluSd85DYlgHT5B58/data/gr00t/find_hole_and_insert_into_gear?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AINcWNtzLGhS_FzI3Lf5MWI/data/gr00t/find_insert_large_gear_shaft?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AKkjdJU9oXcPF3LEFiDhhDw/data/gr00t/find_insert_small_gear_shaft?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AJRxziYsrEd7EHOC1r9BdBk/data/gr00t/fit_large_gear_shaft?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ADyb3_zrmEjmJ3W30IGuwTc/data/gr00t/fit_small_gear_shaft?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/APX3uyoq6RM9uVPVCcqrH08/data/gr00t/fold_bath_towel?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AIlA8EILMD-qArXYKTXU_IY/data/gr00t/fold_big_towel?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AHGRwiMtscgUoFF5bwucFMM/data/gr00t/fold_blue_towel?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AFfYrj8EiiPJrjRYKxPDK78/data/gr00t/fold_green_towel?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ANvXLKPkOPYUv1kiBQveORk/data/gr00t/fold_light_blue_towel?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AP_wBpVW5skU6g0u946MBAM/data/gr00t/fold_orange_towel?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ALJFsCCQEi9su0nxMIioJwE/data/gr00t/fold_towel_assist?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AA7cxdu5SwhzDeJ-FCBgxl4/data/gr00t/fold_towel_in_random_places?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AEZRF3x26iROaMlM0bkHl6c/data/gr00t/fold_yellow_towel?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ALMTPQGnShstWMSAAKzIvio/data/gr00t/handover_and_wipe_sponge?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ACGtaeyN40UK0-3LSxOkROo/data/gr00t/handover_clear_zip_bag_upright?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ACZOmKyuBDwR5T0JUTmRYZU/data/gr00t/handover_metallic_zip_bag_upright?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AM9LQZq43EHxl0W7k_HTihc/data/gr00t/hit_mark_with_hammer?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AG0WpnaOmp5j4z7X3tXWsm0/data/gr00t/hook_cable_8pin?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ADbEe5GDgrw6LnQ1mvic8r0/data/gr00t/hook_cable_narrow_8pin?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AC9UiUcRRXtEdY7sH_U9FQA/data/gr00t/hook_rubber_shaft?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AD5JRM8YqEMVZWOlvMwWz4M/data/gr00t/insert_gear_onto_shaft_sliding?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ADrhGfTGCDRY3Uzvm-A5jXQ/data/gr00t/insert_lan_cable_into_the_hub?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AE46iX-ZsUjAQO5uXcmaekE/data/gr00t/insert_large_gear_shaft?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/APbrrl5RFt3VnVD2MXW3_Jw/data/gr00t/insert_random_shaft_random_medium_gear?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ACEhPyU1hNfV4EY55W3uLLw/data/gr00t/insert_random_shaft_random_small_gear?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AIlPo-ooDKg4ZuWMvpvkGOE/data/gr00t/insert_rod_board?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AM94k3jyBMZ5xp9yRDfkuHQ/data/gr00t/insert_rod_moved_board?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AMLTcOVuZci-xNjnwp2AoeE/data/gr00t/insert_shaft_into_gear?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AP6Ueermvw4bDt6KyBQusmU/data/gr00t/insert_small_gear_shaft?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ABiQzdMEaR-7ZvkBBk1SWlM/data/gr00t/insert_usb_cable?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ADZih17xms9qLmda3U6sA1c/data/gr00t/insert_usb_cable_board?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AIdL9EvMO2gApRkgYTd9RDk/data/gr00t/insert_usb_cable_fix_parts?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AKwIgy3sl_JoZtNK0NhMHYE/data/gr00t/insert_usb_cable_fixed_by_robot?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AHyVCUFAc84GUtk7OAIyJ2U/data/gr00t/insert_usb_pcbox?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AH4mcBhwUDDoltT848Osl9s/data/gr00t/insert_usb_port_hub?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AFL7RqZu2OMTJX50cagxxG8/data/gr00t/insert_washer_shaft?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AKLXZKEpCH6kJuc8m3xXabs/data/gr00t/insert_washer_shaft_both_hands?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AMibO4nLGXVc9WnYvfPmgRA/data/gr00t/wipe_the_desk_with_a_blue_cloth?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AOJ6Ym5zCIDehwGr1NonQ8I/data/gr00t/wipe_the_desk_with_a_sponge?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/APIqxuoWkm6cQNwU_9M8pvY/data/gr00t/take_out_reel_clear_zip_bag?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ADnOB_uBb2pweSO-Uqg0P1o/data/gr00t/tape_closed_cardboard?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AAhtW5rPDugeOZ6eH27ek5A/data/gr00t/turn_towel_over?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/ALzSwJTUYhEFlCTlniaq6Dg/data/gr00t/spoon_yellow_block_bowl?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AOL52QGW3zMZ3XawKWV9SWU/data/gr00t/spoon_red_block_bowl?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AE1aieZSLWx-75Ca4qmjU64/data/gr00t/remove_box_from_case_right_arm?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AI1Ln8ryvKGEyNiKE1Q4qaA/data/gr00t/remove_box_from_case?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AJQO0XN02iDKRzz-Qf_Sg4Y/data/gr00t/put_tape_white_case_alternating_arms?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
|
|
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AK4Fz8EnnTiplbXtuVassz0/data/gr00t/put_cup_moved_red_handle_holder?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| https://www.dropbox.com/scl/fo/zumqdjhk47uk2k8kcefmu/AFGVgKQpj3R8NP98F8qFoJ0/data/gr00t/place_the_chinese_spoons_on_the_cloth?rlkey=bhkxfigxkt8fmbxb88qnq1og7&dl=0 |
| |
| |
| |