LeRobot documentation

Konfigurasi

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Konfigurasi

Konfigurasi LeRobot berupa dataclasses polos yang diparsing oleh draccus, sehingga setiap field dapat diatur dari CLI. TrainPipelineConfig adalah objek tingkat atas untuk lerobot-train.

Konfigurasi polimorfik (kebijakan, robot, lingkungan) menggunakan draccus.ChoiceRegistry: subkelas mendaftarkan dirinya dengan @register_subclass("name") dan kemudian dapat dipilih berdasarkan nama tersebut di baris perintah.

TrainPipelineConfig

kelas lerobot.configs.train.TrainPipelineConfig

< >

( dataset: DatasetConfigenv: lerobot.envs.configs.EnvConfig | None = Nonepolicy: lerobot.configs.policies.PreTrainedConfig | None = Nonereward_model: lerobot.configs.rewards.RewardModelConfig | None = Noneoutput_dir: pathlib.Path | None = Nonejob_name: str | None = Noneresume: bool = Falseseed: int | None = 1000cudnn_deterministic: bool = Falsetf32: bool | None = Truenum_workers: int = 4batch_size: int = 8prefetch_factor: int = 4persistent_workers: bool = Truedataloader_multiprocessing_context: str | None = 'spawn'steps: int = 100000env_eval_freq: int = 20000log_freq: int = 200eval_steps: int = 0max_eval_samples: int = 0tolerance_s: float = 0.0001save_checkpoint: bool = Truesave_freq: int = 20000checkpoint_format: CheckpointFormat = <CheckpointFormat.SAFETENSORS: 'safetensors'>use_policy_training_preset: bool = Trueoptimizer: lerobot.optim.optimizers.OptimizerConfig | None = Nonescheduler: lerobot.optim.schedulers.LRSchedulerConfig | None = Noneparallelism: ParallelismConfig = <factory>accelerator: AcceleratorConfig = <factory>eval: EvalConfig = <factory>ema: lerobot.optim.ema.EMAConfig | None = Nonetrackio: TrackioConfig = <factory>peft: lerobot.configs.default.PeftConfig | None = Nonejob: JobConfig = <factory>save_checkpoint_to_hub: bool = Falsesample_weighting: lerobot.utils.sample_weighting.SampleWeightingConfig | None = Nonerename_map: dict = <factory> )

PreTrainedConfig

kelas lerobot.configs.PreTrainedConfig

< >

( n_obs_steps: int = 1input_features: dict[str, lerobot.configs.types.PolicyFeature] | None = <factory>output_features: dict[str, lerobot.configs.types.PolicyFeature] | None = <factory>device: str | None = Nonedtype: torch.dtype | None = Noneuse_amp: bool = Falseuse_peft: bool = Falsepush_to_hub: bool = Truerepo_id: str | None = Noneprivate: bool | None = Nonetags: list[str] | None = Nonelicense: str | None = Nonepretrained_path: pathlib.Path | None = Nonepretrained_revision: str | None = None )

Parameter

  • n_obs_steps — Jumlah langkah lingkungan berupa observasi yang akan diteruskan ke kebijakan (mengambil langkah saat ini dan langkah-langkah sebelumnya).
  • input_features — Kamus yang mendefinisikan PolicyFeature dari data input untuk kebijakan. Kunci mewakili nama data input, dan nilainya adalah PolicyFeature, yang terdiri dari atribut FeatureType dan shape.
  • output_features — Kamus yang mendefinisikan PolicyFeature dari data keluaran untuk kebijakan. Kunci mewakili nama data keluaran, dan nilainya adalah PolicyFeature, yang terdiri dari atribut FeatureType dan shape.
  • normalization_mapping — Kamus yang memetakan dari nilai str dari FeatureType (misalnya, “STATE”, “VISUAL”) ke NormalizationMode yang sesuai (misalnya, NormalizationMode.MIN_MAX)

Kelas konfigurasi dasar untuk model kebijakan.

DatasetConfig

kelas lerobot.configs.DatasetConfig

< >

( repo_id: strrepo_type: str = 'dataset'root: str | None = Noneepisodes: list[int] | None = Noneexclude_episodes: list[int] | None = Noneimage_transforms: ImageTransformsConfig = <factory>revision: str | None = Noneuse_imagenet_stats: bool = Truevideo_backend: str = <factory>return_uint8: bool = Falsedepth_output_unit: str = 'mm'streaming: bool = Falsestreaming_episode_pool_size: int | None = Nonestreaming_sampling_strategy: StreamingSamplingStrategy = <StreamingSamplingStrategy.REMAINING: 'remaining'>streaming_prefetch_episodes: int = 8streaming_byte_budget_gb: float = 8.0streaming_decode_threads: int = 2streaming_decoded_queue_size: int = 8streaming_native_http_connections: int | None = Nonestreaming_native_http_subranges: int = 1streaming_sidecar_lock_timeout_s: float = 1800video_decoder_cache_size: int | None = Noneeval_split: float = 0.0 )

EvalConfig

kelas lerobot.configs.EvalConfig

< >

( n_episodes: int = 50batch_size: int = 0use_async_envs: bool = Truerecording: bool = Falserecording_repo_id: str | None = Nonerecording_private: bool = Falsemax_episode_steps: int | None = None )

TrackioConfig

kelas lerobot.configs.TrackioConfig

< >

( enable: bool = Falsedisable_artifact: bool = Trueproject: str = 'lerobot'space_id: str | None = Noneprivate: bool | None = Nonerun_name: str | None = Noneresume: str | None = Nonecapture_console: bool = True )

Pelacakan eksekusi pelatihan dengan Trackio (https://huggingface.co/docs/trackio).

Runs disimpan dalam database SQLite lokal di bawah ~/.cache/huggingface/trackio dan ditampilkan dengan trackio show --project <project>. Atur space_id untuk menyinkronkan run ke Hugging Face Space.

Update on GitHub