From 0bda18eab55bc384a9fb5328918365fe3793bdda Mon Sep 17 00:00:00 2001 From: Simon Alibert Date: Wed, 21 May 2025 20:18:47 +0200 Subject: [PATCH] Move make_robot_config --- .../datasets/v2/convert_dataset_v1_to_v2.py | 25 ++++++++++++++++++- lerobot/common/robots/utils.py | 24 ------------------ 2 files changed, 24 insertions(+), 25 deletions(-) diff --git a/lerobot/common/datasets/v2/convert_dataset_v1_to_v2.py b/lerobot/common/datasets/v2/convert_dataset_v1_to_v2.py index 00fe47d53..136a7a684 100644 --- a/lerobot/common/datasets/v2/convert_dataset_v1_to_v2.py +++ b/lerobot/common/datasets/v2/convert_dataset_v1_to_v2.py @@ -142,7 +142,6 @@ from lerobot.common.datasets.video_utils import ( get_video_info, ) from lerobot.common.robots import RobotConfig -from lerobot.common.robots.utils import make_robot_config V16 = "v1.6" V20 = "v2.0" @@ -598,6 +597,30 @@ def convert_dataset( create_branch(repo_id=repo_id, branch=V20, repo_type="dataset") +def make_robot_config(robot_type: str, **kwargs) -> RobotConfig: + if robot_type == "aloha": + raise NotImplementedError # TODO + + elif robot_type == "koch_follower": + from lerobot.common.robots.koch_follower import KochFollowerConfig + + return KochFollowerConfig(**kwargs) + elif robot_type == "so100_follower": + from lerobot.common.robots.so100_follower import SO100FollowerConfig + + return SO100FollowerConfig(**kwargs) + elif robot_type == "stretch": + from lerobot.common.robots.stretch3 import Stretch3RobotConfig + + return Stretch3RobotConfig(**kwargs) + elif robot_type == "lekiwi": + from lerobot.common.robots.lekiwi import LeKiwiConfig + + return LeKiwiConfig(**kwargs) + else: + raise ValueError(f"Robot type '{robot_type}' is not available.") + + def main(): parser = argparse.ArgumentParser() task_args = parser.add_mutually_exclusive_group(required=True) diff --git a/lerobot/common/robots/utils.py b/lerobot/common/robots/utils.py index 49253ee26..ec0374955 100644 --- a/lerobot/common/robots/utils.py +++ b/lerobot/common/robots/utils.py @@ -20,30 +20,6 @@ from lerobot.common.robots import RobotConfig from .robot import Robot -def make_robot_config(robot_type: str, **kwargs) -> RobotConfig: - if robot_type == "aloha": - raise NotImplementedError # TODO - - elif robot_type == "koch_follower": - from .koch_follower.config_koch_follower import KochFollowerConfig - - return KochFollowerConfig(**kwargs) - elif robot_type == "so100_follower": - from .so100_follower.config_so100_follower import SO100FollowerConfig - - return SO100FollowerConfig(**kwargs) - elif robot_type == "stretch": - from .stretch3.configuration_stretch3 import Stretch3RobotConfig - - return Stretch3RobotConfig(**kwargs) - elif robot_type == "lekiwi": - from .lekiwi.config_lekiwi import LeKiwiConfig - - return LeKiwiConfig(**kwargs) - else: - raise ValueError(f"Robot type '{robot_type}' is not available.") - - def make_robot_from_config(config: RobotConfig) -> Robot: if config.type == "koch_follower": from .koch_follower import KochFollower