name: train_diffusion_unet_teleop_stack_blocks _target_: memory_diffusion_policy.workspace.train_diffusion_unet_teleop_block_workspace.TrainDiffusionUnetTeleopBlockWorkspace task_name: ${task.name} shape_meta: ${task.shape_meta} exp_name: default horizon: 16 n_obs_steps: 2 n_action_steps: 8 n_latency_steps: 0 dataset_obs_steps: ${n_obs_steps} past_action_visible: false keypoint_visible_rate: 1.0 obs_as_global_cond: true policy: _target_: diffusion_policy.policy.diffusion_unet_image_policy.DiffusionUnetImagePolicy shape_meta: ${shape_meta} noise_scheduler: _target_: diffusers.schedulers.scheduling_ddim.DDIMScheduler num_train_timesteps: 100 beta_start: 0.0001 beta_end: 0.02 beta_schedule: squaredcos_cap_v2 clip_sample: true set_alpha_to_one: true steps_offset: 0 prediction_type: epsilon obs_encoder: _target_: diffusion_policy.model.vision.multi_image_obs_encoder.MultiImageObsEncoder shape_meta: ${shape_meta} rgb_model: _target_: diffusion_policy.model.vision.model_getter.get_resnet name: resnet18 weights: null resize_shape: null crop_shape: - 108 - 144 random_crop: true use_group_norm: true share_rgb_model: false imagenet_norm: true horizon: ${horizon} n_action_steps: ${eval:'${n_action_steps}+${n_latency_steps}'} n_obs_steps: ${n_obs_steps} num_inference_steps: 16 obs_as_global_cond: ${obs_as_global_cond} diffusion_step_embed_dim: 128 down_dims: - 512 - 1024 - 2048 kernel_size: 5 n_groups: 8 cond_predict_scale: true ema: _target_: diffusion_policy.model.diffusion.ema_model.EMAModel update_after_step: 0 inv_gamma: 1.0 power: 0.75 min_value: 0.0 max_value: 0.9999 dataloader: batch_size: 64 num_workers: 2 shuffle: true pin_memory: true persistent_workers: false val_dataloader: batch_size: 64 num_workers: 2 shuffle: false pin_memory: true persistent_workers: false optimizer: _target_: torch.optim.AdamW lr: 0.0001 betas: - 0.95 - 0.999 eps: 1.0e-08 weight_decay: 1.0e-06 training: device: cuda:0 seed: 42 debug: false resume: true lr_scheduler: cosine lr_warmup_steps: 500 num_epochs: 1502 gradient_accumulate_every: 1 use_ema: true freeze_encoder: false rollout_every: 1000000 checkpoint_every: 1 snapshot_every: 100 val_every: 1 sample_every: 100 max_train_steps: null max_val_steps: null tqdm_interval_sec: 1.0 logging: project: teleop_block_dp resume: true mode: offline name: ${name}_${task_name}_${exp_name} tags: - ${name} - ${task_name} - ${exp_name} id: null group: null checkpoint: topk: monitor_key: train_loss mode: min k: 0 format_str: epoch={epoch:04d}-train_loss={train_loss:.4f}.ckpt save_last_ckpt: true save_last_snapshot: false multi_run: run_dir: data/outputs/teleop_block_dp/${name}_${task_name}_${exp_name} wandb_name_base: ${name}_${task_name}_${exp_name} task: name: teleop_stack_blocks_image image_shape: - 3 - 120 - 160 dataset_path: data/teleop_stack_blocks/teleop_dataset_20260925_161227/replay_buffer.zarr action_shift: 1 gripper_range: - 0.0 - 0.08 quat_order: wxyz shape_meta: obs: img_third: shape: ${task.image_shape} type: rgb img_wrist: shape: ${task.image_shape} type: rgb robot_eef_pose: shape: - 9 type: low_dim gripper_state: shape: - 1 type: low_dim action: shape: - 10 env_runner: _target_: diffusion_policy.env_runner.real_pusht_image_runner.RealPushTImageRunner dataset: _target_: memory_diffusion_policy.dataset.teleop_block_image_dataset.TeleopBlockImageDataset shape_meta: obs: img_third: shape: ${task.image_shape} type: rgb img_wrist: shape: ${task.image_shape} type: rgb robot_eef_pose: shape: - 9 type: low_dim gripper_state: shape: - 1 type: low_dim action: shape: - 10 dataset_path: ${task.dataset_path} horizon: ${horizon} pad_before: ${eval:'${n_obs_steps}-1+${n_latency_steps}'} pad_after: ${eval:'${n_action_steps}-1'} n_obs_steps: ${dataset_obs_steps} n_latency_steps: ${n_latency_steps} seed: 42 val_ratio: 0.0 max_train_episodes: null bgr_to_rgb: true action_shift: ${task.action_shift} gripper_range: ${task.gripper_range} image_cache: true image_cache_path: null quat_order: ${task.quat_order} repair_dropouts: true