cc8676178b
Diff: https://github.com/huggingface/lerobot/compare/v0.5.1...v0.6.0 Changelog: https://github.com/huggingface/lerobot/releases/tag/v0.6.0
170 lines
4.3 KiB
Nix
170 lines
4.3 KiB
Nix
{
|
|
lib,
|
|
stdenv,
|
|
buildPythonPackage,
|
|
fetchFromGitHub,
|
|
|
|
# build-system
|
|
cmake,
|
|
setuptools,
|
|
|
|
# dependencies
|
|
draccus,
|
|
einops,
|
|
gymnasium,
|
|
huggingface-hub,
|
|
numpy,
|
|
opencv-python-headless,
|
|
packaging,
|
|
pillow,
|
|
requests,
|
|
safetensors,
|
|
termcolor,
|
|
torch,
|
|
torchcodec,
|
|
torchvision,
|
|
tqdm,
|
|
|
|
# tests
|
|
av,
|
|
datasets,
|
|
pytestCheckHook,
|
|
writableTmpDirAsHomeHook,
|
|
}:
|
|
|
|
buildPythonPackage (finalAttrs: {
|
|
pname = "lerobot";
|
|
version = "0.6.0";
|
|
pyproject = true;
|
|
__structuredAttrs = true;
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "huggingface";
|
|
repo = "lerobot";
|
|
tag = "v${finalAttrs.version}";
|
|
hash = "sha256-glTeELaebo5C6RethwYIHF4gB7CgKZlPr4wf45ih9cs=";
|
|
};
|
|
|
|
build-system = [
|
|
cmake
|
|
setuptools
|
|
];
|
|
dontUseCmakeConfigure = true;
|
|
|
|
pythonRelaxDeps = [
|
|
"draccus"
|
|
"numpy"
|
|
"packaging"
|
|
"torch"
|
|
"torchvision"
|
|
];
|
|
dependencies = [
|
|
draccus
|
|
einops
|
|
gymnasium
|
|
huggingface-hub
|
|
numpy
|
|
opencv-python-headless
|
|
packaging
|
|
pillow
|
|
requests
|
|
safetensors
|
|
termcolor
|
|
torch
|
|
torchcodec
|
|
torchvision
|
|
tqdm
|
|
];
|
|
|
|
pythonImportsCheck = [ "lerobot" ];
|
|
|
|
nativeCheckInputs = [
|
|
av
|
|
datasets
|
|
pytestCheckHook
|
|
writableTmpDirAsHomeHook
|
|
];
|
|
|
|
disabledTests = [
|
|
# Requires internet access
|
|
"test_act_backbone_lr"
|
|
"test_backward_compatibility"
|
|
"test_convert_image_to_video_dataset"
|
|
"test_convert_image_to_video_dataset_subset_episodes"
|
|
"test_factory"
|
|
"test_make_env_from_hub_async"
|
|
"test_make_env_from_hub_with_trust"
|
|
"test_policy_defaults"
|
|
"test_save_and_load_pretrained"
|
|
"test_save_pretrained_with_state_dict"
|
|
|
|
# Hang indefinitely
|
|
"test_aggregate_datasets"
|
|
"test_aggregate_with_low_threshold"
|
|
|
|
# RuntimeError: SingleStreamDecoder, /build/source/src/torchcodec/_core/SingleStreamDecoder.cpp:80,
|
|
# Failed to open input buffer: Invalid data found when processing input
|
|
"TestVideoDecoderCacheBounded"
|
|
|
|
# ValueError: pix_fmt='yuv420p' is not supported by codec 'h264_vaapi'; supported pixel formats: ['vaapi']
|
|
"test_vaapi_options"
|
|
|
|
# draccus.utils.ParsingError: Expected a dict with a 'type' key for ...
|
|
"test_reward_model_config_from_pretrained_roundtrip"
|
|
|
|
# TypeError: cannot create weak reference to 'str' object
|
|
"test_save_pretrained_round_trip_via_disk"
|
|
|
|
# [Errno 1094995529] Invalid data found when processing input: '/build/source/tests/artifacts/encoded_videos/clip_4frames.mp4'
|
|
"test_depth_encoder_config_sets_is_depth_map_true"
|
|
"test_geometry_preserved"
|
|
"test_merges_encoder_config_as_video_prefixed_entries"
|
|
"test_reencode_video"
|
|
"test_reencode_video_trim_window"
|
|
"test_returns_all_stream_fields"
|
|
"test_stream_derived_keys_take_precedence_over_config"
|
|
"test_three_clips_frame_count"
|
|
"test_two_clips_frame_count"
|
|
|
|
# RuntimeError: OpenCVCamera(/build/source/tests/artifacts/cameras/image_480x270.png) read failed
|
|
"test_async_read"
|
|
"test_fourcc_with_camer"
|
|
"test_read"
|
|
"test_rotation"
|
|
]
|
|
++ lib.optionals (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) [
|
|
# RuntimeError: Failed to initialize cpuinfo!
|
|
"test_complementary_data_float_dtype_conversion"
|
|
"test_float_dtype_conversion"
|
|
"test_float_dtype_with_mixed_tensors"
|
|
|
|
# AssertionError: assert 'f7566ea964d1...371ef6c23b64f' == 'c17e47af68a8...095018561ae9e'
|
|
"test_groot_n1_7_eval_image_transform_matches_oss_reference"
|
|
]
|
|
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
|
# gRPC fails to connect on loopback in sandbox despite __darwinAllowLocalNetworking
|
|
"test_end_to_end_interactions_flow"
|
|
"test_end_to_end_parameters_flow"
|
|
"test_end_to_end_transitions_flow"
|
|
];
|
|
|
|
disabledTestPaths = [
|
|
# Require internet access
|
|
# httpx.ConnectError: [Errno -3] Temporary failure in name resolution
|
|
"tests/policies/test_relative_actions.py"
|
|
|
|
# Sometimes hang forever
|
|
"tests/policies/rtc/test_modeling_rtc.py"
|
|
];
|
|
|
|
__darwinAllowLocalNetworking = true;
|
|
|
|
meta = {
|
|
description = "Making AI for Robotics more accessible with end-to-end learning";
|
|
homepage = "https://github.com/huggingface/lerobot";
|
|
changelog = "https://github.com/huggingface/lerobot/releases/tag/${finalAttrs.src.tag}";
|
|
license = lib.licenses.asl20;
|
|
maintainers = with lib.maintainers; [ GaetanLepage ];
|
|
};
|
|
})
|