Steven Palma
58451c7e81
Merge branch 'main' into chore/bump_transformers_v5
2026-03-02 15:50:04 +01:00
Bernie Telles
8bb8ed4803
Improve policy_device documentation for async.mdx ( #3060 )
2026-03-02 15:35:15 +01:00
Steven Palma
095856b06a
chore: add AI policy ( #3055 )
2026-02-28 14:41:28 +01:00
Steven Palma
563f42bdb1
chore(dependencies): Bump lerobot to 0.4.5 ( #3051 )
2026-02-27 19:29:35 +01:00
Caroline Pascal
8fff0fde7c
chore(docstrings): fixing deprecated root argument description in LeRobotDataset class ( #3035 )
...
* chore(docstrings): fixing deprecated `root` argument docstrings in LeRobotDataset class
* chore(draccus): updating draccus CLI help
* chore(revert): reverting changes in lerobot_dataset_viz.py
---------
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
v0.4.4
2026-02-27 18:22:44 +01:00
Pepijn
04de496547
fix(logging): avoid double-counting samples across processes ( #3045 )
2026-02-27 17:45:19 +01:00
Khalil Meftah
baf9b50365
Fix(diffusion): enforce no-crop behavior when crop_ratio=1.0 ( #3046 )
...
* refactor(diffusion): replace crop_shape with resize_shape and crop_ratio
* fix(diffusion): address review feedback on resize/crop backward compat
* test: regenerate diffusion artifacts for updated default config
* fix: disable crop when resize path uses crop_ratio=1.0
---------
Co-authored-by: starlitxiling <1754165401@qq.com >
2026-02-27 17:44:53 +01:00
Jade Choghari
a0fdbf037a
feat(policies): add Smolvla torch compile support ( #3043 )
...
* Change LIBERO init_state_id when reset.
Signed-off-by: Aoqun Jin <aojiaojiao@foxmail.com >
* Change LIBERO init_state_id when reset.
Signed-off-by: Aoqun Jin <aojiaojiao@foxmail.com >
* pre-commit run
* Add torch.compile for smolvla
Signed-off-by: Aoqun Jin <aojiaojiao@foxmail.com >
* Add torch.compile for smolvla
Add model compilation option for improved performance.
Signed-off-by: Aoqun Jin <aojiaojiao@foxmail.com >
* first
---------
Signed-off-by: Aoqun Jin <aojiaojiao@foxmail.com >
Co-authored-by: Aoqun Jin <aojiaojiao@foxmail.com >
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
2026-02-27 18:58:36 +03:00
Khalil Meftah
c085531b17
fix: add missing openarm_mini import to CLI scripts ( #3028 )
2026-02-27 15:46:31 +01:00
Steven Palma
c7c6205332
chore(scripts): no spam log when no action ( #3042 )
2026-02-27 15:26:56 +01:00
Jade Choghari
3cbefa445b
Fix policy testing for tv5 ( #3032 )
...
* fix ci logger
* other fix
* fix mypy
* change logits to torch2.10
* skip wallx|
* remove logging
---------
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
2026-02-27 14:45:40 +01:00
Steven Palma
57d899d84c
Merge branch 'main' into chore/bump_transformers_v5
2026-02-26 19:16:22 +01:00
Steven Palma
87b469b685
chore(dependencies): adjust dependencies versioning after transformers v5 ( #3034 )
...
* chore(dependecies): adjust dependecies versioning after transformers v5
* fix(policies): remove deprecated input_embeds
* fix(policies): dict _tied_weights_keys
* chore(depedencies): common qwen-vl-utils
* chore(dependencies): bump transformers to 5.2
2026-02-26 19:15:15 +01:00
Michio Sun
4e54be1334
fix(datasets): skip warning when MultiLeRobotDataset features are identical ( #3019 )
...
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
2026-02-26 17:42:22 +01:00
Damien LaRocque
fde9d08281
feat(async_inference) Enable plugins with async inference ( #2425 )
...
* feat(async-inference) Try using async inference server with plugins
* Fix import
* Fix import error in Robot Client
---------
Signed-off-by: Steven Palma <imstevenpmwork@ieee.org >
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
2026-02-26 14:41:32 +01:00
Khalil Meftah
46044fed75
Fix: remove device_map from SmolVLA model loading ( #3029 )
...
* Fix SmolVLA meta tensor error by removing device_map
- Remove device_map parameter from VLM model loading
- Change torch_dtype from string to torch.bfloat16
- Add explicit .to(device) calls after initialization
This resolves NotImplementedError when training SmolVLA policy.
Fixes meta tensor copy issue in factory.py:418.
* fix: remove manual device movement logic and fix dtype handling
---------
Co-authored-by: Highsky7 <albert31115@gmail.com >
2026-02-26 13:28:46 +01:00
Khalil Meftah
975dcad918
Feat(teleoperators): add OpenArm Mini teleoperator ( #3022 )
...
* add OpenArm Mini config and module init
* add OpenArm Mini teleoperator implementation
* add OpenArm Mini into factory and setup motors
---------
Co-authored-by: Pepijn <138571049+pkooij@users.noreply.github.com >
2026-02-25 18:46:55 +01:00
Cotton Hu
d0b58190da
fix(policies): support dp train when n_obs_steps=1 ( #2430 )
...
Co-authored-by: hukongtao <hukongtao@agibot.com >
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
2026-02-25 17:36:31 +01:00
Mishig
9a5ab8ffab
feat: add visualization badge to card template and update dataset card creation with repo_id ( #3005 )
...
* feat: add visualization badge to card template and update dataset card creation with repo_id
* Update src/lerobot/datasets/card_template.md
* Update src/lerobot/datasets/card_template.md
---------
Signed-off-by: Mishig <dmishig@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-02-25 16:02:40 +01:00
Khalil Meftah
7541d72130
Fix SARM dense_only mode: always load episodes_df for target computation ( #3021 )
...
* fix annotation mode check
* fix: SARM dense_only mode always load episodes_df for target computation
---------
Co-authored-by: John Newsom <jackmnewsom@gmail.com >
Co-authored-by: Pepijn <138571049+pkooij@users.noreply.github.com >
2026-02-25 13:28:01 +01:00
Jash Shah
0317a15bf1
fix(video): replace assertions with proper exceptions in video frame decoding ( #3016 )
...
Replaced assert statements with FrameTimestampError exceptions in
decode_video_frames_torchvision and decode_video_frames_torchcodec.
Assertions are unsuitable for runtime validation because they can be
silently disabled with python -O, and they produce unhelpful
AssertionError tracebacks. The codebase already defines
FrameTimestampError for this exact purpose but it was only used
in one of the three validation sites.
Also removed AssertionError from the except clause in
LeRobotDataset.__init__, which was masking video timestamp errors
by silently triggering a dataset re-download instead of surfacing
the actual problem.
2026-02-25 12:29:22 +01:00
Jash Shah
f138e5948a
Fix metaworld_config.json not bundled in pip installs and AttributeError crash ( #3017 )
...
1. Include metaworld_config.json in package distributions by adding it to
both MANIFEST.in (for sdist) and pyproject.toml package-data (for wheels).
Without this, pip-installed lerobot raises FileNotFoundError when
importing the metaworld environment.
2. Fix crash in sanity_check_dataset_name where the error message accesses
policy_cfg.type when policy_cfg is None, raising AttributeError instead
of the intended ValueError.
Fixes #2958
2026-02-25 12:29:10 +01:00
Martin Kiefel
8fef4ddab8
fix(dataset): Fix reindexing bug for videos on splits ( #2548 )
...
* fix(dataset): Reindex videos based on frame and not on time
Sometimes during split operations the frame timestamp floating
precision leads to frame ending up in the wrong split.
This changes fixes the issues by directly working with frame indices
instead.
* Fix formatting
2026-02-25 11:57:07 +01:00
Jade Choghari
3f3a159cff
fix wall x for transformer v5 ( #3008 )
...
* tv5 fix
* various wall x fixes
* Delete tests/policies/pi0_pi05/print_pi05_output_logits.py
Signed-off-by: Jade Choghari <chogharijade@gmail.com >
* sync modeling_florence2.py with chore/bump_transformers_v5
* more
* more fixes
* more
* remove comment
* more
---------
Signed-off-by: Jade Choghari <chogharijade@gmail.com >
2026-02-24 21:16:37 +03:00
Steven Palma
18d9cb5ac4
feat(scripts): Integrate tqdm for training progress visualization ( #3010 )
2026-02-24 19:10:43 +01:00
Steven Palma
5095ab0845
fix(ci): permissions triton ( #3011 )
2026-02-24 19:09:34 +01:00
Jash Shah
dac1efd13d
feat: Enable torch.compile for DiffusionPolicy inference ( #2486 )
...
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
2026-02-24 17:29:08 +01:00
Steven Palma
b9cb947bd2
style(test): pre-commit
2026-02-24 15:35:25 +01:00
Steven Palma
11cefed08a
style(test): pre-commit check
2026-02-24 10:57:29 +01:00
Steven Palma
7bfedd1388
test(policies): enable wall x CI testing
2026-02-24 10:53:23 +01:00
Jade Choghari
8c95a71c94
chore: fix XVLA in transformers v5 ( #3006 )
2026-02-24 10:29:48 +01:00
Steven Palma
1d048c7e2b
Merge branch 'main' into chore/bump_transformers_v5
2026-02-23 20:54:02 +01:00
Jade Choghari
419305a4c2
Fix: full pi models support for transformer v5 ( #2967 )
...
* fix(pi): remove loss truncation
* fix(pi): remove state padding before tokenization
* fix(pi): fix image padding value
* fix from_pretrain
* add transformer v5 changes
* remove reference
* more fixes
* make it work
* add support for rest of pi family
* add pifast work
* more changes
* more changes
* more cleanup
* fix torch params
* dtype fix
* torch compile
* embed mismatch fix
* revert groot
* more nit fixes
* remove unused classes
* more fixes
* revert
* nit
* torch dtype warning fix
* but back dynamic renaming
* add tie embedding
---------
Co-authored-by: Yufei Sun <skieyfly@gmail.com >
2026-02-23 22:44:13 +03:00
Dominik Paľo
7fd71c83a3
docs: add WSL evdev installation note ( #2855 )
...
Add a note in the installation guide explaining that users on WSL need to install evdev to avoid build issues.
See: https://github.com/huggingface/lerobot/issues/2528
Signed-off-by: Steven Palma <imstevenpmwork@ieee.org >
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
2026-02-23 20:41:20 +01:00
Yuan Haokuan
0f44adbeec
docs: fix HF_USER export command to correctly parse username ( #2932 )
...
* Fix HF_USER extraction command in documentation
Updated command to extract the username from hf auth output.
Signed-off-by: Yuan Haokuan <138340416+WilbertYuan@users.noreply.github.com >
* Correct HF_USER variable assignment in documentation
Fix the variable extraction from hf auth output.
Signed-off-by: Yuan Haokuan <138340416+WilbertYuan@users.noreply.github.com >
* Update docs/source/il_robots.mdx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: Yuan Haokuan <138340416+WilbertYuan@users.noreply.github.com >
---------
Signed-off-by: Yuan Haokuan <138340416+WilbertYuan@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
2026-02-23 17:51:13 +01:00
Guilherme Miotto
7dbbaa3727
Small comment fix ( #2990 )
...
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
2026-02-23 17:11:55 +01:00
Yuta Nakagawa
fcabfd32a5
chore(docs): update the document for Phone teleop to clarify how to use the examples ( #2991 )
...
* update the document for Phone teleope to clarify how to use the examples
* Update docs/source/phone_teleop.mdx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: Yuta Nakagawa <ytnkgw@gmail.com >
---------
Signed-off-by: Yuta Nakagawa <ytnkgw@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
2026-02-23 17:11:46 +01:00
Steven Palma
544cbc5f38
feat(motors): add RobStride CAN implementation ( #2821 )
...
* feat(motors): add initial implementation of robstride
Co-authored-by: Virgile <virgilebatto@gmail.com >
* chore(motors): solve some linter
* remove kp/kd attribute
* code uniformisation between damiao and robstride
* remove normalization warning
* remove non valid baudrates and small docstring update
* remove all useless files. Only keeping robstride.py and table.py
* typing for mypy
* reduce NameOrId usage
* align signature with damiao
* put the same helper than in the damiao implementation
* bug correction : expect a response after each bus.send
---------
Co-authored-by: Virgile <virgilebatto@gmail.com >
2026-02-23 16:39:04 +01:00
Yueci Deng
a0c5d19391
add metadata_buffer_size to dataset creation ( #2998 )
...
Signed-off-by: Steven Palma <imstevenpmwork@ieee.org >
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
2026-02-23 16:32:59 +01:00
Steven Palma
e96339a3b4
feat(dataset): add streaming video encoding + HW encoder support ( #2974 )
...
* feat(dataset): init stream encoding
* feat(dataset): use threads to fix frame pickle latency
* refactor(dataset): remove HW encoded related changes
* add lp (#2977 )
* feat(dataset): add Hw encoding + log drop frames (#2978 )
* chore(docs): add streaming video encoding guide
* fix(dataset): style docs + testing
* chore(docs): simplify sttreaming video encoding guide
* chore(dataset): add commands + streaming encoding default false + print note if false + queue default is now 30
* chore(docs): add verification note advice
* chore(dataset): adjusting defaults & docs for streaming encoding
* docs(scripts): improve docstrings
* test(dataset): polish streaming encoding tests
* chore(dataset): move FYI log related to streaming
* chore(dataset): add arg vcodec to suggestions
* refactor(dataset): better handling for auto and available vcodec
* chore(dataset): change log level
* docs(dataset): add note related to training performance vcodec
* docs(dataset): add more notes to streaming encoding
---------
Co-authored-by: Caroline Pascal <caroline8.pascal@gmail.com >
Co-authored-by: Pepijn <pepijn@huggingface.co >
2026-02-23 13:57:43 +01:00
Steven Palma
5865170d36
chore(deps): bump ceil datasets ( #2946 )
2026-02-20 17:01:46 +01:00
Khalil
2dd366436e
Fix gym-hil integration with the new LeRobot pipeline. ( #2482 )
...
* Add GymHILAdapterProcessorStep for gym-hil environment integration
* Fix action features in control loop for None teleop device with gym-hil
* Finalize dataset before pushing to hub for visualization on the hub
* Fix neutral action for gripper
* fix pre-commit
2026-02-19 14:35:02 +01:00
Steven Palma
5f15232271
chore: remove usernames + use entrypoints in docs, comments & sample commands ( #2988 )
2026-02-18 22:46:12 +01:00
Steven Palma
bc38261321
feat(robots): use read_latest() camera ( #2987 )
...
* feat(robots): use read_latest() camera
* fix(test): add read_latest reachy cam mock
2026-02-18 20:05:15 +01:00
Caroline Pascal
aaf3707058
fix(filtering): fixing episodes filtering in load_nested_dataset to always use .from_parquet() ( #2982 )
2026-02-18 19:16:53 +01:00
Steven Palma
89bd58a9a2
chore(scripts): warn if we don't respect the target FPS ( #2986 )
2026-02-18 18:22:35 +01:00
Steven Palma
b22e0315b0
fix(utils): more conservative sleep_margin default value in precise_sleep ( #2985 )
2026-02-18 17:32:25 +01:00
HUANG TZU-CHUN
fcbf550952
fix(docs): update environment variable name to HF_LEROBOT_HOME in docstring ( #2973 )
...
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
2026-02-18 11:27:40 +01:00
Sota Nakamura
af036ce57e
fix(scripts): serve grpc for a web viewer ( #2881 )
...
* serve grpc for a web viewer
* add help
* remove ip detection
* fix comment
* pass grpc_port
* fix(CLI): fixing CLI display-compressed-images argument 1/2
Co-authored-by: HUANG TZU-CHUN <tzu.chun.huang.tw@gmail.com >
Signed-off-by: Caroline Pascal <caroline8.pascal@gmail.com >
* fix(CLI): fixing CLI display-compressed-images argument 2/2
Co-authored-by: HUANG TZU-CHUN <tzu.chun.huang.tw@gmail.com >
Signed-off-by: Caroline Pascal <caroline8.pascal@gmail.com >
---------
Signed-off-by: Caroline Pascal <caroline8.pascal@gmail.com >
Co-authored-by: Caroline Pascal <caroline8.pascal@gmail.com >
Co-authored-by: HUANG TZU-CHUN <tzu.chun.huang.tw@gmail.com >
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
2026-02-18 01:05:51 +01:00
Vladislav Sovrasov
1c388c0002
(Chore) Bump upper bound for torch version ( #2897 )
...
* Bump upper torch version bound
* Apply suggestion from @Copilot
Signed-off-by: Vladislav Sovrasov <vladislav.sovrasov@intel.com >
* Update ref state dicts for schedulers
* Support older than 2.8 torch versions
* Fix precommit
---------
Signed-off-by: Vladislav Sovrasov <vladislav.sovrasov@intel.com >
2026-02-17 23:37:46 +01:00