LeRobot documentation
DM0.5 cho LeRobot
DM0.5 cho LeRobot
DM05, còn được phát hành dưới tên DM0.5, là mô hình Vision-Language-Action của Dexmal dành cho điều khiển robot trong môi trường mở. Bộ adapter LeRobot giữ nguyên đường dẫn mô hình OpenDM trong khi sử dụng các bộ dữ liệu, bộ xử lý, quy trình huấn luyện, lưu checkpoint, tải từ Hub và đánh giá chuẩn của LeRobot.
Để biết chi tiết về mô hình, hãy xem bài viết kỹ thuật DM0.5, kho OpenDM và bản phát hành Dexmal/DM05 gốc.
Cài đặt
pip install -e ".[training,dm05]" # training
pip install -e ".[libero,dm05]" # LIBERO evaluation on LinuxCheckpoint
Sử dụng lerobot/dm05_base với --policy.path. Đây là bản chuyển đổi LeRobot tự chứa của checkpoint OpenDM thô và hỗ trợ DM05Policy.from_pretrained().
Cấu hình cơ bản ghi lại hợp đồng trạng thái/hành động 14 chiều của OpenDM. Mô hình lõi của DM05 hỗ trợ tối đa 32 chiều; việc tinh chỉnh mới sẽ xác định các đặc trưng hình ảnh, trạng thái và hành động hiệu dụng từ bộ dữ liệu đích.
Hợp đồng dữ liệu
DM05 chấp nhận các bộ dữ liệu LeRobot tiêu chuẩn với:
- một hoặc nhiều quan sát hình ảnh hoặc video;
observation.state;action;- mô tả tác vụ.
Đặt policy.image_keys khi thứ tự camera phải được chỉ định rõ ràng. RoboTwin, ALOHA và các nguồn khác không cần trình đọc riêng cho DM05 sau khi chuyển đổi sang schema LeRobot chuẩn. Giữ nguyên các khóa chuẩn observation.state và action; chỉ dùng rename_map để đồng bộ tên camera.
Huấn luyện
Công thức LIBERO tuân theo OpenDM:
lerobot-train \
--dataset.repo_id=lerobot/libero \
--rename_map='{"observation.images.image": "observation.images.front", "observation.images.image2": "observation.images.wrist"}' \
--dataset.video_backend=pyav \
--policy.path=lerobot/dm05_base \
--policy.add_state=false \
--policy.chunk_size=10 \
--policy.n_action_steps=10 \
--policy.repo_id=your_repo_id \
--output_dir=outputs/train/dm05-libero \
--steps=50000 \
--batch_size=8 \
--policy.device=cudaCác tham số huấn luyện chính
| Tham số | Giá trị LIBERO | Ý nghĩa |
|---|---|---|
dataset.repo_id | lerobot/libero | Bộ dữ liệu huấn luyện LeRobot tiêu chuẩn |
policy.path | lerobot/dm05_base | Điểm kiểm tra cơ bản tự chứa |
rename_map | image/image2 thành front/wrist | Tên camera được sử dụng bởi lệnh eval và lerobot/dm05_libero |
policy.add_state | false | Khớp với prompt LIBERO của OpenDM không có token trạng thái |
policy.use_relative_actions | false (mặc định của checkpoint) | Học các hành động đã lưu giữ nguyên; chế độ tương đối là tùy chọn bật rõ ràng |
policy.chunk_size | 10 | Số lượng hành động được dự đoán cho mỗi khối |
policy.n_action_steps | 10 | Số lượng được thực hiện trước lần gọi mô hình tiếp theo; tối đa chunk_size |
policy.repo_id | your_repo_id | Điểm đến trên Hub; sử dụng policy.push_to_hub=false cho các lần chạy chỉ trên máy cục bộ |
Chế độ kiểm soát môi trường được cấu hình riêng biệt so với biểu diễn hành động của chính sách. Chế độ tương đối yêu cầu các chiều trạng thái/hành động phải khớp nhau.
Camera
Bộ camera là một phần của cấu hình chính sách, và prompt luôn render chính xác những camera đó. Fine-tuning từ lerobot/dm05_base, vốn không khai báo camera nào, sẽ lấy các camera từ tập dữ liệu huấn luyện. Một checkpoint đã fine-tune giữ nguyên tên camera của nó: ánh xạ một tập dữ liệu có tên khác lên chúng bằng --rename_map, ví dụ --rename_map='{"observation.images.top": "observation.images.front"}'.
Thống kê chuẩn hóa
Training sử dụng thống kê state/action của dataset trong meta/stats.json. Thống kê action phải khớp với biểu diễn được dùng cho training. Với policy.use_relative_actions=true, hãy tính chúng sau phép biến đổi relative-action, sử dụng cùng chunk size và các chiều bị loại trừ. Xem hướng dẫn relative-action.
Đánh giá
Checkpoint LIBERO lerobot/dm05_libero được huấn luyện trong 50.000 bước và được đánh giá trên cả 40 tác vụ LIBERO với 5 tập (episodes) cho mỗi tác vụ:
MUJOCO_GL=egl lerobot-eval \
--policy.path=lerobot/dm05_libero \
--env.type=libero \
--env.task=libero_spatial,libero_object,libero_goal,libero_10 \
--env.camera_name_mapping='{"agentview_image":"front","robot0_eye_in_hand_image":"wrist"}' \
--env.observation_height=256 \
--env.observation_width=256 \
--env.control_mode=relative \
--eval.n_episodes=5 \
--eval.batch_size=1 \
--seed=7 \
--policy.device=cuda| Bộ | Thành công |
|---|---|
| Không gian | 49/50 |
| Đối tượng | 50/50 |
| Mục tiêu | 50/50 |
| LIBERO-10 | 48/50 |
| Tổng | 197/200 (98.5%) |
Đây là kiểm tra tái tạo 200 tập, không phải giao thức đánh chuẩn LIBERO 2.000 tập.
Bố cục checkpoint
Sử dụng thư mục checkpoint hoàn chỉnh, bao gồm trọng số chính sách, cấu hình và trạng thái bộ xử lý. Một tệp model.safetensors độc lập là không đủ để huấn luyện hoặc suy luận.
Giấy phép
Tích hợp LeRobot có giấy phép Apache-2.0. Trọng số mô hình tuân theo giấy phép đính kèm trong thẻ mô hình DM05 tương ứng.
Update on GitHub