RobotMem + LeRobot
为你的 LeRobot 策略赋予持久化记忆,将学习到的操作经验直接同步至 HuggingFace Hub。
快速开始
from robotmem import RobotMemory
from lerobot.common.policies.act.modeling_act import ACTPolicy
mem = RobotMemory(sync_backend="huggingface_hub")
# 在一次成功的操作回合后
mem.save_perception(
observation=obs_tensor,
action=action_seq,
reward=cumulative_reward,
tags=["pick-and-place", "ACT", "real-world"],
)
# 在新回合开始前,检索相关经验
prior = mem.recall(
query="pick red cube from table",
modality="vision+action",
top_k=5,
)
policy = ACTPolicy.from_pretrained("lerobot/act_aloha_sim")
policy.load_memory_context(prior)
集成功能
LeRobot 由 HuggingFace 创建,是最受欢迎的开源真实世界机器人学习框架。它提供预训练策略、标准化数据集和仿真环境, 数千名研究人员每天都在使用。然而,LeRobot 的策略将每个回合视为独立事件——没有内置机制让机器人记住昨天训练中学到的 内容并在今天加以应用。这正是 RobotMem 弥补的空白。
将 RobotMem 集成到你的 LeRobot 工作流中后,每次操作经验都会成为一条持久化的记忆条目。这些条目包含原始观测、 动作序列、奖励信号以及描述任务上下文的语义标签。RobotMem 使用混合检索系统对这些记忆进行索引,结合向量相似度 搜索和结构化元数据过滤。在每个新回合开始前,你的策略可以检索最相关的历史经验,并据此调整自身行为。
HuggingFace Hub 同步后端对 LeRobot 用户尤为强大。在一台机器上保存的经验会自动推送到你的 Hub 仓库, 使其可被你的整个机器人集群访问。在实验室训练的机器人可以将学到的经验分享给部署在仓库中的机器人, 实现跨环境知识迁移,无需手动搭建数据管道。
- 回合级记忆 — 每个回合结束后保存完整的观测-动作-奖励轨迹,自动去重
- 语义检索 — 通过自然语言任务描述查询记忆,而非仅靠数据集索引
- Hub 同步 — 通过 HuggingFace Hub 推拉经验数据,在机器人和团队间共享
- 策略无关 — 兼容 ACT、Diffusion Policy、VQ-BeT 或任何自定义策略架构
- 离线优先 — 所有记忆本地持久化存储于 SQLite;Hub 同步为可选且非阻塞
- 数据集兼容 — 将记忆导出为 LeRobot 兼容的 HDF5 数据集,用于微调
为什么 LeRobot 团队选择 RobotMem
HuggingFace 生态已经解决了模型共享和数据集托管的问题。RobotMem 通过添加经验共享来补全这幅图景。 部署到新环境时,你的机器人无需从头训练,而是从一个包含相关历史经验的记忆库开始。 早期用户反馈,使用记忆条件策略相比从头训练,操作任务的收敛速度提升了约 40%。 该集成无需修改你现有的 LeRobot 训练循环——只需添加两个函数调用: 每个回合结束后保存一次,下一个回合开始前检索一次。