LeRobot documentation
WALL-OSS
WALL-OSS
WALL-OSS là một mô hình nền tảng mã nguồn mở cho trí tuệ thân thể, do nhóm XSquare Robot đề xuất vào năm 2025. Bản triển khai LeRobot được điều chỉnh từ kho mã nguồn mở WallX của họ.
WALL-OSS của X Square Robot hiện đã được tích hợp vào hệ sinh thái LeRobot của Hugging Face. Đây là một dự án hợp tác thú vị giữa các nhóm LeRobot và X Square Robot. Bạn giờ có thể huấn luyện hậu (post-train), đánh giá và triển khai WALL-OSS trực tiếp thông qua LeRobot. Với điều này, chúng tôi hướng đến việc giúp cộng đồng robotics mã nguồn mở dễ dàng tùy chỉnh và triển khai các mô hình nền tảng (foundation models) WALL-OSS hơn. Đọc và khám phá bài báo và mã nguồn của WALL-OSS.
Tổng quan về Mô hình
Đội ngũ WALL-OSS đang xây dựng mô hình nền tảng cho hệ thống có thân xác (embodied foundation model) nhằm nắm bắt và nén dữ liệu có giá trị nhất của thế giới: dòng tương tác vật lý liên tục, độ trung thực cao. Bằng cách tạo ra vòng phản hồi trực tiếp giữa các quyết định của mô hình và trải nghiệm thực tế của thân xác, sự xuất hiện của một trí tuệ thực sự có khả năng khái quát hóa được kích hoạt — một trí tuệ không chỉ hiểu cách thế giới vận hành, mà còn biết cách hành động hiệu quả trong đó.
Về mặt kỹ thuật, WALL-OSS giới thiệu một kiến trúc đa phương thức liên kết chặt chẽ (cấu trúc MoE liên kết chặt chẽ) tích hợp cả các chiến lược mô hình hóa hành động rời rạc và liên tục. Thông qua quy trình huấn luyện hai giai đoạn (Lấy cảm hứng → Tích hợp), mô hình dần thống nhất suy luận ngữ nghĩa và tạo hành động tần số cao. Các đổi mới cốt lõi của nó bao gồm:
- Pretraining đa phương thức tăng cường nhận thức thân thể: Huấn luyện quy mô lớn trên dữ liệu thị giác–ngôn ngữ–hành động thống nhất để tăng cường hiểu biết về không gian, nhân quả và thao tác.
- Chuỗi suy luận xuyên cấp độ thống nhất (Uni-CoT): Một khung có thể phân biệt duy nhất, thống nhất việc suy luận chỉ lệnh cấp cao, phân rã tác vụ con và tổng hợp hành động chi tiết, tạo thành một chuỗi liên tục từ “hiểu” đến “thực thi.”
- Đầu hành động Mixture-of-Experts (MoE): Kích hoạt động các chuyên gia tùy theo giai đoạn của tác vụ và mô hình hóa hành động trong không gian rời rạc hoặc liên tục để duy trì các tiên nghiệm VLM ổn định.
- Two-stage training paradigm:
- Giai đoạn lấy cảm hứng: Đưa vào các tiên nghiệm hành động rời rạc để tăng cường hiểu biết không gian và sự khớp ngữ nghĩa-hành động.
- Giai đoạn tích hợp: Sử dụng flow matching để đạt được điều khiển liên tục tần số cao.
Yêu cầu cài đặt
Cài đặt LeRobot bằng cách làm theo Hướng dẫn cài đặt của chúng tôi.
Cài đặt các phụ thuộc của WallX bằng cách chạy:
pip install -e ".[wallx]"
Cách sử dụng
Để sử dụng WallX trong LeRobot, hãy chỉ định loại policy là:
policy.type=wall_xTạo văn bản và điều khiển tương tác
WALL-OSS cung cấp khả năng tạo văn bản gốc thông qua hợp đồng chính sách từ Đưa chính sách của bạn vào.
Runtime cung cấp query_kind và query_text do người gọi sở hữu trước khi chạy pipeline đầu vào thông thường của WALL-OSS:
request = {
**observation,
"query_kind": "vqa",
"query_text": "Which object is closest to the right gripper?",
}
processed_batch = preprocessor(request)
answer = policy.generate_text(processed_batch)vqa giữ nguyên câu hỏi dưới dạng payload của người dùng. next_subtask áp dụng công thức checkpoint trước ${subtask}. WALL-X ghi đè trực tiếp API công khai generate_text(processed_batch) cho chuyên gia thị giác-ngôn ngữ Qwen của nó và báo cáo khả năng đó thông qua supports_text_generation().
Runtime ngôn ngữ tương tác có thể tạo ra một tác vụ con và sau đó điều kiện dự đoán hành động WALL-OSS dựa trên nó:
lerobot-rollout \
--strategy.type=base \
--policy.path=your-org/your-wall-oss-checkpoint \
--robot.type=your_robot_type \
--robot.port=/dev/your_robot_port \
--task="clear the table" \
--interactive=trueSau /start, hãy dùng /vqa <question> cho VQA dựa trên hình ảnh hoặc /autosteer <goal> cho việc tạo subtask tiếp theo dựa trên công thức. /subtask <text> bỏ qua bước tạo và gửi trực tiếp một chỉ thị đến suy luận hành động.
Huấn luyện
Để huấn luyện WallX, bạn có thể sử dụng script huấn luyện LeRobot tiêu chuẩn với cấu hình phù hợp:
lerobot-train \
--dataset.repo_id=your_dataset \
--policy.type=wall_x \
--output_dir=./outputs/wallx_training \
--job_name=wallx_training \
--policy.repo_id=your_repo_id \
--policy.pretrained_name_or_path=x-square-robot/wall-oss-flow \
--policy.prediction_mode=diffusion \
--policy.attn_implementation=eager \
--steps=3000 \
--policy.device=cuda \
--batch_size=32Huấn luyện với chú thích ngôn ngữ
WALL-X sử dụng công thức tích hợp sẵn để huấn luyện từ các cột ngôn ngữ tùy chọn của LeRobot. Chỉ đặt recipe_path nếu bạn muốn thay thế công thức đó:
lerobot-train \ --dataset.repo_id=your_org/your_language_annotated_dataset \ --policy.type=wall_x \ --policy.pretrained_name_or_path=x-square-robot/wall-oss-flow \ --policy.text_loss_weight=0.01 \ --policy.flow_loss_weight=1.0 \ --policy.device=cuda \ --batch_size=1 \ --steps=20000
Các lượt phản hồi của trợ lý có mục tiêu nhận cross-entropy của token tiếp theo, trong khi các luồng của công thức low_level nhận giám sát hành động-luồng liên tục. Một dòng có thể nhận
một trong hai mục tiêu hoặc cả hai. Các prompt của người dùng, hình ảnh, cảm giác vị trí, các token truy vấn hành động và padding được loại trừ khỏi tổn thất văn bản. Đặt policy.recipe=null để
sử dụng đường dẫn huấn luyện chỉ hành động ban đầu của WALL-OSS.
Xem Các cột ngôn ngữ và công thức để biết về schema chú thích và các công thức có sẵn.
Tham số huấn luyện
| Tham số | Mô tả |
|---|---|
--dataset.repo_id | ID của kho Hugging Face Hub cho tập dữ liệu huấn luyện của bạn (ví dụ: lerobot/aloha_sim_insertion_human) |
--policy.type | Chỉ định việc sử dụng kiến trúc chính sách WallX |
--output_dir | Thư mục cục bộ nơi các checkpoint huấn luyện và nhật ký sẽ được lưu |
--job_name | Một định danh tên cho phiên huấn luyện này (được sử dụng trong ghi log/truy vết) |
--policy.repo_id | ID của kho Hugging Face Hub nơi mô hình đã được huấn luyện sẽ được đẩy lên |
--policy.pretrained_name_or_path | Đường dẫn đến trọng số WallX được huấn luyện trước để khởi tạo (checkpoint WALL-OSS chính thức) |
--policy.prediction_mode | Chiến lược dự đoán hành động: diffusion hoặc fast - diffusion sử dụng khử nhiễu lặp lại để tạo hành động, fast sử dụng dự đoán token tiếp theo thay thế |
--policy.attn_implementation | Backend triển khai Attention - eager sử dụng attention PyTorch tiêu chuẩn (các lựa chọn thay thế bao gồm flash_attention_2 hoặc sdpa) |
--steps | Tổng số bước huấn luyện cần chạy |
--policy.device | Thiết bị để huấn luyện (cuda cho GPU, cpu cho CPU) |
--batch_size | Số lượng mẫu trong mỗi lô huấn luyện |
Huấn luyện ngôn ngữ sử dụng policy.text_loss_weight (mặc định 0.01), policy.flow_loss_weight (mặc định 1.0) và policy.tokenizer_max_length (mặc định 768). policy.recipe_path có thể thay thế công thức tích hợp.
Giấy phép
Mô hình này tuân theo Giấy phép Apache 2.0, nhất quán với kho WallX gốc.
Update on GitHub