mirror of
https://github.com/huggingface/lerobot.git
synced 2026-07-23 01:41:54 +00:00
Merge branch 'main' into feature/add-multitask-dit
This commit is contained in:
@@ -128,6 +128,7 @@ Learn how to implement your own simulation environment or benchmark and distribu
|
|||||||
## Resources
|
## Resources
|
||||||
|
|
||||||
- **[Documentation](https://huggingface.co/docs/lerobot/index):** The complete guide to tutorials & API.
|
- **[Documentation](https://huggingface.co/docs/lerobot/index):** The complete guide to tutorials & API.
|
||||||
|
- **[Chinese Tutorials: LeRobot+SO-ARM101中文教程-同济子豪兄](https://zihao-ai.feishu.cn/wiki/space/7589642043471924447)** Detailed doc for assembling, teleoperate, dataset, train, deploy. Verified by Seed Studio and 5 global hackathon players.
|
||||||
- **[Discord](https://discord.gg/q8Dzzpym3f):** Join the `LeRobot` server to discuss with the community.
|
- **[Discord](https://discord.gg/q8Dzzpym3f):** Join the `LeRobot` server to discuss with the community.
|
||||||
- **[X](https://x.com/LeRobotHF):** Follow us on X to stay up-to-date with the latest developments.
|
- **[X](https://x.com/LeRobotHF):** Follow us on X to stay up-to-date with the latest developments.
|
||||||
- **[Robot Learning Tutorial](https://huggingface.co/spaces/lerobot/robot-learning-tutorial):** A free, hands-on course to learn robot learning using LeRobot.
|
- **[Robot Learning Tutorial](https://huggingface.co/spaces/lerobot/robot-learning-tutorial):** A free, hands-on course to learn robot learning using LeRobot.
|
||||||
|
|||||||
@@ -58,6 +58,32 @@ class Robot(abc.ABC):
|
|||||||
def __str__(self) -> str:
|
def __str__(self) -> str:
|
||||||
return f"{self.id} {self.__class__.__name__}"
|
return f"{self.id} {self.__class__.__name__}"
|
||||||
|
|
||||||
|
def __enter__(self):
|
||||||
|
"""
|
||||||
|
Context manager entry.
|
||||||
|
Automatically connects to the camera.
|
||||||
|
"""
|
||||||
|
self.connect()
|
||||||
|
return self
|
||||||
|
|
||||||
|
def __exit__(self, exc_type, exc_value, traceback) -> None:
|
||||||
|
"""
|
||||||
|
Context manager exit.
|
||||||
|
Automatically disconnects, ensuring resources are released even on error.
|
||||||
|
"""
|
||||||
|
self.disconnect()
|
||||||
|
|
||||||
|
def __del__(self) -> None:
|
||||||
|
"""
|
||||||
|
Destructor safety net.
|
||||||
|
Attempts to disconnect if the object is garbage collected without cleanup.
|
||||||
|
"""
|
||||||
|
try:
|
||||||
|
if self.is_connected:
|
||||||
|
self.disconnect()
|
||||||
|
except Exception: # nosec B110
|
||||||
|
pass
|
||||||
|
|
||||||
# TODO(aliberts): create a proper Feature class for this that links with datasets
|
# TODO(aliberts): create a proper Feature class for this that links with datasets
|
||||||
@property
|
@property
|
||||||
@abc.abstractmethod
|
@abc.abstractmethod
|
||||||
|
|||||||
@@ -58,6 +58,32 @@ class Teleoperator(abc.ABC):
|
|||||||
def __str__(self) -> str:
|
def __str__(self) -> str:
|
||||||
return f"{self.id} {self.__class__.__name__}"
|
return f"{self.id} {self.__class__.__name__}"
|
||||||
|
|
||||||
|
def __enter__(self):
|
||||||
|
"""
|
||||||
|
Context manager entry.
|
||||||
|
Automatically connects to the camera.
|
||||||
|
"""
|
||||||
|
self.connect()
|
||||||
|
return self
|
||||||
|
|
||||||
|
def __exit__(self, exc_type, exc_value, traceback) -> None:
|
||||||
|
"""
|
||||||
|
Context manager exit.
|
||||||
|
Automatically disconnects, ensuring resources are released even on error.
|
||||||
|
"""
|
||||||
|
self.disconnect()
|
||||||
|
|
||||||
|
def __del__(self) -> None:
|
||||||
|
"""
|
||||||
|
Destructor safety net.
|
||||||
|
Attempts to disconnect if the object is garbage collected without cleanup.
|
||||||
|
"""
|
||||||
|
try:
|
||||||
|
if self.is_connected:
|
||||||
|
self.disconnect()
|
||||||
|
except Exception: # nosec B110
|
||||||
|
pass
|
||||||
|
|
||||||
@property
|
@property
|
||||||
@abc.abstractmethod
|
@abc.abstractmethod
|
||||||
def action_features(self) -> dict:
|
def action_features(self) -> dict:
|
||||||
|
|||||||
Reference in New Issue
Block a user