Skip to content

isaaclab2lerobot.py conversion script incompatible with LeRobot 0.4.2 API #150

@alloyviper289

Description

@alloyviper289

Affected File

scripts/convert/isaaclab2lerobot.py (lines 129-131)

Root Cause

The script attempts to pass task as a separate keyword argument to LeRobotDataset.add_frame():

predefined_task = frame.pop("task")
dataset.add_frame(frame=frame, task=predefined_task if task is None else task)

However, LeRobot 0.4.2's add_frame() method signature only accepts frame: dict:

def add_frame(self, frame: dict) -> None:

The task parameter must be included in the frame dictionary itself, not passed as a separate kwarg.

Software Versions

LeISAAC: main branch (commit 241779b)
LeRobot: 0.4.2
IsaacLab: 2.3.0
Python: 3.11.13
Isaac Sim: 5.1.0

Expected Behavior

The conversion script should successfully convert IsaacLab recorded episodes to LeRobot HDF5 format without errors.

Actual Behavior

The script fails during frame processing with a TypeError due to incorrect API usage.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions