From d6c605e8c5761c2b3d1c57b28b0a5c3e12dc18ca Mon Sep 17 00:00:00 2001 From: "Duhyeon, Kim" <49020301+dudududukim@users.noreply.github.com> Date: Thu, 23 Jul 2026 21:37:57 +0900 Subject: [PATCH 1/3] refactor(pi05): remove unused variables in embed_suffix method (#3263) * refactor(pi05): remove unused variables in embed_suffix method * Refactor embed_suffix to streamline pad_masks handling Removed unused pad_masks list and simplified its creation. Signed-off-by: Duhyeon, Kim <49020301+dudududukim@users.noreply.github.com> --------- Signed-off-by: Duhyeon, Kim <49020301+dudududukim@users.noreply.github.com> Co-authored-by: Steven Palma --- src/lerobot/policies/pi05/modeling_pi05.py | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/src/lerobot/policies/pi05/modeling_pi05.py b/src/lerobot/policies/pi05/modeling_pi05.py index 33896a9fa..d45f5a5c2 100644 --- a/src/lerobot/policies/pi05/modeling_pi05.py +++ b/src/lerobot/policies/pi05/modeling_pi05.py @@ -524,8 +524,6 @@ class PI05Pytorch(nn.Module): # see openpi `PI0Pytorch` def embed_suffix(self, noisy_actions, timestep): """Embed noisy_actions, timestep to prepare for Expert Gemma processing.""" - embs = [] - pad_masks = [] att_masks = [] # Embed timestep using sine-cosine positional encoding @@ -551,23 +549,17 @@ class PI05Pytorch(nn.Module): # see openpi `PI0Pytorch` return F.silu(x) time_emb = self._apply_checkpoint(time_mlp_func, time_emb) - action_time_emb = action_emb adarms_cond = time_emb - embs.append(action_time_emb) - bsize, action_time_dim = action_time_emb.shape[:2] - action_time_mask = torch.ones(bsize, action_time_dim, dtype=torch.bool, device=timestep.device) - pad_masks.append(action_time_mask) + bsize, action_time_dim = action_emb.shape[:2] + pad_masks = torch.ones(bsize, action_time_dim, dtype=torch.bool, device=timestep.device) # Set attention masks so that image, language and state inputs do not attend to action tokens att_masks += [1] + ([0] * (self.config.chunk_size - 1)) - - embs = torch.cat(embs, dim=1) - pad_masks = torch.cat(pad_masks, dim=1) - att_masks = torch.tensor(att_masks, dtype=embs.dtype, device=embs.device) + att_masks = torch.tensor(att_masks, dtype=action_emb.dtype, device=action_emb.device) att_masks = att_masks[None, :].expand(bsize, len(att_masks)) - return embs, pad_masks, att_masks, adarms_cond + return action_emb, pad_masks, att_masks, adarms_cond def forward(self, images, img_masks, tokens, masks, actions, noise, time) -> Tensor: """Do a full training forward pass and compute the loss.""" From ad176c6d41f7094a23511ea84c15527a705fa2a2 Mon Sep 17 00:00:00 2001 From: Eunsung Kim <129603643+Eunsung-kespion@users.noreply.github.com> Date: Thu, 23 Jul 2026 22:25:46 +0900 Subject: [PATCH 2/3] Feature omx docs (#3421) * docs(omx): add header and omx image in docs * fix(docs):adjust image size in omx docs --------- Co-authored-by: Steven Palma --- docs/source/omx.mdx | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/source/omx.mdx b/docs/source/omx.mdx index 4617ac7bd..e547df21c 100644 --- a/docs/source/omx.mdx +++ b/docs/source/omx.mdx @@ -1,3 +1,11 @@ +# OMX + +OMX + ## Order and Assemble the parts First, assemble the OMX hardware following the official assembly guide. From 228cb5ddb90a020619ce451ce5a0e24037661d05 Mon Sep 17 00:00:00 2001 From: YK <1811651+ykdojo@users.noreply.github.com> Date: Thu, 23 Jul 2026 07:07:58 -0700 Subject: [PATCH 3/3] Fix missing periods at end of sentences in README (#3473) Co-authored-by: Steven Palma --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 53d92f96e..63081acae 100644 --- a/README.md +++ b/README.md @@ -83,7 +83,7 @@ episode_index=0 print(f"{dataset[episode_index]['action'].shape=}\n") ``` -Learn more about it in the [LeRobotDataset Documentation](https://huggingface.co/docs/lerobot/lerobot-dataset-v3) +Learn more about it in the [LeRobotDataset Documentation](https://huggingface.co/docs/lerobot/lerobot-dataset-v3). ## SoTA Models @@ -109,7 +109,7 @@ lerobot-train \ | **World Models** | [VLA-JEPA](./docs/source/vla_jepa.mdx), [LingBot-VA](./docs/source/lingbot_va.mdx), [FastWAM](./docs/source/fastwam.mdx) | | **Reward Models** | [SARM](./docs/source/sarm.mdx), [TOPReward](./docs/source/topreward.mdx), [Robometer](./docs/source/robometer.mdx) | -Similarly to the hardware, you can easily implement your own policy & leverage LeRobot's data collection, training, and visualization tools, and share your model to the HF Hub +Similarly to the hardware, you can easily implement your own policy & leverage LeRobot's data collection, training, and visualization tools, and share your model to the HF Hub. For detailed policy setup guides, see the [Policy Documentation](https://huggingface.co/docs/lerobot/bring_your_own_policies). For GPU/RAM requirements and expected training time per policy, see the [Compute Hardware Guide](https://huggingface.co/docs/lerobot/hardware_guide). @@ -126,7 +126,7 @@ lerobot-eval \ --eval.n_episodes=10 ``` -Learn how to implement your own simulation environment or benchmark and distribute it from the HF Hub by following the [EnvHub Documentation](https://huggingface.co/docs/lerobot/envhub) +Learn how to implement your own simulation environment or benchmark and distribute it from the HF Hub by following the [EnvHub Documentation](https://huggingface.co/docs/lerobot/envhub). ## Resources