LeRobot 实现了多种最先进的策略架构,统一在 PreTrainedPolicy 抽象基类下。
所有策略继承自 PreTrainedPolicy 抽象基类,提供标准化接口:
predictactionchunk)或单步选择(select_action)预测动作HubMixin 推拉模型到 Hugging Face Hub策略的典型生命周期如下:
# 初始化
policy = ACTPolicy(config)
# 训练
loss = policy.forward(batch)
loss.backward()
optimizer.step()
# 推理
action_chunk = policy.select_action(observation)
lerobot.policies.utils 模块提供管理环境和策略之间数据流的关键函数:
buildobsframe:使用数据集的特征配置从原始观测中提取特征makerobotaction:将策略输出的数值张量映射回命名的机器人动作字典模仿学习(IL)策略从专家演示中学习:
| 策略 | 特点 |
|---|---|
| ACT (Action Chunking Transformer) | 基于 Transformer 的动作分块,适合高精度任务 |
| Diffusion | 扩散策略,通过去噪过程生成动作序列 |
| VQ-BeT (Vector Quantized Behavior Transformer) | 基于向量量化的行为 Transformer |
| Multitask DiT | 多任务 Diffusion Transformer |
VLA 模型结合视觉和语言理解进行机器人控制:
| 策略 | 特点 |
|---|---|
| Pi0 / Pi0Fast | 预训练视觉-语言-动作模型,支持高效微调 |
| Pi0.5 | 轻量级变体 |
| SmolVLA | 小型 VLA 模型,适合资源受限场景 |
| GR00T | NVIDIA 人形机器人通用基础模型 |
| XVLA | 可扩展 VLA 架构 |
| MolmoAct2 | 基于多模态理解的 VLA 模型 |
| 策略 | 特点 |
|---|---|
| HIL-SERL | 人类介入的强化学习,结合示教和自主探索 |
| TDMPC | 基于模型预测控制的强化学习 |
策略支持实时动作分块,使推理能够在严格的实时约束下进行。这通过分块缓冲区实现,允许异步推理和同步执行。
策略通过工厂模式创建,支持插件式注册:
PolicyFactory 维护策略类型注册表src/lerobot/policies/factory.py–policy.type=xxx 在 CLI 中选择