Skip to content

Repository files navigation

RoboGenesis 101

English

项目状态:Alpha / 课程开发阶段。 L01–L07 已通过各自的 CPU clean-kernel 验证, 状态为 cpu-verified;这些讲次的附加 AMD 路径也已在参考 R9700 环境按各自合同通过。 L08 已通过双语 CPU 数值路径、CPU+EGL 和参考 R9700 AMD+EGL 的脚本化专家验证;L09 已通过双语 CPU 诊断、CPU+EGL 和参考 R9700 AMD+EGL 的双相机录制与回读验证,两讲均为 gpu-verified。重编号后的 L12 训练内容也已通过 ACT、SmolVLA GPU smoke、checkpoint 审计和重载验证,状态为 gpu-verified。L10 已通过双语 CPU-only 数据读取与检查路径,状态为 cpu-verified。L11 已通过双语诊断、CPU+EGL 和参考 R9700 AMD+EGL 的 bounded DR 录制、 回读与 provenance 验证,状态为 gpu-verified。L13 已通过双语诊断、参考 R9700 AMD+EGL 单 checkpoint 闭环评估、matched reference/shifted rollout、H.264 视频与报告证据审计,状态为 gpu-verified;这不表示已经证明稳定成功率、OOD 鲁棒性或 sim-to-real。L14 是不影响核心 13 讲完成路径的可选进阶实践,已在固定 companion runtime 和 4× W7900D 上完成 base 0/10、100-step LoRA、DCP→HF merge、merged 0/10 及 20 个视频的必做路径验证,状态为 gpu-verified。两组结果是独立 aggregate 小样本,不能证明策略提升;resolved-seed matching、 8 卡、1000 回合 benchmark 和 full SFT 尚未验证。

RoboGenesis 101 是一门 Datawhale 开源课程,面向具备 Python 基础、希望系统进入机器人学习实践的学习者。课程以 Genesis 为仿真平台,从环境诊断、场景和刚体物理出发,逐步连接机器人控制、逆运动学、抓取、演示数据、模仿学习、策略训练与闭环评估。

课程强调“概念—代码—实验—证据”的完整链路:讲义解释机制,可复用实现位于 Python 包中,notebook 提供可执行练习,课程状态只根据实际内容和验证结果更新。

在线阅读

在线站点目前展示课程目录和材料发布状态。完整学习内容将在准备完成并通过实际验证后逐步发布。

适合谁

建议学习者具备:

  • Python 基础,能够阅读函数、类、NumPy 数组和命令行参数;
  • 基本的终端、Git 和虚拟环境使用经验;
  • 对机器人仿真、操作学习或模仿学习感兴趣。

不要求预先掌握 Genesis、机器人运动学或策略训练。课程会在概念成为后续实践的必要前提时进行讲解。

学习路径

课程按以下依赖关系推进:

  1. Genesis 环境、场景、实体、物理和仿真生命周期;
  2. 机器人自由度、关节控制、逆运动学、末端位姿、相机和并行仿真;
  3. 抓取任务、脚本化专家、演示获取和数据录制;
  4. 数据集、模仿学习、域随机化、ACT/SmolVLA 训练和闭环评估。
  5. 可选 L14 使用 RoboTwin 数据完成 LingBot-VLA-v2 的 LoRA、checkpoint merge 和受控 闭环 aggregate 评估;它需要独立外部运行环境,不是核心 13 讲的完成前提。

训练 loss 或开环动作预测不等同于任务成功。课程最终以闭环 rollout 和明确的成功判据评价策略。

课程进度

course.json 是课程顺序、标题、时长、硬件要求和状态的唯一结构化来源。

讲次 主题 预计时长 硬件 状态
L01 导论、运行平台与环境诊断 30 分钟 cpu-ok cpu-verified
L02 场景、实体与仿真生命周期 90 分钟 cpu-ok cpu-verified
L03 刚体物理与稳定仿真 90 分钟 cpu-ok cpu-verified
L04 机器人模型、DOF 与关节控制 90 分钟 cpu-ok cpu-verified
L05 逆运动学、末端位姿与相机 120 分钟 cpu-ok cpu-verified
L06 并行仿真与批量 Franka 控制 90 分钟 cpu-ok cpu-verified
L07 抓取任务场景搭建 90 分钟 cpu-ok cpu-verified
L08 演示数据获取与脚本化专家 120 分钟 gpu-recommended gpu-verified
L09 合成数据录制与采数吞吐 120 分钟 gpu-recommended gpu-verified
L10 数据集解剖与模仿学习 101 90 分钟 gpu-recommended cpu-verified
L11 域随机化 90 分钟 gpu-recommended gpu-verified
L12 ACT 与 SmolVLA 策略训练 150 分钟 gpu-required gpu-verified
L13 闭环评估与 Capstone 120 分钟 gpu-required gpu-verified
L14 可选进阶实践:使用 RoboTwin 数据微调 LingBot-VLA-v2 180 分钟 gpu-required gpu-verified

状态从 planned 依次推进到 draft、reviewed、cpu-verified 或 gpu-verified,最终才是 published。详细证据要求见课程内容规范。

环境基线

  • Python:3.12.x;项目声明范围为 >=3.12,<3.13。
  • Genesis:genesis-world==1.3.3。
  • LeRobot:数据与训练扩展均固定为 lerobot==0.6.0。
  • 核心课程完整训练参考平台:Linux x86_64、AMD Radeon AI PRO R9700、系统 ROCm 7.2.0,以及经实测的 ROCm 7.2.1 PyTorch wheels。
  • L14 独立参考 profile:4× AMD Radeon PRO W7900D、固定 companion runtime、Python 3.12.3、PyTorch 2.9.1+rocm7.2.1.gitff65f5bc 与 HIP 7.2.53211-e1a6bc5663。

除上述两个明确记录的 AMD profile 外,其他 GPU/ROCm 组合、CPU-only 完整训练链路、 Apple Silicon、Windows 和其他 Python 版本尚未验证。精确版本、wheel 校验和、已验证能力和限制见 兼容性矩阵。

快速开始

本地阅读文档

文档 CI 使用 Node.js 24;建议本地采用相同主版本:

npm ci
npm run docs:dev

构建静态站点:

npm run docs:build

运行轻量质量门禁

以下环境只安装 pytest、纯逻辑测试所需的 numpy 和当前项目,不安装 Genesis、PyTorch 或训练栈:

UV_PROJECT_ENVIRONMENT=.venv uv sync --only-group dev --locked
uv pip install --python .venv/bin/python --no-deps --editable .
.venv/bin/python -m robo_genesis.course_validation
.venv/bin/python -m pytest

也可以在安装后运行 robo-genesis-validate。

安装完整课程依赖

uv sync --locked --all-extras

该命令使用仓库的可移植依赖解析,并不自动构成 AMD ROCm 环境验证。参考 AMD 平台还需要按兼容性矩阵安装并校验指定的 ROCm wheels。安装后可验证仓库内置的四个 YCB 对象:

uv run python -m robo_genesis.setup_assets

已达到验证状态的讲次可以按课程表进入学习;仍为 planned 的材料可能是结构占位,也可能 仍在开发或验证中,不应当作完整教程使用。

运行 L01 环境自检

使用项目环境启动 Jupyter,打开 L01 notebook 并执行一次 Run All:

uv run jupyter lab

notebook 会打印核心版本,自动优先选择可用的 AMD ROCm 后端,否则使用 CPU,然后运行 一个最小 Genesis 场景。CPU fallback 不阻止继续 L01–L07;训练环境要求和参考平台见 L01 讲义与 兼容性矩阵。

仓库结构

docs/                       VitePress 站点与双语讲义
notebooks/{zh,en}/          双语课程 notebook
src/robo_genesis/           可复用场景、数据、训练和评估实现
scripts/                    仓库级开发与校验入口
tests/                      纯逻辑和仓库契约测试
assets/third_party/         经审计并保留原许可的第三方资产
course.json                 课程元数据和状态真相源

参与贡献

提交 Issue 或 Pull Request 前,请阅读:

贡献者

姓名 职责
王迅(Xun Wang) 项目负责人;课程设计、开发与维护

贡献者名单只根据已经合入的实际贡献更新。

许可

除另有注明的第三方材料外,本项目有权许可的原创代码、讲义、notebook、练习和原创课程媒体均采用 MIT License。提交原创贡献即表示同意按该许可证提供贡献。

第三方代码、资产、数据集、模型、商标及其他材料保留各自原始许可与限制,不受项目 MIT License 覆盖。具体边界见 NOTICE.md 和 LICENSE_POLICY.md。仓库内置的 YCB 资产采用 CC BY-NC 4.0,不属于 MIT 范围。

致谢

感谢 Datawhale 开源学习社区。本课程使用 Genesis 和 LeRobot 构建教学实践;项目与第三方组件之间不存在因引用而产生的官方背书关系。

Releases

Packages

Contributors

Languages