VersatIL 0.3.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1152) hide show
  1. versatil-0.3.0/.env.example +28 -0
  2. versatil-0.3.0/.github/workflows/ci.yml +126 -0
  3. versatil-0.3.0/.github/workflows/docs.yml +45 -0
  4. versatil-0.3.0/.github/workflows/publish.yml +41 -0
  5. versatil-0.3.0/.gitignore +154 -0
  6. versatil-0.3.0/.gitlab-ci.yml +115 -0
  7. versatil-0.3.0/.pre-commit-config.yaml +9 -0
  8. versatil-0.3.0/CHANGELOG.md +132 -0
  9. versatil-0.3.0/CLAUDE.md +687 -0
  10. versatil-0.3.0/LICENSE +21 -0
  11. versatil-0.3.0/PKG-INFO +56 -0
  12. versatil-0.3.0/README.md +620 -0
  13. versatil-0.3.0/docs/architecture/algorithms.md +314 -0
  14. versatil-0.3.0/docs/architecture/data.md +340 -0
  15. versatil-0.3.0/docs/architecture/decoders.md +345 -0
  16. versatil-0.3.0/docs/architecture/encoding.md +549 -0
  17. versatil-0.3.0/docs/architecture/inference.md +335 -0
  18. versatil-0.3.0/docs/architecture/overview.md +221 -0
  19. versatil-0.3.0/docs/architecture/post_training_compression.md +152 -0
  20. versatil-0.3.0/docs/changelog.md +121 -0
  21. versatil-0.3.0/docs/gen_ref_pages.py +28 -0
  22. versatil-0.3.0/docs/getting-started/configuration.md +264 -0
  23. versatil-0.3.0/docs/getting-started/installation.md +125 -0
  24. versatil-0.3.0/docs/getting-started/training.md +281 -0
  25. versatil-0.3.0/docs/index.md +154 -0
  26. versatil-0.3.0/docs/known-issues.md +54 -0
  27. versatil-0.3.0/docs/media/VersatIL_logo.png +0 -0
  28. versatil-0.3.0/docs/media/VersatIL_transparent.png +0 -0
  29. versatil-0.3.0/environment.yml +8 -0
  30. versatil-0.3.0/hydra_configs/README.md +23 -0
  31. versatil-0.3.0/hydra_configs/end_to_end_ptq/unstructured_prune_x86.yaml +21 -0
  32. versatil-0.3.0/hydra_configs/end_to_end_ptq/unstructured_prune_x86_decoder_only.yaml +28 -0
  33. versatil-0.3.0/hydra_configs/end_to_end_training_runs/ant/act_flow_state.yaml +76 -0
  34. versatil-0.3.0/hydra_configs/end_to_end_training_runs/ant/bcat_state.yaml +75 -0
  35. versatil-0.3.0/hydra_configs/end_to_end_training_runs/ant/conditional_mmd_cwae_learned_prior_state.yaml +127 -0
  36. versatil-0.3.0/hydra_configs/end_to_end_training_runs/ant/kl_cvae_learned_prior_state.yaml +104 -0
  37. versatil-0.3.0/hydra_configs/end_to_end_training_runs/ant/kl_cvae_state.yaml +96 -0
  38. versatil-0.3.0/hydra_configs/end_to_end_training_runs/ant/lat_flow_state.yaml +127 -0
  39. versatil-0.3.0/hydra_configs/end_to_end_training_runs/ant/relaxed_conditional_sinkhorn_cwae_learned_prior_state.yaml +118 -0
  40. versatil-0.3.0/hydra_configs/end_to_end_training_runs/block_pushing/act_flow_state.yaml +77 -0
  41. versatil-0.3.0/hydra_configs/end_to_end_training_runs/block_pushing/bcat_state.yaml +75 -0
  42. versatil-0.3.0/hydra_configs/end_to_end_training_runs/block_pushing/conditional_mmd_cwae_learned_prior_state.yaml +130 -0
  43. versatil-0.3.0/hydra_configs/end_to_end_training_runs/block_pushing/flow_dit_state.yaml +65 -0
  44. versatil-0.3.0/hydra_configs/end_to_end_training_runs/block_pushing/flow_dit_state_abs.yaml +65 -0
  45. versatil-0.3.0/hydra_configs/end_to_end_training_runs/block_pushing/kl_cvae_learned_prior_state.yaml +115 -0
  46. versatil-0.3.0/hydra_configs/end_to_end_training_runs/block_pushing/kl_cvae_learned_prior_state_learned_var.yaml +117 -0
  47. versatil-0.3.0/hydra_configs/end_to_end_training_runs/block_pushing/kl_cvae_state.yaml +97 -0
  48. versatil-0.3.0/hydra_configs/end_to_end_training_runs/block_pushing/lat_flow_state.yaml +119 -0
  49. versatil-0.3.0/hydra_configs/end_to_end_training_runs/block_pushing/relaxed_conditional_sinkhorn_cwae_learned_prior_state.yaml +120 -0
  50. versatil-0.3.0/hydra_configs/end_to_end_training_runs/block_pushing/vq_vae_state.yaml +100 -0
  51. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/act.yaml +50 -0
  52. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/act_language.yaml +50 -0
  53. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/action_transformer.yaml +55 -0
  54. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/action_transformer_language.yaml +55 -0
  55. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/diffusion_ca_dit.yaml +34 -0
  56. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/diffusion_unet.yaml +33 -0
  57. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/discrete_detr.yaml +35 -0
  58. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/flow_dit_block.yaml +33 -0
  59. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/flow_unet.yaml +33 -0
  60. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/free_transformer.yaml +38 -0
  61. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/free_transformer_mmd.yaml +38 -0
  62. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/gpt_transformer.yaml +35 -0
  63. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/lact.yaml +55 -0
  64. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/lact_language.yaml +60 -0
  65. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/mixture_act.yaml +56 -0
  66. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/moe_free_transformer.yaml +38 -0
  67. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/phase_act.yaml +35 -0
  68. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/phase_act_depth.yaml +34 -0
  69. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/phase_act_mmd.yaml +35 -0
  70. versatil-0.3.0/hydra_configs/end_to_end_training_runs/bowel_retraction/phase_language_act.yaml +39 -0
  71. versatil-0.3.0/hydra_configs/end_to_end_training_runs/kitchen/act_flow_rgb.yaml +94 -0
  72. versatil-0.3.0/hydra_configs/end_to_end_training_runs/kitchen/act_flow_state.yaml +84 -0
  73. versatil-0.3.0/hydra_configs/end_to_end_training_runs/kitchen/bcat_rgb.yaml +86 -0
  74. versatil-0.3.0/hydra_configs/end_to_end_training_runs/kitchen/bcat_state.yaml +76 -0
  75. versatil-0.3.0/hydra_configs/end_to_end_training_runs/kitchen/conditional_mmd_cwae_learned_prior_rgb.yaml +143 -0
  76. versatil-0.3.0/hydra_configs/end_to_end_training_runs/kitchen/conditional_mmd_cwae_learned_prior_state.yaml +133 -0
  77. versatil-0.3.0/hydra_configs/end_to_end_training_runs/kitchen/kl_cvae_learned_prior_rgb.yaml +126 -0
  78. versatil-0.3.0/hydra_configs/end_to_end_training_runs/kitchen/kl_cvae_learned_prior_state.yaml +116 -0
  79. versatil-0.3.0/hydra_configs/end_to_end_training_runs/kitchen/kl_cvae_rgb.yaml +109 -0
  80. versatil-0.3.0/hydra_configs/end_to_end_training_runs/kitchen/kl_cvae_state.yaml +99 -0
  81. versatil-0.3.0/hydra_configs/end_to_end_training_runs/kitchen/lat_flow_rgb.yaml +141 -0
  82. versatil-0.3.0/hydra_configs/end_to_end_training_runs/kitchen/lat_flow_state.yaml +131 -0
  83. versatil-0.3.0/hydra_configs/end_to_end_training_runs/kitchen/relaxed_conditional_sinkhorn_cwae_learned_prior_rgb.yaml +133 -0
  84. versatil-0.3.0/hydra_configs/end_to_end_training_runs/kitchen/relaxed_conditional_sinkhorn_cwae_learned_prior_state.yaml +123 -0
  85. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_hdf5/act.yaml +59 -0
  86. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_hdf5/action_transformer.yaml +59 -0
  87. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_hdf5/action_transformer_language.yaml +70 -0
  88. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_hdf5/flow_dit_block.yaml +68 -0
  89. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_hdf5/flow_dit_cross_attention.yaml +66 -0
  90. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_hdf5/flow_dit_multimodal.yaml +65 -0
  91. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_hdf5/flow_unet.yaml +68 -0
  92. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_hdf5/lact.yaml +72 -0
  93. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_hdf5/lact_language.yaml +70 -0
  94. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_lerobot/act.yaml +60 -0
  95. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_lerobot/action_transformer.yaml +74 -0
  96. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_lerobot/action_transformer_language.yaml +76 -0
  97. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_lerobot/action_transformer_language_tiny.yaml +76 -0
  98. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_lerobot/flow_dit_cross_attention.yaml +80 -0
  99. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_lerobot/flow_dit_multimodal.yaml +80 -0
  100. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_lerobot/gpt_transformer.yaml +58 -0
  101. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_lerobot/lact.yaml +71 -0
  102. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_lerobot/lact_ot.yaml +65 -0
  103. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_lerobot/mode_act.yaml +68 -0
  104. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_lerobot/pi0.yaml +81 -0
  105. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_lerobot/smolvla.yaml +79 -0
  106. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/action_transformer_language.yaml +76 -0
  107. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/language_sweep/bert_base.yaml +75 -0
  108. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/language_sweep/bge_base_en_v1_5.yaml +75 -0
  109. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/language_sweep/distilroberta_base.yaml +75 -0
  110. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/language_sweep/embeddinggemma_300m.yaml +75 -0
  111. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/language_sweep/llama_nemotron_embed_1b_v2.yaml +75 -0
  112. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/language_sweep/minilm_l12.yaml +75 -0
  113. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/language_sweep/minilm_l6.yaml +75 -0
  114. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/language_sweep/qwen3_embedding_0_6b.yaml +76 -0
  115. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/language_sweep/roberta_base.yaml +75 -0
  116. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/vision_sweep/clip_vitb32.yaml +73 -0
  117. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/vision_sweep/convnextv2_nano.yaml +73 -0
  118. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/vision_sweep/dinov3_convnext_small.yaml +75 -0
  119. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/vision_sweep/dinov3_convnext_small_frozen.yaml +75 -0
  120. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/vision_sweep/efficientnet_b0.yaml +73 -0
  121. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/vision_sweep/mobilenetv4_s.yaml +73 -0
  122. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/vision_sweep/resnet18.yaml +73 -0
  123. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/vision_sweep/siglip2_base.yaml +73 -0
  124. versatil-0.3.0/hydra_configs/end_to_end_training_runs/libero_plus/vision_sweep/tiny_vit_21m.yaml +73 -0
  125. versatil-0.3.0/hydra_configs/end_to_end_training_runs/metaworld/action_transformer.yaml +70 -0
  126. versatil-0.3.0/hydra_configs/end_to_end_training_runs/metaworld/action_transformer_language.yaml +70 -0
  127. versatil-0.3.0/hydra_configs/end_to_end_training_runs/metaworld/action_transformer_language_tiny.yaml +67 -0
  128. versatil-0.3.0/hydra_configs/end_to_end_training_runs/metaworld/flow_dit_cross_attention.yaml +75 -0
  129. versatil-0.3.0/hydra_configs/end_to_end_training_runs/metaworld/flow_dit_multimodal.yaml +75 -0
  130. versatil-0.3.0/hydra_configs/end_to_end_training_runs/multimodal_peg_transfer/action_transformer.yaml +81 -0
  131. versatil-0.3.0/hydra_configs/end_to_end_training_runs/multimodal_peg_transfer/flow_dit_prior.yaml +139 -0
  132. versatil-0.3.0/hydra_configs/end_to_end_training_runs/multimodal_peg_transfer/flow_mmdit.yaml +86 -0
  133. versatil-0.3.0/hydra_configs/end_to_end_training_runs/multimodal_peg_transfer/kl_prior.yaml +106 -0
  134. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/act_flow_rgb.yaml +86 -0
  135. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/act_flow_state.yaml +76 -0
  136. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/conditional_mmd_cwae_learned_prior_rgb.yaml +139 -0
  137. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/conditional_mmd_cwae_learned_prior_state.yaml +129 -0
  138. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/kl_cvae_learned_prior_rgb.yaml +125 -0
  139. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/kl_cvae_learned_prior_rgb_learned_var.yaml +127 -0
  140. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/kl_cvae_learned_prior_state.yaml +115 -0
  141. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/kl_cvae_learned_prior_state_learned_var.yaml +117 -0
  142. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/kl_cvae_rgb.yaml +106 -0
  143. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/kl_cvae_state.yaml +96 -0
  144. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/lat_flow_rgb.yaml +138 -0
  145. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/lat_flow_state.yaml +128 -0
  146. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/relaxed_conditional_sinkhorn_cwae_learned_prior_rgb.yaml +130 -0
  147. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/relaxed_conditional_sinkhorn_cwae_learned_prior_state.yaml +120 -0
  148. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/sinkhorn_cwae_fixed_gaussian_rgb.yaml +118 -0
  149. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/sinkhorn_cwae_fixed_gaussian_state.yaml +108 -0
  150. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/sinkhorn_cwae_learned_prior_rgb.yaml +127 -0
  151. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/sinkhorn_cwae_learned_prior_state.yaml +117 -0
  152. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/vq_vae_prior_rgb_800_200.yaml +162 -0
  153. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/vq_vae_prior_state_800_200.yaml +150 -0
  154. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/vq_vae_rgb.yaml +110 -0
  155. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/vq_vae_state.yaml +100 -0
  156. versatil-0.3.0/hydra_configs/end_to_end_training_runs/pusht/vq_vae_state_codes16.yaml +100 -0
  157. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/circle_kl_cvae.yaml +12 -0
  158. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/circle_lat_flow.yaml +12 -0
  159. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/circle_mmd_cwae_fixed_gaussian.yaml +12 -0
  160. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/circle_sinkhorn_cwae_fixed_gaussian.yaml +12 -0
  161. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/corridor_k16_kl_cvae.yaml +12 -0
  162. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/corridor_k16_lat_flow.yaml +12 -0
  163. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/corridor_k16_mmd_cwae_fixed_gaussian.yaml +12 -0
  164. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/corridor_k16_sinkhorn_cwae_fixed_gaussian.yaml +12 -0
  165. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/kl_cvae.yaml +83 -0
  166. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/lat_flow.yaml +103 -0
  167. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/mmd_cwae_fixed_gaussian.yaml +92 -0
  168. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/radial_k16_kl_cvae.yaml +12 -0
  169. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/radial_k16_lat_flow.yaml +12 -0
  170. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/radial_k16_mmd_cwae_fixed_gaussian.yaml +12 -0
  171. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/radial_k16_sinkhorn_cwae_fixed_gaussian.yaml +12 -0
  172. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/sequential_kl_cvae.yaml +12 -0
  173. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/sequential_lat_flow.yaml +12 -0
  174. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/sequential_mmd_cwae_fixed_gaussian.yaml +12 -0
  175. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/sequential_sinkhorn_cwae_fixed_gaussian.yaml +12 -0
  176. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/fixed_gaussian_nodropout/sinkhorn_cwae_fixed_gaussian.yaml +87 -0
  177. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/learned_prior_conditional/circle_conditional_mmd_cwae.yaml +12 -0
  178. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/learned_prior_conditional/circle_relaxed_conditional_sinkhorn_cwae.yaml +12 -0
  179. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/learned_prior_conditional/conditional_mmd_cwae.yaml +120 -0
  180. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/learned_prior_conditional/corridor_k16_conditional_mmd_cwae.yaml +12 -0
  181. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/learned_prior_conditional/corridor_k16_relaxed_conditional_sinkhorn_cwae.yaml +12 -0
  182. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/learned_prior_conditional/radial_k16_conditional_mmd_cwae.yaml +12 -0
  183. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/learned_prior_conditional/radial_k16_relaxed_conditional_sinkhorn_cwae.yaml +12 -0
  184. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/learned_prior_conditional/relaxed_conditional_sinkhorn_cwae.yaml +110 -0
  185. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/learned_prior_conditional/sequential_conditional_mmd_cwae.yaml +12 -0
  186. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/ablations/learned_prior_conditional/sequential_relaxed_conditional_sinkhorn_cwae.yaml +12 -0
  187. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/act_diff.yaml +64 -0
  188. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/act_flow.yaml +64 -0
  189. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/bcat.yaml +57 -0
  190. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/bcat_conditional.yaml +57 -0
  191. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/kl_cvae_fixed_gaussian.yaml +78 -0
  192. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/lat_flow.yaml +106 -0
  193. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/mdn_action_transformer.yaml +69 -0
  194. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/mmd_cwae_fixed_gaussian.yaml +95 -0
  195. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/sinkhorn_cwae_fixed_gaussian.yaml +91 -0
  196. versatil-0.3.0/hydra_configs/end_to_end_training_runs/synthetic/vq_vae.yaml +73 -0
  197. versatil-0.3.0/hydra_configs/end_to_end_training_runs/ur3/act_flow_state.yaml +76 -0
  198. versatil-0.3.0/hydra_configs/end_to_end_training_runs/ur3/bcat_state.yaml +75 -0
  199. versatil-0.3.0/hydra_configs/end_to_end_training_runs/ur3/conditional_mmd_cwae_learned_prior_state.yaml +127 -0
  200. versatil-0.3.0/hydra_configs/end_to_end_training_runs/ur3/kl_cvae_learned_prior_state.yaml +104 -0
  201. versatil-0.3.0/hydra_configs/end_to_end_training_runs/ur3/kl_cvae_state.yaml +96 -0
  202. versatil-0.3.0/hydra_configs/end_to_end_training_runs/ur3/lat_flow_state.yaml +127 -0
  203. versatil-0.3.0/hydra_configs/end_to_end_training_runs/ur3/relaxed_conditional_sinkhorn_cwae_learned_prior_state.yaml +118 -0
  204. versatil-0.3.0/hydra_configs/experiment/default.yaml +22 -0
  205. versatil-0.3.0/hydra_configs/experiment/synthetic.yaml +5 -0
  206. versatil-0.3.0/hydra_configs/inference/default.yaml +6 -0
  207. versatil-0.3.0/hydra_configs/inference/libero_lerobot.yaml +4 -0
  208. versatil-0.3.0/hydra_configs/policy/algorithm/bc_with_denoising_flow_matching_prior.yaml +42 -0
  209. versatil-0.3.0/hydra_configs/policy/algorithm/bc_with_deterministic_learned_prior.yaml +35 -0
  210. versatil-0.3.0/hydra_configs/policy/algorithm/bc_with_dit_prior.yaml +47 -0
  211. versatil-0.3.0/hydra_configs/policy/algorithm/bc_with_learned_prior.yaml +39 -0
  212. versatil-0.3.0/hydra_configs/policy/algorithm/bc_with_learned_prior_smallsize.yaml +35 -0
  213. versatil-0.3.0/hydra_configs/policy/algorithm/bc_with_vae_gaussian.yaml +26 -0
  214. versatil-0.3.0/hydra_configs/policy/algorithm/bc_with_vamp_prior.yaml +31 -0
  215. versatil-0.3.0/hydra_configs/policy/algorithm/bc_with_vq_learned.yaml +29 -0
  216. versatil-0.3.0/hydra_configs/policy/algorithm/bc_with_vq_uniform.yaml +24 -0
  217. versatil-0.3.0/hydra_configs/policy/algorithm/behavioral_cloning.yaml +3 -0
  218. versatil-0.3.0/hydra_configs/policy/algorithm/diffusion.yaml +15 -0
  219. versatil-0.3.0/hydra_configs/policy/algorithm/diffusion_with_vae_gaussian.yaml +37 -0
  220. versatil-0.3.0/hydra_configs/policy/algorithm/flow_matching.yaml +13 -0
  221. versatil-0.3.0/hydra_configs/policy/algorithm/flow_matching_with_dit_prior.yaml +57 -0
  222. versatil-0.3.0/hydra_configs/policy/decoder/act_default.yaml +24 -0
  223. versatil-0.3.0/hydra_configs/policy/decoder/act_language.yaml +25 -0
  224. versatil-0.3.0/hydra_configs/policy/decoder/action_transformer.yaml +24 -0
  225. versatil-0.3.0/hydra_configs/policy/decoder/action_transformer_language.yaml +26 -0
  226. versatil-0.3.0/hydra_configs/policy/decoder/conditional_unet.yaml +35 -0
  227. versatil-0.3.0/hydra_configs/policy/decoder/discrete_detr_transformer.yaml +27 -0
  228. versatil-0.3.0/hydra_configs/policy/decoder/dit_block_transformer.yaml +31 -0
  229. versatil-0.3.0/hydra_configs/policy/decoder/dit_cross_attention_transformer.yaml +31 -0
  230. versatil-0.3.0/hydra_configs/policy/decoder/dit_multimodal.yaml +31 -0
  231. versatil-0.3.0/hydra_configs/policy/decoder/free_action_transformer.yaml +36 -0
  232. versatil-0.3.0/hydra_configs/policy/decoder/gpt_action_transformer.yaml +35 -0
  233. versatil-0.3.0/hydra_configs/policy/decoder/heads/ant_8d.yaml +12 -0
  234. versatil-0.3.0/hydra_configs/policy/decoder/heads/block_pushing_2d.yaml +12 -0
  235. versatil-0.3.0/hydra_configs/policy/decoder/heads/bowel_retraction.yaml +23 -0
  236. versatil-0.3.0/hydra_configs/policy/decoder/heads/bowel_retraction_phase.yaml +47 -0
  237. versatil-0.3.0/hydra_configs/policy/decoder/heads/gaussian_bowel_retraction.yaml +25 -0
  238. versatil-0.3.0/hydra_configs/policy/decoder/heads/gaussian_libero.yaml +39 -0
  239. versatil-0.3.0/hydra_configs/policy/decoder/heads/gaussian_synthetic_2d.yaml +13 -0
  240. versatil-0.3.0/hydra_configs/policy/decoder/heads/kitchen_9d.yaml +12 -0
  241. versatil-0.3.0/hydra_configs/policy/decoder/heads/libero.yaml +36 -0
  242. versatil-0.3.0/hydra_configs/policy/decoder/heads/libero_vla.yaml +12 -0
  243. versatil-0.3.0/hydra_configs/policy/decoder/heads/metaworld_mt50.yaml +24 -0
  244. versatil-0.3.0/hydra_configs/policy/decoder/heads/pusht_2d.yaml +12 -0
  245. versatil-0.3.0/hydra_configs/policy/decoder/heads/robot_pos_gripper.yaml +24 -0
  246. versatil-0.3.0/hydra_configs/policy/decoder/heads/synthetic_2d.yaml +11 -0
  247. versatil-0.3.0/hydra_configs/policy/decoder/heads/tokenized.yaml +3 -0
  248. versatil-0.3.0/hydra_configs/policy/decoder/heads/tokenized_moe.yaml +16 -0
  249. versatil-0.3.0/hydra_configs/policy/decoder/heads/unet_bowel_retraction.yaml +9 -0
  250. versatil-0.3.0/hydra_configs/policy/decoder/heads/unet_libero.yaml +12 -0
  251. versatil-0.3.0/hydra_configs/policy/decoder/heads/ur3_2d.yaml +12 -0
  252. versatil-0.3.0/hydra_configs/policy/decoder/lact.yaml +27 -0
  253. versatil-0.3.0/hydra_configs/policy/decoder/mixture_density_act.yaml +29 -0
  254. versatil-0.3.0/hydra_configs/policy/decoder/mixture_of_act.yaml +61 -0
  255. versatil-0.3.0/hydra_configs/policy/decoder/moe_free_action_transformer.yaml +34 -0
  256. versatil-0.3.0/hydra_configs/policy/decoder/phase_act_default.yaml +28 -0
  257. versatil-0.3.0/hydra_configs/policy/decoder/phase_act_depth.yaml +28 -0
  258. versatil-0.3.0/hydra_configs/policy/decoder/phase_act_language.yaml +29 -0
  259. versatil-0.3.0/hydra_configs/policy/decoder/pi0_decoder.yaml +25 -0
  260. versatil-0.3.0/hydra_configs/policy/decoder/smolvla_decoder.yaml +23 -0
  261. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/ant_state.yaml +14 -0
  262. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/block_pushing_state.yaml +20 -0
  263. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/kitchen_rgb.yaml +15 -0
  264. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/kitchen_state.yaml +12 -0
  265. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/language_conditional_stereo_rgb_pooled.yaml +35 -0
  266. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/mono_rgb.yaml +15 -0
  267. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/mono_rgb_context.yaml +22 -0
  268. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/mono_rgb_language_encoder.yaml +23 -0
  269. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/mono_rgb_language_encoder_tiny.yaml +23 -0
  270. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/mono_vlm.yaml +14 -0
  271. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/paligemma_embeddings.yaml +26 -0
  272. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/pusht_rgb.yaml +15 -0
  273. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/pusht_rgb_proprio.yaml +21 -0
  274. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/pusht_state.yaml +12 -0
  275. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/smolvlm_embeddings.yaml +27 -0
  276. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/stereo_rgb.yaml +24 -0
  277. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/stereo_rgb_dformer.yaml +32 -0
  278. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/stereo_rgb_geometric_depth.yaml +22 -0
  279. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/stereo_rgb_geometric_depth_language_encoder.yaml +31 -0
  280. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/stereo_rgb_language_encoder.yaml +34 -0
  281. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/stereo_rgb_language_encoder_tiny.yaml +33 -0
  282. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/stereo_rgb_language_pooled_attention_fusion.yaml +43 -0
  283. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/stereo_rgb_pooled.yaml +24 -0
  284. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/stereo_rgb_pooled_proprioceptive_camera_frame.yaml +29 -0
  285. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/stereo_vit_language_encoder.yaml +32 -0
  286. versatil-0.3.0/hydra_configs/policy/encoding_pipeline/ur3_state.yaml +14 -0
  287. versatil-0.3.0/hydra_configs/policy/loss/fixed_variance_negative_loglikelihood_KL.yaml +44 -0
  288. versatil-0.3.0/hydra_configs/policy/loss/fixed_variance_negative_loglikelihood_phaseCE_MMD.yaml +43 -0
  289. versatil-0.3.0/hydra_configs/policy/loss/gaussian_mixture_nll_synthetic.yaml +25 -0
  290. versatil-0.3.0/hydra_configs/policy/loss/moe_regression_gripper_KL.yaml +37 -0
  291. versatil-0.3.0/hydra_configs/policy/loss/moe_regression_gripper_MMD.yaml +37 -0
  292. versatil-0.3.0/hydra_configs/policy/loss/moe_tokenCE_binary_KL.yaml +8 -0
  293. versatil-0.3.0/hydra_configs/policy/loss/negative_loglikelihood.yaml +28 -0
  294. versatil-0.3.0/hydra_configs/policy/loss/optimal_transport_binary_gripper_latent_MMD.yaml +32 -0
  295. versatil-0.3.0/hydra_configs/policy/loss/regressionMSE_gripper.yaml +26 -0
  296. versatil-0.3.0/hydra_configs/policy/loss/regressionMSE_gripper_KL.yaml +30 -0
  297. versatil-0.3.0/hydra_configs/policy/loss/regressionMSE_gripper_MMD_denoising_prior.yaml +35 -0
  298. versatil-0.3.0/hydra_configs/policy/loss/regression_KL.yaml +23 -0
  299. versatil-0.3.0/hydra_configs/policy/loss/regression_MMD.yaml +27 -0
  300. versatil-0.3.0/hydra_configs/policy/loss/regression_MMD_denoising_prior.yaml +32 -0
  301. versatil-0.3.0/hydra_configs/policy/loss/regression_OT.yaml +26 -0
  302. versatil-0.3.0/hydra_configs/policy/loss/regression_conditional_MMD.yaml +33 -0
  303. versatil-0.3.0/hydra_configs/policy/loss/regression_continuous_gripper.yaml +28 -0
  304. versatil-0.3.0/hydra_configs/policy/loss/regression_denoising_prior.yaml +23 -0
  305. versatil-0.3.0/hydra_configs/policy/loss/regression_gripper.yaml +26 -0
  306. versatil-0.3.0/hydra_configs/policy/loss/regression_gripper_KL.yaml +26 -0
  307. versatil-0.3.0/hydra_configs/policy/loss/regression_gripper_KL_phaseCE.yaml +47 -0
  308. versatil-0.3.0/hydra_configs/policy/loss/regression_gripper_MMD.yaml +29 -0
  309. versatil-0.3.0/hydra_configs/policy/loss/regression_gripper_MMD_phaseCE.yaml +47 -0
  310. versatil-0.3.0/hydra_configs/policy/loss/regression_gripper_MMD_vic_latent.yaml +35 -0
  311. versatil-0.3.0/hydra_configs/policy/loss/regression_gripper_denoising_prior.yaml +36 -0
  312. versatil-0.3.0/hydra_configs/policy/loss/regression_gripper_l1.yaml +22 -0
  313. versatil-0.3.0/hydra_configs/policy/loss/regression_gripper_mse.yaml +22 -0
  314. versatil-0.3.0/hydra_configs/policy/loss/regression_l1_binary_gripper_latent_ot.yaml +32 -0
  315. versatil-0.3.0/hydra_configs/policy/loss/regression_moe_synthetic.yaml +25 -0
  316. versatil-0.3.0/hydra_configs/policy/loss/regression_relaxed_conditional_OT.yaml +30 -0
  317. versatil-0.3.0/hydra_configs/policy/loss/regression_synthetic.yaml +19 -0
  318. versatil-0.3.0/hydra_configs/policy/loss/regression_vq.yaml +26 -0
  319. versatil-0.3.0/hydra_configs/policy/loss/regression_vq_ce.yaml +31 -0
  320. versatil-0.3.0/hydra_configs/policy/loss/tokenCE.yaml +9 -0
  321. versatil-0.3.0/hydra_configs/policy/loss/tokenCE_KL.yaml +12 -0
  322. versatil-0.3.0/hydra_configs/policy/loss/tokenCE_KL_denoising_prior.yaml +15 -0
  323. versatil-0.3.0/hydra_configs/policy/loss/tokenCE_MMD.yaml +13 -0
  324. versatil-0.3.0/hydra_configs/policy/loss/tokenCE_binary_KL.yaml +17 -0
  325. versatil-0.3.0/hydra_configs/quantization/x86_static_pt2e.yaml +8 -0
  326. versatil-0.3.0/hydra_configs/synthetic_presets/README.md +17 -0
  327. versatil-0.3.0/hydra_configs/synthetic_presets/circle.yaml +23 -0
  328. versatil-0.3.0/hydra_configs/synthetic_presets/conditional_circle.yaml +22 -0
  329. versatil-0.3.0/hydra_configs/synthetic_presets/corridor_k16.yaml +26 -0
  330. versatil-0.3.0/hydra_configs/synthetic_presets/corridor_k8.yaml +26 -0
  331. versatil-0.3.0/hydra_configs/synthetic_presets/radial_k16.yaml +26 -0
  332. versatil-0.3.0/hydra_configs/synthetic_presets/radial_k8.yaml +26 -0
  333. versatil-0.3.0/hydra_configs/synthetic_presets/sequential.yaml +22 -0
  334. versatil-0.3.0/hydra_configs/task/action_space/ant_precomputed.yaml +16 -0
  335. versatil-0.3.0/hydra_configs/task/action_space/block_pushing_abs_precomputed.yaml +17 -0
  336. versatil-0.3.0/hydra_configs/task/action_space/block_pushing_precomputed.yaml +17 -0
  337. versatil-0.3.0/hydra_configs/task/action_space/deltas_cf_pos_gripper.yaml +31 -0
  338. versatil-0.3.0/hydra_configs/task/action_space/deltas_cf_pos_gripper_phase.yaml +40 -0
  339. versatil-0.3.0/hydra_configs/task/action_space/deltas_robot_pos_gripper.yaml +31 -0
  340. versatil-0.3.0/hydra_configs/task/action_space/kitchen_precomputed.yaml +16 -0
  341. versatil-0.3.0/hydra_configs/task/action_space/libero_precomputed.yaml +42 -0
  342. versatil-0.3.0/hydra_configs/task/action_space/libero_precomputed_lerobot.yaml +42 -0
  343. versatil-0.3.0/hydra_configs/task/action_space/metaworld_mt50_precomputed.yaml +29 -0
  344. versatil-0.3.0/hydra_configs/task/action_space/pusht_precomputed.yaml +16 -0
  345. versatil-0.3.0/hydra_configs/task/action_space/synthetic_2d.yaml +16 -0
  346. versatil-0.3.0/hydra_configs/task/action_space/ur3_precomputed.yaml +16 -0
  347. versatil-0.3.0/hydra_configs/task/dataloader/ant_state.yaml +22 -0
  348. versatil-0.3.0/hydra_configs/task/dataloader/block_pushing_state.yaml +22 -0
  349. versatil-0.3.0/hydra_configs/task/dataloader/bowel_retraction.yaml +28 -0
  350. versatil-0.3.0/hydra_configs/task/dataloader/bowel_retraction_language.yaml +29 -0
  351. versatil-0.3.0/hydra_configs/task/dataloader/bowel_retraction_minmax_spatial_aug.yaml +28 -0
  352. versatil-0.3.0/hydra_configs/task/dataloader/bowel_retraction_tokenized_actions.yaml +25 -0
  353. versatil-0.3.0/hydra_configs/task/dataloader/image_augmentations/color.yaml +29 -0
  354. versatil-0.3.0/hydra_configs/task/dataloader/image_augmentations/light_color.yaml +12 -0
  355. versatil-0.3.0/hydra_configs/task/dataloader/image_augmentations/light_spatial.yaml +10 -0
  356. versatil-0.3.0/hydra_configs/task/dataloader/image_augmentations/rotation.yaml +7 -0
  357. versatil-0.3.0/hydra_configs/task/dataloader/image_augmentations/spatial.yaml +15 -0
  358. versatil-0.3.0/hydra_configs/task/dataloader/image_augmentations/strong_color.yaml +28 -0
  359. versatil-0.3.0/hydra_configs/task/dataloader/image_augmentations/strong_spatial.yaml +15 -0
  360. versatil-0.3.0/hydra_configs/task/dataloader/kitchen_rgb.yaml +23 -0
  361. versatil-0.3.0/hydra_configs/task/dataloader/kitchen_state.yaml +22 -0
  362. versatil-0.3.0/hydra_configs/task/dataloader/libero.yaml +30 -0
  363. versatil-0.3.0/hydra_configs/task/dataloader/libero_lerobot.yaml +28 -0
  364. versatil-0.3.0/hydra_configs/task/dataloader/metaworld.yaml +29 -0
  365. versatil-0.3.0/hydra_configs/task/dataloader/pusht_rgb.yaml +23 -0
  366. versatil-0.3.0/hydra_configs/task/dataloader/pusht_state.yaml +22 -0
  367. versatil-0.3.0/hydra_configs/task/dataloader/synthetic_default.yaml +23 -0
  368. versatil-0.3.0/hydra_configs/task/dataloader/tokenization/action_fast.yaml +10 -0
  369. versatil-0.3.0/hydra_configs/task/dataloader/tokenization/obs_language.yaml +10 -0
  370. versatil-0.3.0/hydra_configs/task/dataloader/tokenization/obs_language_action_fast.yaml +15 -0
  371. versatil-0.3.0/hydra_configs/task/dataloader/tokenization/obs_language_proprio_rf_gripper.yaml +13 -0
  372. versatil-0.3.0/hydra_configs/task/dataloader/tokenization/obs_proprio_action_fast.yaml +17 -0
  373. versatil-0.3.0/hydra_configs/task/dataloader/tokenization/obs_proprio_cam_language.yaml +13 -0
  374. versatil-0.3.0/hydra_configs/task/dataloader/tokenization/obs_proprio_cf_action_fast.yaml +15 -0
  375. versatil-0.3.0/hydra_configs/task/dataloader/ur3_state.yaml +27 -0
  376. versatil-0.3.0/hydra_configs/task/dataset_schema/ant.yaml +8 -0
  377. versatil-0.3.0/hydra_configs/task/dataset_schema/block_pushing.yaml +8 -0
  378. versatil-0.3.0/hydra_configs/task/dataset_schema/block_pushing_abs.yaml +8 -0
  379. versatil-0.3.0/hydra_configs/task/dataset_schema/bowel_retraction_invivo.yaml +11 -0
  380. versatil-0.3.0/hydra_configs/task/dataset_schema/bowel_retraction_v2.yaml +11 -0
  381. versatil-0.3.0/hydra_configs/task/dataset_schema/bowel_retraction_v4.yaml +15 -0
  382. versatil-0.3.0/hydra_configs/task/dataset_schema/kitchen.yaml +8 -0
  383. versatil-0.3.0/hydra_configs/task/dataset_schema/libero_10.yaml +30 -0
  384. versatil-0.3.0/hydra_configs/task/dataset_schema/libero_all.yaml +143 -0
  385. versatil-0.3.0/hydra_configs/task/dataset_schema/libero_lerobot.yaml +8 -0
  386. versatil-0.3.0/hydra_configs/task/dataset_schema/libero_object.yaml +18 -0
  387. versatil-0.3.0/hydra_configs/task/dataset_schema/libero_plus_lerobot.yaml +8 -0
  388. versatil-0.3.0/hydra_configs/task/dataset_schema/metaworld_mt50.yaml +8 -0
  389. versatil-0.3.0/hydra_configs/task/dataset_schema/multimodal_peg_transfer.yaml +21 -0
  390. versatil-0.3.0/hydra_configs/task/dataset_schema/pusht.yaml +8 -0
  391. versatil-0.3.0/hydra_configs/task/dataset_schema/synthetic/circle.yaml +16 -0
  392. versatil-0.3.0/hydra_configs/task/dataset_schema/synthetic/conditional_circle.yaml +16 -0
  393. versatil-0.3.0/hydra_configs/task/dataset_schema/synthetic/corridor_navigation.yaml +16 -0
  394. versatil-0.3.0/hydra_configs/task/dataset_schema/synthetic/radial.yaml +16 -0
  395. versatil-0.3.0/hydra_configs/task/dataset_schema/synthetic/sequential.yaml +16 -0
  396. versatil-0.3.0/hydra_configs/task/dataset_schema/ur3.yaml +8 -0
  397. versatil-0.3.0/hydra_configs/task/dataset_schema/zarr_meta/ant.yaml +55 -0
  398. versatil-0.3.0/hydra_configs/task/dataset_schema/zarr_meta/block_pushing.yaml +120 -0
  399. versatil-0.3.0/hydra_configs/task/dataset_schema/zarr_meta/block_pushing_abs.yaml +120 -0
  400. versatil-0.3.0/hydra_configs/task/dataset_schema/zarr_meta/bowel_retraction.yaml +72 -0
  401. versatil-0.3.0/hydra_configs/task/dataset_schema/zarr_meta/kitchen.yaml +51 -0
  402. versatil-0.3.0/hydra_configs/task/dataset_schema/zarr_meta/libero.yaml +90 -0
  403. versatil-0.3.0/hydra_configs/task/dataset_schema/zarr_meta/libero_lerobot.yaml +96 -0
  404. versatil-0.3.0/hydra_configs/task/dataset_schema/zarr_meta/libero_plus_lerobot.yaml +96 -0
  405. versatil-0.3.0/hydra_configs/task/dataset_schema/zarr_meta/metaworld_mt50.yaml +64 -0
  406. versatil-0.3.0/hydra_configs/task/dataset_schema/zarr_meta/multimodal_peg_transfer.yaml +40 -0
  407. versatil-0.3.0/hydra_configs/task/dataset_schema/zarr_meta/pusht.yaml +73 -0
  408. versatil-0.3.0/hydra_configs/task/dataset_schema/zarr_meta/synthetic.yaml +47 -0
  409. versatil-0.3.0/hydra_configs/task/dataset_schema/zarr_meta/ur3.yaml +48 -0
  410. versatil-0.3.0/hydra_configs/task/observation_space/ant_state.yaml +38 -0
  411. versatil-0.3.0/hydra_configs/task/observation_space/block_pushing_state.yaml +109 -0
  412. versatil-0.3.0/hydra_configs/task/observation_space/kitchen_rgb.yaml +13 -0
  413. versatil-0.3.0/hydra_configs/task/observation_space/kitchen_state.yaml +25 -0
  414. versatil-0.3.0/hydra_configs/task/observation_space/libero_plus_rgb_lerobot.yaml +29 -0
  415. versatil-0.3.0/hydra_configs/task/observation_space/libero_rgb.yaml +29 -0
  416. versatil-0.3.0/hydra_configs/task/observation_space/libero_rgb_lerobot.yaml +29 -0
  417. versatil-0.3.0/hydra_configs/task/observation_space/libero_rgb_proprio_lerobot.yaml +60 -0
  418. versatil-0.3.0/hydra_configs/task/observation_space/metaworld_mt50_rgb.yaml +21 -0
  419. versatil-0.3.0/hydra_configs/task/observation_space/pusht_rgb.yaml +13 -0
  420. versatil-0.3.0/hydra_configs/task/observation_space/pusht_rgb_proprio.yaml +23 -0
  421. versatil-0.3.0/hydra_configs/task/observation_space/pusht_state.yaml +55 -0
  422. versatil-0.3.0/hydra_configs/task/observation_space/stereo_rgb.yaml +21 -0
  423. versatil-0.3.0/hydra_configs/task/observation_space/stereo_rgb_270.yaml +21 -0
  424. versatil-0.3.0/hydra_configs/task/observation_space/stereo_rgb_language_proprio_cf.yaml +37 -0
  425. versatil-0.3.0/hydra_configs/task/observation_space/stereo_rgb_proprio.yaml +37 -0
  426. versatil-0.3.0/hydra_configs/task/observation_space/stereo_rgb_proprio_cf.yaml +29 -0
  427. versatil-0.3.0/hydra_configs/task/observation_space/stereo_rgb_robot_proprio.yaml +29 -0
  428. versatil-0.3.0/hydra_configs/task/observation_space/stereo_rgbd.yaml +29 -0
  429. versatil-0.3.0/hydra_configs/task/observation_space/stereo_rgbd_language_proprio_cf.yaml +45 -0
  430. versatil-0.3.0/hydra_configs/task/observation_space/synthetic_image.yaml +21 -0
  431. versatil-0.3.0/hydra_configs/task/observation_space/synthetic_image_state.yaml +29 -0
  432. versatil-0.3.0/hydra_configs/task/observation_space/synthetic_image_state_context.yaml +37 -0
  433. versatil-0.3.0/hydra_configs/task/observation_space/ur3_state.yaml +38 -0
  434. versatil-0.3.0/hydra_configs/training/default.yaml +38 -0
  435. versatil-0.3.0/hydra_configs/training/ema.yaml +33 -0
  436. versatil-0.3.0/hydra_configs/training/ema_cosine_schedule.yaml +29 -0
  437. versatil-0.3.0/hydra_configs/training/gpt_decoder_default.yaml +32 -0
  438. versatil-0.3.0/hydra_configs/training/latent.yaml +41 -0
  439. versatil-0.3.0/hydra_configs/training/multistage/vae_frozen_prior.yaml +23 -0
  440. versatil-0.3.0/hydra_configs/training/multistage/vae_frozen_prior_with_backbone.yaml +25 -0
  441. versatil-0.3.0/hydra_configs/training/optimizer/adam.yaml +10 -0
  442. versatil-0.3.0/hydra_configs/training/optimizer/adamw.yaml +11 -0
  443. versatil-0.3.0/hydra_configs/training/optimizer/param_groups/variational_prior.yaml +10 -0
  444. versatil-0.3.0/hydra_configs/training/optimizer/param_groups/variational_prior_with_backbone.yaml +14 -0
  445. versatil-0.3.0/hydra_configs/training/optimizer/sgd.yaml +10 -0
  446. versatil-0.3.0/hydra_configs/training/phase_act_default.yaml +29 -0
  447. versatil-0.3.0/hydra_configs/training/synthetic.yaml +25 -0
  448. versatil-0.3.0/media/VersatIL_logo.png +0 -0
  449. versatil-0.3.0/mkdocs.yml +105 -0
  450. versatil-0.3.0/pyproject.toml +214 -0
  451. versatil-0.3.0/src/versatil/__init__.py +85 -0
  452. versatil-0.3.0/src/versatil/common/__init__.py +1 -0
  453. versatil-0.3.0/src/versatil/common/argparse_compat.py +50 -0
  454. versatil-0.3.0/src/versatil/common/dict_of_tensor_mixin.py +48 -0
  455. versatil-0.3.0/src/versatil/common/logging.py +16 -0
  456. versatil-0.3.0/src/versatil/common/module_attr_mixin.py +17 -0
  457. versatil-0.3.0/src/versatil/common/omegaconf_ops.py +33 -0
  458. versatil-0.3.0/src/versatil/common/set_cache_dir.py +21 -0
  459. versatil-0.3.0/src/versatil/common/tensor_ops.py +126 -0
  460. versatil-0.3.0/src/versatil/configs/__init__.py +1047 -0
  461. versatil-0.3.0/src/versatil/configs/data/__init__.py +0 -0
  462. versatil-0.3.0/src/versatil/configs/data/augmentations.py +134 -0
  463. versatil-0.3.0/src/versatil/configs/data/dataloader.py +60 -0
  464. versatil-0.3.0/src/versatil/configs/data/metadata.py +130 -0
  465. versatil-0.3.0/src/versatil/configs/data/raw/__init__.py +8 -0
  466. versatil-0.3.0/src/versatil/configs/data/raw/schema.py +57 -0
  467. versatil-0.3.0/src/versatil/configs/data/raw/zarr_meta.py +24 -0
  468. versatil-0.3.0/src/versatil/configs/data/task.py +66 -0
  469. versatil-0.3.0/src/versatil/configs/data/tokenizer.py +45 -0
  470. versatil-0.3.0/src/versatil/configs/decoding/__init__.py +0 -0
  471. versatil-0.3.0/src/versatil/configs/decoding/action_head.py +101 -0
  472. versatil-0.3.0/src/versatil/configs/decoding/algorithm.py +124 -0
  473. versatil-0.3.0/src/versatil/configs/decoding/decoder.py +414 -0
  474. versatil-0.3.0/src/versatil/configs/decoding/latent.py +228 -0
  475. versatil-0.3.0/src/versatil/configs/encoding/__init__.py +0 -0
  476. versatil-0.3.0/src/versatil/configs/encoding/encoder.py +196 -0
  477. versatil-0.3.0/src/versatil/configs/encoding/fusion.py +45 -0
  478. versatil-0.3.0/src/versatil/configs/encoding/pipeline.py +18 -0
  479. versatil-0.3.0/src/versatil/configs/experiment.py +33 -0
  480. versatil-0.3.0/src/versatil/configs/inference.py +15 -0
  481. versatil-0.3.0/src/versatil/configs/loss.py +293 -0
  482. versatil-0.3.0/src/versatil/configs/main.py +33 -0
  483. versatil-0.3.0/src/versatil/configs/policy.py +28 -0
  484. versatil-0.3.0/src/versatil/configs/post_training_compression.py +97 -0
  485. versatil-0.3.0/src/versatil/configs/quantization.py +67 -0
  486. versatil-0.3.0/src/versatil/configs/training.py +195 -0
  487. versatil-0.3.0/src/versatil/data/__init__.py +0 -0
  488. versatil-0.3.0/src/versatil/data/constants.py +279 -0
  489. versatil-0.3.0/src/versatil/data/dataloader.py +286 -0
  490. versatil-0.3.0/src/versatil/data/episodic_dataset.py +376 -0
  491. versatil-0.3.0/src/versatil/data/metadata.py +673 -0
  492. versatil-0.3.0/src/versatil/data/normalization/__init__.py +0 -0
  493. versatil-0.3.0/src/versatil/data/normalization/image_normalizer.py +458 -0
  494. versatil-0.3.0/src/versatil/data/normalization/normalizer.py +647 -0
  495. versatil-0.3.0/src/versatil/data/preprocessing/__init__.py +0 -0
  496. versatil-0.3.0/src/versatil/data/preprocessing/codecs.py +96 -0
  497. versatil-0.3.0/src/versatil/data/preprocessing/create_zarr_arrays.py +126 -0
  498. versatil-0.3.0/src/versatil/data/preprocessing/create_zarr_from_csv.py +68 -0
  499. versatil-0.3.0/src/versatil/data/preprocessing/create_zarr_from_hdf5.py +71 -0
  500. versatil-0.3.0/src/versatil/data/preprocessing/create_zarr_from_lerobot.py +57 -0
  501. versatil-0.3.0/src/versatil/data/preprocessing/create_zarr_from_synthetic.py +136 -0
  502. versatil-0.3.0/src/versatil/data/preprocessing/replay_buffer.py +1094 -0
  503. versatil-0.3.0/src/versatil/data/preprocessing/sampler.py +282 -0
  504. versatil-0.3.0/src/versatil/data/processing/__init__.py +0 -0
  505. versatil-0.3.0/src/versatil/data/processing/action_processor.py +354 -0
  506. versatil-0.3.0/src/versatil/data/processing/image_processor.py +102 -0
  507. versatil-0.3.0/src/versatil/data/processing/transform.py +240 -0
  508. versatil-0.3.0/src/versatil/data/processing/transform_builder.py +605 -0
  509. versatil-0.3.0/src/versatil/data/raw/__init__.py +0 -0
  510. versatil-0.3.0/src/versatil/data/raw/schemas/__init__.py +3 -0
  511. versatil-0.3.0/src/versatil/data/raw/schemas/base.py +118 -0
  512. versatil-0.3.0/src/versatil/data/raw/schemas/csv.py +52 -0
  513. versatil-0.3.0/src/versatil/data/raw/schemas/custom/__init__.py +3 -0
  514. versatil-0.3.0/src/versatil/data/raw/schemas/custom/libero.py +184 -0
  515. versatil-0.3.0/src/versatil/data/raw/schemas/custom/synthetic.py +170 -0
  516. versatil-0.3.0/src/versatil/data/raw/schemas/custom/tso.py +321 -0
  517. versatil-0.3.0/src/versatil/data/raw/schemas/hdf5.py +62 -0
  518. versatil-0.3.0/src/versatil/data/raw/schemas/lerobot.py +546 -0
  519. versatil-0.3.0/src/versatil/data/raw/zarr_meta.py +213 -0
  520. versatil-0.3.0/src/versatil/data/sample_builder.py +242 -0
  521. versatil-0.3.0/src/versatil/data/synthetic/__init__.py +3 -0
  522. versatil-0.3.0/src/versatil/data/synthetic/assets/RobotoSerif.ttf +0 -0
  523. versatil-0.3.0/src/versatil/data/synthetic/constants.py +121 -0
  524. versatil-0.3.0/src/versatil/data/synthetic/generators.py +865 -0
  525. versatil-0.3.0/src/versatil/data/synthetic/renderer.py +145 -0
  526. versatil-0.3.0/src/versatil/data/synthetic/task_layout.py +164 -0
  527. versatil-0.3.0/src/versatil/data/synthetic/visualization.py +416 -0
  528. versatil-0.3.0/src/versatil/data/task.py +410 -0
  529. versatil-0.3.0/src/versatil/data/tokenization/__init__.py +17 -0
  530. versatil-0.3.0/src/versatil/data/tokenization/action_tokenizer.py +576 -0
  531. versatil-0.3.0/src/versatil/data/tokenization/binning_tokenizer.py +187 -0
  532. versatil-0.3.0/src/versatil/data/tokenization/fast.py +89 -0
  533. versatil-0.3.0/src/versatil/data/tokenization/observation_tokenizer.py +388 -0
  534. versatil-0.3.0/src/versatil/data/tokenization/tokenizer.py +148 -0
  535. versatil-0.3.0/src/versatil/endpoints/__init__.py +1 -0
  536. versatil-0.3.0/src/versatil/endpoints/explain.py +334 -0
  537. versatil-0.3.0/src/versatil/endpoints/post_training_compress.py +37 -0
  538. versatil-0.3.0/src/versatil/endpoints/test.py +193 -0
  539. versatil-0.3.0/src/versatil/endpoints/train.py +53 -0
  540. versatil-0.3.0/src/versatil/explain/__init__.py +23 -0
  541. versatil-0.3.0/src/versatil/explain/constants.py +11 -0
  542. versatil-0.3.0/src/versatil/explain/explainer.py +526 -0
  543. versatil-0.3.0/src/versatil/inference/__init__.py +1 -0
  544. versatil-0.3.0/src/versatil/inference/action_postprocessor.py +183 -0
  545. versatil-0.3.0/src/versatil/inference/inference_client.py +479 -0
  546. versatil-0.3.0/src/versatil/inference/observation_buffer.py +68 -0
  547. versatil-0.3.0/src/versatil/inference/observation_preprocessor.py +206 -0
  548. versatil-0.3.0/src/versatil/inference/policy_loading/__init__.py +1 -0
  549. versatil-0.3.0/src/versatil/inference/policy_loading/base.py +285 -0
  550. versatil-0.3.0/src/versatil/inference/policy_loading/compressed_loader.py +365 -0
  551. versatil-0.3.0/src/versatil/inference/policy_loading/float_loader.py +130 -0
  552. versatil-0.3.0/src/versatil/inference/protocol.py +69 -0
  553. versatil-0.3.0/src/versatil/inference/socket_transport.py +116 -0
  554. versatil-0.3.0/src/versatil/inference/synthetic_rollout.py +459 -0
  555. versatil-0.3.0/src/versatil/inference/temporal_aggregation.py +112 -0
  556. versatil-0.3.0/src/versatil/metrics/__init__.py +1 -0
  557. versatil-0.3.0/src/versatil/metrics/accumulators.py +391 -0
  558. versatil-0.3.0/src/versatil/metrics/base.py +237 -0
  559. versatil-0.3.0/src/versatil/metrics/components.py +2541 -0
  560. versatil-0.3.0/src/versatil/metrics/composite.py +92 -0
  561. versatil-0.3.0/src/versatil/metrics/constants.py +112 -0
  562. versatil-0.3.0/src/versatil/metrics/kernels.py +278 -0
  563. versatil-0.3.0/src/versatil/metrics/ot_loss.py +457 -0
  564. versatil-0.3.0/src/versatil/metrics/synthetic_metrics.py +302 -0
  565. versatil-0.3.0/src/versatil/models/__init__.py +0 -0
  566. versatil-0.3.0/src/versatil/models/decoding/__init__.py +5 -0
  567. versatil-0.3.0/src/versatil/models/decoding/action_heads/__init__.py +35 -0
  568. versatil-0.3.0/src/versatil/models/decoding/action_heads/base.py +73 -0
  569. versatil-0.3.0/src/versatil/models/decoding/action_heads/blocks.py +180 -0
  570. versatil-0.3.0/src/versatil/models/decoding/action_heads/gaussian.py +62 -0
  571. versatil-0.3.0/src/versatil/models/decoding/action_heads/moe.py +265 -0
  572. versatil-0.3.0/src/versatil/models/decoding/action_heads/single_output.py +27 -0
  573. versatil-0.3.0/src/versatil/models/decoding/action_masking.py +142 -0
  574. versatil-0.3.0/src/versatil/models/decoding/algorithm/__init__.py +1 -0
  575. versatil-0.3.0/src/versatil/models/decoding/algorithm/base.py +115 -0
  576. versatil-0.3.0/src/versatil/models/decoding/algorithm/behavior_cloning.py +73 -0
  577. versatil-0.3.0/src/versatil/models/decoding/algorithm/diffusion.py +249 -0
  578. versatil-0.3.0/src/versatil/models/decoding/algorithm/flow_matching.py +333 -0
  579. versatil-0.3.0/src/versatil/models/decoding/algorithm/variational.py +310 -0
  580. versatil-0.3.0/src/versatil/models/decoding/constants.py +121 -0
  581. versatil-0.3.0/src/versatil/models/decoding/decoders/__init__.py +10 -0
  582. versatil-0.3.0/src/versatil/models/decoding/decoders/base.py +295 -0
  583. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/__init__.py +25 -0
  584. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/act.py +209 -0
  585. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/action_transformer.py +160 -0
  586. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/conditional_action_unet.py +342 -0
  587. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/diffusion_action_transformer.py +335 -0
  588. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/discrete_detr_action_transformer.py +276 -0
  589. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/dit_block_action_transformer.py +295 -0
  590. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/free_action_transformer.py +428 -0
  591. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/gpt_action_transformer.py +541 -0
  592. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/lact.py +263 -0
  593. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/mode_act.py +673 -0
  594. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/moe_free_action_transformer.py +305 -0
  595. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/phase_act.py +172 -0
  596. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/pi0.py +508 -0
  597. versatil-0.3.0/src/versatil/models/decoding/decoders/factory/smolvla.py +667 -0
  598. versatil-0.3.0/src/versatil/models/decoding/decoders/moe.py +174 -0
  599. versatil-0.3.0/src/versatil/models/decoding/decoders/timestep_conditioning.py +143 -0
  600. versatil-0.3.0/src/versatil/models/decoding/latent/__init__.py +41 -0
  601. versatil-0.3.0/src/versatil/models/decoding/latent/posterior/__init__.py +0 -0
  602. versatil-0.3.0/src/versatil/models/decoding/latent/posterior/base_posterior.py +72 -0
  603. versatil-0.3.0/src/versatil/models/decoding/latent/posterior/transformer_encoder.py +273 -0
  604. versatil-0.3.0/src/versatil/models/decoding/latent/posterior/vq_encoder.py +244 -0
  605. versatil-0.3.0/src/versatil/models/decoding/latent/prior/__init__.py +0 -0
  606. versatil-0.3.0/src/versatil/models/decoding/latent/prior/base_prior.py +104 -0
  607. versatil-0.3.0/src/versatil/models/decoding/latent/prior/codebook_prior.py +323 -0
  608. versatil-0.3.0/src/versatil/models/decoding/latent/prior/dit_prior.py +555 -0
  609. versatil-0.3.0/src/versatil/models/decoding/latent/prior/gaussian_prior.py +82 -0
  610. versatil-0.3.0/src/versatil/models/decoding/latent/prior/latent_standardizer.py +127 -0
  611. versatil-0.3.0/src/versatil/models/decoding/latent/prior/state_condition_pool.py +72 -0
  612. versatil-0.3.0/src/versatil/models/decoding/latent/prior/transformer_encoder.py +218 -0
  613. versatil-0.3.0/src/versatil/models/decoding/latent/prior/uniform_codebook_prior.py +190 -0
  614. versatil-0.3.0/src/versatil/models/decoding/latent/prior/vamp_prior.py +339 -0
  615. versatil-0.3.0/src/versatil/models/decoding/latent/protocols.py +23 -0
  616. versatil-0.3.0/src/versatil/models/decoding/latent/reparametrize.py +16 -0
  617. versatil-0.3.0/src/versatil/models/decoding/latent/vq/__init__.py +7 -0
  618. versatil-0.3.0/src/versatil/models/decoding/latent/vq/euclidean_codebook.py +180 -0
  619. versatil-0.3.0/src/versatil/models/decoding/latent/vq/residual_vq.py +148 -0
  620. versatil-0.3.0/src/versatil/models/decoding/latent/vq/vector_quantize.py +99 -0
  621. versatil-0.3.0/src/versatil/models/decoding/mixture_of_experts.py +250 -0
  622. versatil-0.3.0/src/versatil/models/decoding/transformer_input_builder.py +369 -0
  623. versatil-0.3.0/src/versatil/models/decoding/unet_input_builder.py +107 -0
  624. versatil-0.3.0/src/versatil/models/encoding/__init__.py +4 -0
  625. versatil-0.3.0/src/versatil/models/encoding/encoders/__init__.py +0 -0
  626. versatil-0.3.0/src/versatil/models/encoding/encoders/base.py +183 -0
  627. versatil-0.3.0/src/versatil/models/encoding/encoders/conditional.py +157 -0
  628. versatil-0.3.0/src/versatil/models/encoding/encoders/constants.py +171 -0
  629. versatil-0.3.0/src/versatil/models/encoding/encoders/cross_modal/__init__.py +1 -0
  630. versatil-0.3.0/src/versatil/models/encoding/encoders/cross_modal/rgbd/__init__.py +1 -0
  631. versatil-0.3.0/src/versatil/models/encoding/encoders/cross_modal/rgbd/dformerv2.py +424 -0
  632. versatil-0.3.0/src/versatil/models/encoding/encoders/cross_modal/rgbd/geometric_rgbd.py +250 -0
  633. versatil-0.3.0/src/versatil/models/encoding/encoders/cross_modal/vision_language/__init__.py +1 -0
  634. versatil-0.3.0/src/versatil/models/encoding/encoders/cross_modal/vision_language/generative_vlm.py +452 -0
  635. versatil-0.3.0/src/versatil/models/encoding/encoders/cross_modal/vision_language/paligemma.py +109 -0
  636. versatil-0.3.0/src/versatil/models/encoding/encoders/cross_modal/vision_language/smolvlm.py +129 -0
  637. versatil-0.3.0/src/versatil/models/encoding/encoders/cross_modal/vision_language/two_tower_vlm.py +301 -0
  638. versatil-0.3.0/src/versatil/models/encoding/encoders/depth/__init__.py +1 -0
  639. versatil-0.3.0/src/versatil/models/encoding/encoders/depth/spatial.py +249 -0
  640. versatil-0.3.0/src/versatil/models/encoding/encoders/image_mixin.py +161 -0
  641. versatil-0.3.0/src/versatil/models/encoding/encoders/language/__init__.py +5 -0
  642. versatil-0.3.0/src/versatil/models/encoding/encoders/language/language.py +235 -0
  643. versatil-0.3.0/src/versatil/models/encoding/encoders/language_mixin.py +157 -0
  644. versatil-0.3.0/src/versatil/models/encoding/encoders/proprioceptive/__init__.py +5 -0
  645. versatil-0.3.0/src/versatil/models/encoding/encoders/proprioceptive/base.py +148 -0
  646. versatil-0.3.0/src/versatil/models/encoding/encoders/rgb/__init__.py +5 -0
  647. versatil-0.3.0/src/versatil/models/encoding/encoders/rgb/conditional_cnn.py +372 -0
  648. versatil-0.3.0/src/versatil/models/encoding/encoders/rgb/flat.py +199 -0
  649. versatil-0.3.0/src/versatil/models/encoding/encoders/rgb/spatial.py +249 -0
  650. versatil-0.3.0/src/versatil/models/encoding/encoders/unconditional.py +138 -0
  651. versatil-0.3.0/src/versatil/models/encoding/fusion/__init__.py +12 -0
  652. versatil-0.3.0/src/versatil/models/encoding/fusion/attention.py +94 -0
  653. versatil-0.3.0/src/versatil/models/encoding/fusion/base.py +119 -0
  654. versatil-0.3.0/src/versatil/models/encoding/fusion/concat.py +44 -0
  655. versatil-0.3.0/src/versatil/models/encoding/fusion/constants.py +9 -0
  656. versatil-0.3.0/src/versatil/models/encoding/fusion/mlp.py +70 -0
  657. versatil-0.3.0/src/versatil/models/encoding/pipeline.py +399 -0
  658. versatil-0.3.0/src/versatil/models/exportable_policy.py +128 -0
  659. versatil-0.3.0/src/versatil/models/feature_meta.py +58 -0
  660. versatil-0.3.0/src/versatil/models/layers/__init__.py +51 -0
  661. versatil-0.3.0/src/versatil/models/layers/activation.py +50 -0
  662. versatil-0.3.0/src/versatil/models/layers/conditional_unet.py +304 -0
  663. versatil-0.3.0/src/versatil/models/layers/constants.py +35 -0
  664. versatil-0.3.0/src/versatil/models/layers/convert_layers.py +98 -0
  665. versatil-0.3.0/src/versatil/models/layers/convolution/__init__.py +0 -0
  666. versatil-0.3.0/src/versatil/models/layers/convolution/conv1d.py +35 -0
  667. versatil-0.3.0/src/versatil/models/layers/convolution/depthwise_conv2d.py +29 -0
  668. versatil-0.3.0/src/versatil/models/layers/denoising/__init__.py +1 -0
  669. versatil-0.3.0/src/versatil/models/layers/denoising/conditional_flow_matching.py +127 -0
  670. versatil-0.3.0/src/versatil/models/layers/denoising/diffusion_process.py +194 -0
  671. versatil-0.3.0/src/versatil/models/layers/denoising/ode_solvers.py +142 -0
  672. versatil-0.3.0/src/versatil/models/layers/denoising/timestep_sampling.py +195 -0
  673. versatil-0.3.0/src/versatil/models/layers/detr_transformer/__init__.py +20 -0
  674. versatil-0.3.0/src/versatil/models/layers/detr_transformer/attention.py +97 -0
  675. versatil-0.3.0/src/versatil/models/layers/detr_transformer/transformer.py +131 -0
  676. versatil-0.3.0/src/versatil/models/layers/detr_transformer/transformer_decoder.py +208 -0
  677. versatil-0.3.0/src/versatil/models/layers/detr_transformer/transformer_encoder.py +149 -0
  678. versatil-0.3.0/src/versatil/models/layers/diffusion_transformer/__init__.py +45 -0
  679. versatil-0.3.0/src/versatil/models/layers/diffusion_transformer/cross_attention_dit.py +174 -0
  680. versatil-0.3.0/src/versatil/models/layers/diffusion_transformer/dit_block_transformer.py +253 -0
  681. versatil-0.3.0/src/versatil/models/layers/diffusion_transformer/final_prediction_layer.py +68 -0
  682. versatil-0.3.0/src/versatil/models/layers/diffusion_transformer/mmdit_transformer.py +156 -0
  683. versatil-0.3.0/src/versatil/models/layers/drop_path.py +24 -0
  684. versatil-0.3.0/src/versatil/models/layers/dynamic_feature_embedding.py +70 -0
  685. versatil-0.3.0/src/versatil/models/layers/feature_projection.py +233 -0
  686. versatil-0.3.0/src/versatil/models/layers/free_transformer/__init__.py +0 -0
  687. versatil-0.3.0/src/versatil/models/layers/free_transformer/binary_mapper.py +161 -0
  688. versatil-0.3.0/src/versatil/models/layers/free_transformer/free_transformer.py +646 -0
  689. versatil-0.3.0/src/versatil/models/layers/frozen_batchnorm.py +52 -0
  690. versatil-0.3.0/src/versatil/models/layers/gated_linear_unit.py +74 -0
  691. versatil-0.3.0/src/versatil/models/layers/geometric_attention/__init__.py +13 -0
  692. versatil-0.3.0/src/versatil/models/layers/geometric_attention/depth_decay.py +107 -0
  693. versatil-0.3.0/src/versatil/models/layers/geometric_attention/geometric_attention.py +255 -0
  694. versatil-0.3.0/src/versatil/models/layers/geometric_attention/geometric_attention_encoder.py +131 -0
  695. versatil-0.3.0/src/versatil/models/layers/geometric_attention/geometric_bias.py +113 -0
  696. versatil-0.3.0/src/versatil/models/layers/geometric_attention/spatial_decay.py +119 -0
  697. versatil-0.3.0/src/versatil/models/layers/mlp.py +49 -0
  698. versatil-0.3.0/src/versatil/models/layers/modulation/__init__.py +0 -0
  699. versatil-0.3.0/src/versatil/models/layers/modulation/conditional_modulation.py +170 -0
  700. versatil-0.3.0/src/versatil/models/layers/modulation/conditional_residual_block.py +75 -0
  701. versatil-0.3.0/src/versatil/models/layers/modulation/film_residual_block.py +70 -0
  702. versatil-0.3.0/src/versatil/models/layers/normalization/__init__.py +6 -0
  703. versatil-0.3.0/src/versatil/models/layers/normalization/ada_norm.py +62 -0
  704. versatil-0.3.0/src/versatil/models/layers/normalization/constants.py +8 -0
  705. versatil-0.3.0/src/versatil/models/layers/normalization/factory.py +141 -0
  706. versatil-0.3.0/src/versatil/models/layers/normalization/rms_norm.py +61 -0
  707. versatil-0.3.0/src/versatil/models/layers/normalization/typedefs.py +6 -0
  708. versatil-0.3.0/src/versatil/models/layers/normalization/unconditioned_norm.py +25 -0
  709. versatil-0.3.0/src/versatil/models/layers/patch_embedding.py +185 -0
  710. versatil-0.3.0/src/versatil/models/layers/pooling/__init__.py +0 -0
  711. versatil-0.3.0/src/versatil/models/layers/pooling/attention_pooling.py +142 -0
  712. versatil-0.3.0/src/versatil/models/layers/pooling/pooling_head.py +301 -0
  713. versatil-0.3.0/src/versatil/models/layers/pooling/spatial_softmax.py +54 -0
  714. versatil-0.3.0/src/versatil/models/layers/positional_encoding/__init__.py +0 -0
  715. versatil-0.3.0/src/versatil/models/layers/positional_encoding/base.py +205 -0
  716. versatil-0.3.0/src/versatil/models/layers/positional_encoding/learned.py +101 -0
  717. versatil-0.3.0/src/versatil/models/layers/positional_encoding/rotary.py +223 -0
  718. versatil-0.3.0/src/versatil/models/layers/positional_encoding/sinusoidal.py +299 -0
  719. versatil-0.3.0/src/versatil/models/layers/transformer/__init__.py +1 -0
  720. versatil-0.3.0/src/versatil/models/layers/transformer/attention/__init__.py +1 -0
  721. versatil-0.3.0/src/versatil/models/layers/transformer/attention/cached_attention.py +314 -0
  722. versatil-0.3.0/src/versatil/models/layers/transformer/attention/joint_attention.py +193 -0
  723. versatil-0.3.0/src/versatil/models/layers/transformer/attention/joint_attention_base.py +206 -0
  724. versatil-0.3.0/src/versatil/models/layers/transformer/attention/precomputed_joint_attention.py +178 -0
  725. versatil-0.3.0/src/versatil/models/layers/transformer/attention/query_key_norm.py +54 -0
  726. versatil-0.3.0/src/versatil/models/layers/transformer/autoregressive_decoder.py +241 -0
  727. versatil-0.3.0/src/versatil/models/layers/transformer/bidirectional_decoder.py +185 -0
  728. versatil-0.3.0/src/versatil/models/layers/transformer/block/__init__.py +1 -0
  729. versatil-0.3.0/src/versatil/models/layers/transformer/block/base.py +37 -0
  730. versatil-0.3.0/src/versatil/models/layers/transformer/block/cross_attention.py +79 -0
  731. versatil-0.3.0/src/versatil/models/layers/transformer/block/dual_stream_attention.py +98 -0
  732. versatil-0.3.0/src/versatil/models/layers/transformer/block/dual_stream_base.py +30 -0
  733. versatil-0.3.0/src/versatil/models/layers/transformer/block/feedforward.py +87 -0
  734. versatil-0.3.0/src/versatil/models/layers/transformer/block/precomputed_cross_attention.py +79 -0
  735. versatil-0.3.0/src/versatil/models/layers/transformer/block/precomputed_dual_stream_attention.py +91 -0
  736. versatil-0.3.0/src/versatil/models/layers/transformer/block/self_attention.py +60 -0
  737. versatil-0.3.0/src/versatil/models/layers/transformer/cache/__init__.py +16 -0
  738. versatil-0.3.0/src/versatil/models/layers/transformer/cache/conditioning.py +78 -0
  739. versatil-0.3.0/src/versatil/models/layers/transformer/cache/generation.py +103 -0
  740. versatil-0.3.0/src/versatil/models/layers/transformer/conditional_bidirectional_decoder.py +220 -0
  741. versatil-0.3.0/src/versatil/models/layers/transformer/dual_stream_decoder.py +184 -0
  742. versatil-0.3.0/src/versatil/models/layers/transformer/encoder.py +131 -0
  743. versatil-0.3.0/src/versatil/models/layers/transformer/layer/__init__.py +1 -0
  744. versatil-0.3.0/src/versatil/models/layers/transformer/layer/decoder_layer.py +222 -0
  745. versatil-0.3.0/src/versatil/models/layers/transformer/layer/dual_stream_layer.py +163 -0
  746. versatil-0.3.0/src/versatil/models/layers/transformer/layer/encoder_layer.py +136 -0
  747. versatil-0.3.0/src/versatil/models/layers/transformer/layer/precomputed_dual_stream_layer.py +167 -0
  748. versatil-0.3.0/src/versatil/models/layers/transformer/layer/precomputed_kv_layer.py +146 -0
  749. versatil-0.3.0/src/versatil/models/layers/transformer/masking.py +103 -0
  750. versatil-0.3.0/src/versatil/models/layers/transformer/positional_encoding.py +117 -0
  751. versatil-0.3.0/src/versatil/models/layers/transformer/transformer_mixin.py +193 -0
  752. versatil-0.3.0/src/versatil/models/policy.py +507 -0
  753. versatil-0.3.0/src/versatil/post_training_compression/__init__.py +1 -0
  754. versatil-0.3.0/src/versatil/post_training_compression/compression_target.py +53 -0
  755. versatil-0.3.0/src/versatil/post_training_compression/compressor.py +315 -0
  756. versatil-0.3.0/src/versatil/post_training_compression/constants.py +61 -0
  757. versatil-0.3.0/src/versatil/post_training_compression/export.py +122 -0
  758. versatil-0.3.0/src/versatil/post_training_compression/preparation/__init__.py +25 -0
  759. versatil-0.3.0/src/versatil/post_training_compression/preparation/batchnorm.py +141 -0
  760. versatil-0.3.0/src/versatil/post_training_compression/preparation/fusion.py +84 -0
  761. versatil-0.3.0/src/versatil/post_training_compression/pruning/__init__.py +11 -0
  762. versatil-0.3.0/src/versatil/post_training_compression/pruning/base.py +38 -0
  763. versatil-0.3.0/src/versatil/post_training_compression/pruning/structured.py +98 -0
  764. versatil-0.3.0/src/versatil/post_training_compression/pruning/unstructured.py +81 -0
  765. versatil-0.3.0/src/versatil/post_training_compression/report.py +249 -0
  766. versatil-0.3.0/src/versatil/post_training_compression/serialization.py +156 -0
  767. versatil-0.3.0/src/versatil/quantization/__init__.py +13 -0
  768. versatil-0.3.0/src/versatil/quantization/backends/__init__.py +6 -0
  769. versatil-0.3.0/src/versatil/quantization/backends/base.py +62 -0
  770. versatil-0.3.0/src/versatil/quantization/backends/x86_inductor.py +125 -0
  771. versatil-0.3.0/src/versatil/quantization/calibration.py +58 -0
  772. versatil-0.3.0/src/versatil/quantization/constants.py +43 -0
  773. versatil-0.3.0/src/versatil/quantization/quantize.py +102 -0
  774. versatil-0.3.0/src/versatil/quantization/strategies.py +39 -0
  775. versatil-0.3.0/src/versatil/quantization/torch_patches.py +264 -0
  776. versatil-0.3.0/src/versatil/training/__init__.py +1 -0
  777. versatil-0.3.0/src/versatil/training/callbacks/__init__.py +5 -0
  778. versatil-0.3.0/src/versatil/training/callbacks/confusion_matrix.py +103 -0
  779. versatil-0.3.0/src/versatil/training/callbacks/early_stopping.py +14 -0
  780. versatil-0.3.0/src/versatil/training/callbacks/ema.py +206 -0
  781. versatil-0.3.0/src/versatil/training/callbacks/expert_usage.py +92 -0
  782. versatil-0.3.0/src/versatil/training/callbacks/gradient_norm.py +159 -0
  783. versatil-0.3.0/src/versatil/training/callbacks/latent_visualization.py +480 -0
  784. versatil-0.3.0/src/versatil/training/callbacks/prior_target_standardization.py +323 -0
  785. versatil-0.3.0/src/versatil/training/callbacks/provider.py +20 -0
  786. versatil-0.3.0/src/versatil/training/callbacks/reduce_lr_on_plateau.py +106 -0
  787. versatil-0.3.0/src/versatil/training/callbacks/synthetic_rollout.py +214 -0
  788. versatil-0.3.0/src/versatil/training/callbacks/training_stage.py +651 -0
  789. versatil-0.3.0/src/versatil/training/callbacks/wandb_figure.py +26 -0
  790. versatil-0.3.0/src/versatil/training/constants.py +104 -0
  791. versatil-0.3.0/src/versatil/training/lightning_policy.py +332 -0
  792. versatil-0.3.0/src/versatil/training/stage.py +106 -0
  793. versatil-0.3.0/src/versatil/validation.py +453 -0
  794. versatil-0.3.0/src/versatil/workspace.py +660 -0
  795. versatil-0.3.0/tests/CLAUDE.md +171 -0
  796. versatil-0.3.0/tests/__init__.py +0 -0
  797. versatil-0.3.0/tests/common/__init__.py +0 -0
  798. versatil-0.3.0/tests/common/test_dict_of_tensor_mixin.py +198 -0
  799. versatil-0.3.0/tests/common/test_logging.py +48 -0
  800. versatil-0.3.0/tests/common/test_module_attr_mixin.py +67 -0
  801. versatil-0.3.0/tests/common/test_omegaconf_ops.py +81 -0
  802. versatil-0.3.0/tests/common/test_set_cache_dir.py +56 -0
  803. versatil-0.3.0/tests/common/test_tensor_ops.py +108 -0
  804. versatil-0.3.0/tests/configs/__init__.py +0 -0
  805. versatil-0.3.0/tests/configs/data/__init__.py +0 -0
  806. versatil-0.3.0/tests/configs/data/raw/__init__.py +0 -0
  807. versatil-0.3.0/tests/configs/data/raw/test_schema.py +54 -0
  808. versatil-0.3.0/tests/configs/data/raw/test_zarr_meta.py +46 -0
  809. versatil-0.3.0/tests/configs/data/test_augmentation.py +234 -0
  810. versatil-0.3.0/tests/configs/data/test_dataloader.py +134 -0
  811. versatil-0.3.0/tests/configs/data/test_metadata.py +270 -0
  812. versatil-0.3.0/tests/configs/data/test_tokenizer.py +87 -0
  813. versatil-0.3.0/tests/configs/decoding/__init__.py +0 -0
  814. versatil-0.3.0/tests/configs/decoding/test_action_heads.py +155 -0
  815. versatil-0.3.0/tests/configs/decoding/test_algorithm.py +211 -0
  816. versatil-0.3.0/tests/configs/decoding/test_decoders.py +431 -0
  817. versatil-0.3.0/tests/configs/decoding/test_latent.py +356 -0
  818. versatil-0.3.0/tests/configs/encoding/__init__.py +0 -0
  819. versatil-0.3.0/tests/configs/encoding/test_encoder.py +371 -0
  820. versatil-0.3.0/tests/configs/encoding/test_fusion.py +136 -0
  821. versatil-0.3.0/tests/configs/encoding/test_pipeline.py +57 -0
  822. versatil-0.3.0/tests/configs/test_experiment.py +71 -0
  823. versatil-0.3.0/tests/configs/test_inference.py +32 -0
  824. versatil-0.3.0/tests/configs/test_loss.py +461 -0
  825. versatil-0.3.0/tests/configs/test_main.py +52 -0
  826. versatil-0.3.0/tests/configs/test_policy.py +120 -0
  827. versatil-0.3.0/tests/configs/test_post_training_compression.py +99 -0
  828. versatil-0.3.0/tests/configs/test_quantization.py +74 -0
  829. versatil-0.3.0/tests/configs/test_resolvers.py +284 -0
  830. versatil-0.3.0/tests/configs/test_task.py +155 -0
  831. versatil-0.3.0/tests/configs/test_training.py +368 -0
  832. versatil-0.3.0/tests/conftest.py +456 -0
  833. versatil-0.3.0/tests/data/__init__.py +0 -0
  834. versatil-0.3.0/tests/data/conftest.py +462 -0
  835. versatil-0.3.0/tests/data/normalization/__init__.py +0 -0
  836. versatil-0.3.0/tests/data/normalization/test_image_normalizer.py +437 -0
  837. versatil-0.3.0/tests/data/normalization/test_normalizer.py +889 -0
  838. versatil-0.3.0/tests/data/preprocessing/__init__.py +0 -0
  839. versatil-0.3.0/tests/data/preprocessing/conftest.py +78 -0
  840. versatil-0.3.0/tests/data/preprocessing/test_codecs.py +337 -0
  841. versatil-0.3.0/tests/data/preprocessing/test_create_zarr_arrays.py +410 -0
  842. versatil-0.3.0/tests/data/preprocessing/test_create_zarr_from_csv.py +232 -0
  843. versatil-0.3.0/tests/data/preprocessing/test_create_zarr_from_hdf5.py +304 -0
  844. versatil-0.3.0/tests/data/preprocessing/test_create_zarr_from_lerobot.py +179 -0
  845. versatil-0.3.0/tests/data/preprocessing/test_create_zarr_from_synthetic.py +450 -0
  846. versatil-0.3.0/tests/data/preprocessing/test_replay_buffer.py +1180 -0
  847. versatil-0.3.0/tests/data/preprocessing/test_sampler.py +446 -0
  848. versatil-0.3.0/tests/data/processing/__init__.py +0 -0
  849. versatil-0.3.0/tests/data/processing/test_action_processor.py +849 -0
  850. versatil-0.3.0/tests/data/processing/test_image_processor.py +335 -0
  851. versatil-0.3.0/tests/data/processing/test_transform.py +831 -0
  852. versatil-0.3.0/tests/data/processing/test_transform_builder.py +1151 -0
  853. versatil-0.3.0/tests/data/raw/__init__.py +0 -0
  854. versatil-0.3.0/tests/data/raw/conftest.py +69 -0
  855. versatil-0.3.0/tests/data/raw/schemas/__init__.py +0 -0
  856. versatil-0.3.0/tests/data/raw/schemas/custom/__init__.py +0 -0
  857. versatil-0.3.0/tests/data/raw/schemas/custom/test_libero.py +923 -0
  858. versatil-0.3.0/tests/data/raw/schemas/custom/test_synthetic.py +318 -0
  859. versatil-0.3.0/tests/data/raw/schemas/custom/test_tso.py +1237 -0
  860. versatil-0.3.0/tests/data/raw/schemas/test_base.py +435 -0
  861. versatil-0.3.0/tests/data/raw/schemas/test_csv.py +148 -0
  862. versatil-0.3.0/tests/data/raw/schemas/test_hdf5.py +127 -0
  863. versatil-0.3.0/tests/data/raw/schemas/test_lerobot.py +1243 -0
  864. versatil-0.3.0/tests/data/raw/test_zarr_meta.py +737 -0
  865. versatil-0.3.0/tests/data/synthetic/__init__.py +1 -0
  866. versatil-0.3.0/tests/data/synthetic/conftest.py +60 -0
  867. versatil-0.3.0/tests/data/synthetic/test_generators.py +1097 -0
  868. versatil-0.3.0/tests/data/synthetic/test_renderer.py +473 -0
  869. versatil-0.3.0/tests/data/synthetic/test_task_layout.py +249 -0
  870. versatil-0.3.0/tests/data/synthetic/test_visualization.py +630 -0
  871. versatil-0.3.0/tests/data/test_dataloader.py +847 -0
  872. versatil-0.3.0/tests/data/test_episodic_dataset.py +1105 -0
  873. versatil-0.3.0/tests/data/test_metadata.py +1065 -0
  874. versatil-0.3.0/tests/data/test_sample_builder.py +630 -0
  875. versatil-0.3.0/tests/data/test_task.py +943 -0
  876. versatil-0.3.0/tests/data/tokenization/__init__.py +0 -0
  877. versatil-0.3.0/tests/data/tokenization/conftest.py +82 -0
  878. versatil-0.3.0/tests/data/tokenization/test_action_tokenizer.py +1210 -0
  879. versatil-0.3.0/tests/data/tokenization/test_binning_tokenizer.py +331 -0
  880. versatil-0.3.0/tests/data/tokenization/test_fast.py +242 -0
  881. versatil-0.3.0/tests/data/tokenization/test_observation_tokenizer.py +1105 -0
  882. versatil-0.3.0/tests/data/tokenization/test_tokenizer.py +366 -0
  883. versatil-0.3.0/tests/endpoints/__init__.py +1 -0
  884. versatil-0.3.0/tests/endpoints/conftest.py +776 -0
  885. versatil-0.3.0/tests/endpoints/test_end_to_end.py +207 -0
  886. versatil-0.3.0/tests/endpoints/test_post_training_compress.py +682 -0
  887. versatil-0.3.0/tests/endpoints/test_test.py +130 -0
  888. versatil-0.3.0/tests/endpoints/test_train.py +73 -0
  889. versatil-0.3.0/tests/explain/__init__.py +0 -0
  890. versatil-0.3.0/tests/hydra_configs/__init__.py +1 -0
  891. versatil-0.3.0/tests/hydra_configs/test_yaml_resolution.py +351 -0
  892. versatil-0.3.0/tests/inference/__init__.py +1 -0
  893. versatil-0.3.0/tests/inference/test_action_postprocessor.py +1049 -0
  894. versatil-0.3.0/tests/inference/test_compressed_policy_loader.py +845 -0
  895. versatil-0.3.0/tests/inference/test_inference_client.py +1888 -0
  896. versatil-0.3.0/tests/inference/test_integration.py +624 -0
  897. versatil-0.3.0/tests/inference/test_observation_buffer.py +217 -0
  898. versatil-0.3.0/tests/inference/test_observation_preprocessor.py +849 -0
  899. versatil-0.3.0/tests/inference/test_policy_loader.py +847 -0
  900. versatil-0.3.0/tests/inference/test_socket_transport.py +327 -0
  901. versatil-0.3.0/tests/inference/test_synthetic_rollout.py +985 -0
  902. versatil-0.3.0/tests/inference/test_temporal_aggregation.py +384 -0
  903. versatil-0.3.0/tests/metrics/__init__.py +1 -0
  904. versatil-0.3.0/tests/metrics/conftest.py +19 -0
  905. versatil-0.3.0/tests/metrics/test_accumulators.py +608 -0
  906. versatil-0.3.0/tests/metrics/test_base.py +390 -0
  907. versatil-0.3.0/tests/metrics/test_components.py +3236 -0
  908. versatil-0.3.0/tests/metrics/test_composite.py +327 -0
  909. versatil-0.3.0/tests/metrics/test_kernels.py +469 -0
  910. versatil-0.3.0/tests/metrics/test_ot_loss.py +764 -0
  911. versatil-0.3.0/tests/metrics/test_ot_loss_integration.py +331 -0
  912. versatil-0.3.0/tests/metrics/test_synthetic_metrics.py +695 -0
  913. versatil-0.3.0/tests/models/__init__.py +0 -0
  914. versatil-0.3.0/tests/models/conftest.py +330 -0
  915. versatil-0.3.0/tests/models/decoding/__init__.py +0 -0
  916. versatil-0.3.0/tests/models/decoding/action_heads/__init__.py +0 -0
  917. versatil-0.3.0/tests/models/decoding/action_heads/test_base.py +143 -0
  918. versatil-0.3.0/tests/models/decoding/action_heads/test_blocks.py +247 -0
  919. versatil-0.3.0/tests/models/decoding/action_heads/test_gaussian.py +114 -0
  920. versatil-0.3.0/tests/models/decoding/action_heads/test_moe.py +281 -0
  921. versatil-0.3.0/tests/models/decoding/action_heads/test_single_output.py +49 -0
  922. versatil-0.3.0/tests/models/decoding/algorithms/__init__.py +0 -0
  923. versatil-0.3.0/tests/models/decoding/algorithms/test_base.py +18 -0
  924. versatil-0.3.0/tests/models/decoding/algorithms/test_behavior_cloning.py +107 -0
  925. versatil-0.3.0/tests/models/decoding/algorithms/test_diffusion.py +482 -0
  926. versatil-0.3.0/tests/models/decoding/algorithms/test_flow_matching.py +535 -0
  927. versatil-0.3.0/tests/models/decoding/algorithms/test_variational.py +976 -0
  928. versatil-0.3.0/tests/models/decoding/conftest.py +275 -0
  929. versatil-0.3.0/tests/models/decoding/decoders/__init__.py +0 -0
  930. versatil-0.3.0/tests/models/decoding/decoders/conftest.py +135 -0
  931. versatil-0.3.0/tests/models/decoding/decoders/factory/__init__.py +7 -0
  932. versatil-0.3.0/tests/models/decoding/decoders/factory/test_act.py +398 -0
  933. versatil-0.3.0/tests/models/decoding/decoders/factory/test_action_transformer.py +341 -0
  934. versatil-0.3.0/tests/models/decoding/decoders/factory/test_conditional_action_unet.py +392 -0
  935. versatil-0.3.0/tests/models/decoding/decoders/factory/test_diffusion_action_transformer.py +637 -0
  936. versatil-0.3.0/tests/models/decoding/decoders/factory/test_discrete_detr_action_transformer.py +436 -0
  937. versatil-0.3.0/tests/models/decoding/decoders/factory/test_dit_block_action_transformer.py +406 -0
  938. versatil-0.3.0/tests/models/decoding/decoders/factory/test_free_action_transformer.py +522 -0
  939. versatil-0.3.0/tests/models/decoding/decoders/factory/test_gpt_action_transformer.py +835 -0
  940. versatil-0.3.0/tests/models/decoding/decoders/factory/test_lact.py +362 -0
  941. versatil-0.3.0/tests/models/decoding/decoders/factory/test_mode_act.py +1301 -0
  942. versatil-0.3.0/tests/models/decoding/decoders/factory/test_moe_free_action_transformer.py +549 -0
  943. versatil-0.3.0/tests/models/decoding/decoders/factory/test_phase_act.py +374 -0
  944. versatil-0.3.0/tests/models/decoding/decoders/factory/test_pi0.py +815 -0
  945. versatil-0.3.0/tests/models/decoding/decoders/factory/test_smolvla.py +1320 -0
  946. versatil-0.3.0/tests/models/decoding/decoders/test_base.py +709 -0
  947. versatil-0.3.0/tests/models/decoding/decoders/test_moe.py +533 -0
  948. versatil-0.3.0/tests/models/decoding/decoders/test_timestep_conditioning.py +180 -0
  949. versatil-0.3.0/tests/models/decoding/latent/__init__.py +0 -0
  950. versatil-0.3.0/tests/models/decoding/latent/conftest.py +69 -0
  951. versatil-0.3.0/tests/models/decoding/latent/posterior/__init__.py +0 -0
  952. versatil-0.3.0/tests/models/decoding/latent/posterior/test_transformer_encoder.py +470 -0
  953. versatil-0.3.0/tests/models/decoding/latent/posterior/test_vq_encoder.py +465 -0
  954. versatil-0.3.0/tests/models/decoding/latent/prior/__init__.py +0 -0
  955. versatil-0.3.0/tests/models/decoding/latent/prior/test_codebook_prior.py +493 -0
  956. versatil-0.3.0/tests/models/decoding/latent/prior/test_dit_prior.py +1028 -0
  957. versatil-0.3.0/tests/models/decoding/latent/prior/test_gaussian_prior.py +280 -0
  958. versatil-0.3.0/tests/models/decoding/latent/prior/test_latent_standardizer.py +199 -0
  959. versatil-0.3.0/tests/models/decoding/latent/prior/test_prior_transformer_encoder.py +412 -0
  960. versatil-0.3.0/tests/models/decoding/latent/prior/test_state_condition_pool.py +124 -0
  961. versatil-0.3.0/tests/models/decoding/latent/prior/test_uniform_codebook_prior.py +337 -0
  962. versatil-0.3.0/tests/models/decoding/latent/prior/test_vamp_prior.py +923 -0
  963. versatil-0.3.0/tests/models/decoding/latent/test_reparametrize.py +113 -0
  964. versatil-0.3.0/tests/models/decoding/latent/vq/__init__.py +0 -0
  965. versatil-0.3.0/tests/models/decoding/latent/vq/conftest.py +22 -0
  966. versatil-0.3.0/tests/models/decoding/latent/vq/test_euclidean_codebook.py +399 -0
  967. versatil-0.3.0/tests/models/decoding/latent/vq/test_residual_vq.py +322 -0
  968. versatil-0.3.0/tests/models/decoding/latent/vq/test_vector_quantize.py +188 -0
  969. versatil-0.3.0/tests/models/decoding/test_action_masking.py +341 -0
  970. versatil-0.3.0/tests/models/decoding/test_mixture_of_experts.py +565 -0
  971. versatil-0.3.0/tests/models/decoding/test_transformer_input_builder.py +1194 -0
  972. versatil-0.3.0/tests/models/decoding/test_unet_input_builder.py +346 -0
  973. versatil-0.3.0/tests/models/encoding/__init__.py +0 -0
  974. versatil-0.3.0/tests/models/encoding/conftest.py +196 -0
  975. versatil-0.3.0/tests/models/encoding/encoders/__init__.py +0 -0
  976. versatil-0.3.0/tests/models/encoding/encoders/conftest.py +92 -0
  977. versatil-0.3.0/tests/models/encoding/encoders/cross_modal/__init__.py +0 -0
  978. versatil-0.3.0/tests/models/encoding/encoders/cross_modal/rgbd/__init__.py +1 -0
  979. versatil-0.3.0/tests/models/encoding/encoders/cross_modal/rgbd/test_dformerv2.py +873 -0
  980. versatil-0.3.0/tests/models/encoding/encoders/cross_modal/rgbd/test_geometric_rgbd.py +469 -0
  981. versatil-0.3.0/tests/models/encoding/encoders/cross_modal/vision_language/__init__.py +1 -0
  982. versatil-0.3.0/tests/models/encoding/encoders/cross_modal/vision_language/conftest.py +137 -0
  983. versatil-0.3.0/tests/models/encoding/encoders/cross_modal/vision_language/test_generative_vlm.py +514 -0
  984. versatil-0.3.0/tests/models/encoding/encoders/cross_modal/vision_language/test_paligemma.py +621 -0
  985. versatil-0.3.0/tests/models/encoding/encoders/cross_modal/vision_language/test_smolvlm.py +665 -0
  986. versatil-0.3.0/tests/models/encoding/encoders/cross_modal/vision_language/test_two_tower_vlm.py +600 -0
  987. versatil-0.3.0/tests/models/encoding/encoders/depth/__init__.py +0 -0
  988. versatil-0.3.0/tests/models/encoding/encoders/depth/conftest.py +1 -0
  989. versatil-0.3.0/tests/models/encoding/encoders/depth/test_spatial.py +695 -0
  990. versatil-0.3.0/tests/models/encoding/encoders/language/__init__.py +0 -0
  991. versatil-0.3.0/tests/models/encoding/encoders/language/test_language.py +938 -0
  992. versatil-0.3.0/tests/models/encoding/encoders/proprioceptive/__init__.py +0 -0
  993. versatil-0.3.0/tests/models/encoding/encoders/proprioceptive/test_base.py +351 -0
  994. versatil-0.3.0/tests/models/encoding/encoders/rgb/__init__.py +0 -0
  995. versatil-0.3.0/tests/models/encoding/encoders/rgb/test_conditional_cnn.py +817 -0
  996. versatil-0.3.0/tests/models/encoding/encoders/rgb/test_flat.py +870 -0
  997. versatil-0.3.0/tests/models/encoding/encoders/rgb/test_spatial.py +737 -0
  998. versatil-0.3.0/tests/models/encoding/encoders/test_base.py +464 -0
  999. versatil-0.3.0/tests/models/encoding/encoders/test_conditional.py +167 -0
  1000. versatil-0.3.0/tests/models/encoding/encoders/test_image_mixin.py +255 -0
  1001. versatil-0.3.0/tests/models/encoding/encoders/test_language_mixin.py +290 -0
  1002. versatil-0.3.0/tests/models/encoding/encoders/test_unconditional.py +146 -0
  1003. versatil-0.3.0/tests/models/encoding/fusion/__init__.py +0 -0
  1004. versatil-0.3.0/tests/models/encoding/fusion/test_attention.py +327 -0
  1005. versatil-0.3.0/tests/models/encoding/fusion/test_base.py +404 -0
  1006. versatil-0.3.0/tests/models/encoding/fusion/test_concat.py +196 -0
  1007. versatil-0.3.0/tests/models/encoding/fusion/test_mlp.py +224 -0
  1008. versatil-0.3.0/tests/models/encoding/test_pipeline.py +1312 -0
  1009. versatil-0.3.0/tests/models/layers/__init__.py +0 -0
  1010. versatil-0.3.0/tests/models/layers/conftest.py +183 -0
  1011. versatil-0.3.0/tests/models/layers/convolution/__init__.py +0 -0
  1012. versatil-0.3.0/tests/models/layers/convolution/test_conv1d.py +253 -0
  1013. versatil-0.3.0/tests/models/layers/convolution/test_depthwise_conv2d.py +146 -0
  1014. versatil-0.3.0/tests/models/layers/denoising/__init__.py +0 -0
  1015. versatil-0.3.0/tests/models/layers/denoising/conftest.py +136 -0
  1016. versatil-0.3.0/tests/models/layers/denoising/test_conditional_flow_matching.py +162 -0
  1017. versatil-0.3.0/tests/models/layers/denoising/test_diffusion_process.py +505 -0
  1018. versatil-0.3.0/tests/models/layers/denoising/test_ode_solvers.py +591 -0
  1019. versatil-0.3.0/tests/models/layers/denoising/test_timestep_sampling.py +491 -0
  1020. versatil-0.3.0/tests/models/layers/detr_transformer/__init__.py +0 -0
  1021. versatil-0.3.0/tests/models/layers/detr_transformer/conftest.py +180 -0
  1022. versatil-0.3.0/tests/models/layers/detr_transformer/test_attention.py +481 -0
  1023. versatil-0.3.0/tests/models/layers/detr_transformer/test_transformer.py +550 -0
  1024. versatil-0.3.0/tests/models/layers/detr_transformer/test_transformer_decoder.py +696 -0
  1025. versatil-0.3.0/tests/models/layers/detr_transformer/test_transformer_encoder.py +465 -0
  1026. versatil-0.3.0/tests/models/layers/diffusion_transformer/__init__.py +0 -0
  1027. versatil-0.3.0/tests/models/layers/diffusion_transformer/conftest.py +22 -0
  1028. versatil-0.3.0/tests/models/layers/diffusion_transformer/test_cross_attention_dit.py +394 -0
  1029. versatil-0.3.0/tests/models/layers/diffusion_transformer/test_dit_block_transformer.py +345 -0
  1030. versatil-0.3.0/tests/models/layers/diffusion_transformer/test_final_prediction_layer.py +185 -0
  1031. versatil-0.3.0/tests/models/layers/diffusion_transformer/test_mmdit_transformer.py +461 -0
  1032. versatil-0.3.0/tests/models/layers/free_transformer/__init__.py +1 -0
  1033. versatil-0.3.0/tests/models/layers/free_transformer/conftest.py +159 -0
  1034. versatil-0.3.0/tests/models/layers/free_transformer/test_binary_mapper.py +484 -0
  1035. versatil-0.3.0/tests/models/layers/free_transformer/test_free_transformer.py +1203 -0
  1036. versatil-0.3.0/tests/models/layers/geometric_attention/__init__.py +0 -0
  1037. versatil-0.3.0/tests/models/layers/geometric_attention/conftest.py +147 -0
  1038. versatil-0.3.0/tests/models/layers/geometric_attention/test_depth_decay.py +449 -0
  1039. versatil-0.3.0/tests/models/layers/geometric_attention/test_geometric_attention.py +336 -0
  1040. versatil-0.3.0/tests/models/layers/geometric_attention/test_geometric_attention_encoder.py +345 -0
  1041. versatil-0.3.0/tests/models/layers/geometric_attention/test_geometric_bias.py +240 -0
  1042. versatil-0.3.0/tests/models/layers/geometric_attention/test_spatial_decay.py +297 -0
  1043. versatil-0.3.0/tests/models/layers/modulation/__init__.py +0 -0
  1044. versatil-0.3.0/tests/models/layers/modulation/test_conditional_modulation.py +492 -0
  1045. versatil-0.3.0/tests/models/layers/modulation/test_conditional_residual_block.py +234 -0
  1046. versatil-0.3.0/tests/models/layers/modulation/test_film_residual_block.py +206 -0
  1047. versatil-0.3.0/tests/models/layers/normalization/__init__.py +0 -0
  1048. versatil-0.3.0/tests/models/layers/normalization/test_ada_norm.py +180 -0
  1049. versatil-0.3.0/tests/models/layers/normalization/test_factory.py +324 -0
  1050. versatil-0.3.0/tests/models/layers/normalization/test_frozen_batchnorm.py +165 -0
  1051. versatil-0.3.0/tests/models/layers/normalization/test_rms_norm.py +170 -0
  1052. versatil-0.3.0/tests/models/layers/normalization/test_unconditioned_norm.py +101 -0
  1053. versatil-0.3.0/tests/models/layers/pooling/__init__.py +0 -0
  1054. versatil-0.3.0/tests/models/layers/pooling/test_attention_pooling.py +274 -0
  1055. versatil-0.3.0/tests/models/layers/pooling/test_pooling_head.py +451 -0
  1056. versatil-0.3.0/tests/models/layers/pooling/test_spatial_softmax.py +206 -0
  1057. versatil-0.3.0/tests/models/layers/positional_encoding/__init__.py +0 -0
  1058. versatil-0.3.0/tests/models/layers/positional_encoding/conftest.py +55 -0
  1059. versatil-0.3.0/tests/models/layers/positional_encoding/test_base.py +363 -0
  1060. versatil-0.3.0/tests/models/layers/positional_encoding/test_learned.py +368 -0
  1061. versatil-0.3.0/tests/models/layers/positional_encoding/test_rotary.py +455 -0
  1062. versatil-0.3.0/tests/models/layers/positional_encoding/test_sinusoidal.py +690 -0
  1063. versatil-0.3.0/tests/models/layers/test_activation.py +81 -0
  1064. versatil-0.3.0/tests/models/layers/test_conditional_unet.py +742 -0
  1065. versatil-0.3.0/tests/models/layers/test_convert_layers.py +284 -0
  1066. versatil-0.3.0/tests/models/layers/test_drop_path.py +130 -0
  1067. versatil-0.3.0/tests/models/layers/test_dynamic_feature_embedding.py +156 -0
  1068. versatil-0.3.0/tests/models/layers/test_feature_projection.py +675 -0
  1069. versatil-0.3.0/tests/models/layers/test_gated_linear_unit.py +164 -0
  1070. versatil-0.3.0/tests/models/layers/test_mlp.py +243 -0
  1071. versatil-0.3.0/tests/models/layers/test_patch_embedding.py +303 -0
  1072. versatil-0.3.0/tests/models/layers/transformer/__init__.py +0 -0
  1073. versatil-0.3.0/tests/models/layers/transformer/attention/__init__.py +0 -0
  1074. versatil-0.3.0/tests/models/layers/transformer/attention/test_cached_attention.py +607 -0
  1075. versatil-0.3.0/tests/models/layers/transformer/attention/test_joint_attention.py +351 -0
  1076. versatil-0.3.0/tests/models/layers/transformer/attention/test_joint_attention_base.py +300 -0
  1077. versatil-0.3.0/tests/models/layers/transformer/attention/test_precomputed_joint_attention.py +324 -0
  1078. versatil-0.3.0/tests/models/layers/transformer/attention/test_query_key_norm.py +82 -0
  1079. versatil-0.3.0/tests/models/layers/transformer/blocks/__init__.py +1 -0
  1080. versatil-0.3.0/tests/models/layers/transformer/blocks/conftest.py +60 -0
  1081. versatil-0.3.0/tests/models/layers/transformer/blocks/test_base.py +47 -0
  1082. versatil-0.3.0/tests/models/layers/transformer/blocks/test_cross_attention.py +280 -0
  1083. versatil-0.3.0/tests/models/layers/transformer/blocks/test_dual_stream_attention.py +188 -0
  1084. versatil-0.3.0/tests/models/layers/transformer/blocks/test_feedforward.py +140 -0
  1085. versatil-0.3.0/tests/models/layers/transformer/blocks/test_precomputed_cross_attention.py +185 -0
  1086. versatil-0.3.0/tests/models/layers/transformer/blocks/test_precomputed_dual_stream_attention.py +163 -0
  1087. versatil-0.3.0/tests/models/layers/transformer/blocks/test_self_attention.py +175 -0
  1088. versatil-0.3.0/tests/models/layers/transformer/cache/__init__.py +0 -0
  1089. versatil-0.3.0/tests/models/layers/transformer/cache/test_conditioning.py +74 -0
  1090. versatil-0.3.0/tests/models/layers/transformer/cache/test_generation.py +173 -0
  1091. versatil-0.3.0/tests/models/layers/transformer/conftest.py +249 -0
  1092. versatil-0.3.0/tests/models/layers/transformer/layer/__init__.py +0 -0
  1093. versatil-0.3.0/tests/models/layers/transformer/layer/test_decoder_layer.py +578 -0
  1094. versatil-0.3.0/tests/models/layers/transformer/layer/test_dual_stream_layer.py +218 -0
  1095. versatil-0.3.0/tests/models/layers/transformer/layer/test_encoder_layer.py +331 -0
  1096. versatil-0.3.0/tests/models/layers/transformer/layer/test_precomputed_cross_attention_layer.py +145 -0
  1097. versatil-0.3.0/tests/models/layers/transformer/layer/test_precomputed_dual_stream_layer.py +225 -0
  1098. versatil-0.3.0/tests/models/layers/transformer/test_autoregressive_decoder.py +622 -0
  1099. versatil-0.3.0/tests/models/layers/transformer/test_bidirectional_decoder.py +499 -0
  1100. versatil-0.3.0/tests/models/layers/transformer/test_conditional_bidirectional_decoder.py +956 -0
  1101. versatil-0.3.0/tests/models/layers/transformer/test_dual_stream_decoder.py +653 -0
  1102. versatil-0.3.0/tests/models/layers/transformer/test_encoder.py +283 -0
  1103. versatil-0.3.0/tests/models/layers/transformer/test_masking.py +191 -0
  1104. versatil-0.3.0/tests/models/layers/transformer/test_positional_encoding.py +229 -0
  1105. versatil-0.3.0/tests/models/layers/transformer/test_transformer_mixin.py +449 -0
  1106. versatil-0.3.0/tests/models/test_exportable_policy.py +350 -0
  1107. versatil-0.3.0/tests/models/test_feature_meta.py +78 -0
  1108. versatil-0.3.0/tests/models/test_policy.py +1091 -0
  1109. versatil-0.3.0/tests/post_training_compression/__init__.py +1 -0
  1110. versatil-0.3.0/tests/post_training_compression/conftest.py +161 -0
  1111. versatil-0.3.0/tests/post_training_compression/preparation/__init__.py +1 -0
  1112. versatil-0.3.0/tests/post_training_compression/preparation/conftest.py +97 -0
  1113. versatil-0.3.0/tests/post_training_compression/preparation/test_batchnorm.py +365 -0
  1114. versatil-0.3.0/tests/post_training_compression/preparation/test_fusion.py +359 -0
  1115. versatil-0.3.0/tests/post_training_compression/pruning/__init__.py +1 -0
  1116. versatil-0.3.0/tests/post_training_compression/pruning/test_base_pruner.py +99 -0
  1117. versatil-0.3.0/tests/post_training_compression/pruning/test_structured.py +245 -0
  1118. versatil-0.3.0/tests/post_training_compression/pruning/test_unstructured.py +212 -0
  1119. versatil-0.3.0/tests/post_training_compression/test_compression_target.py +105 -0
  1120. versatil-0.3.0/tests/post_training_compression/test_compressor.py +606 -0
  1121. versatil-0.3.0/tests/post_training_compression/test_export.py +378 -0
  1122. versatil-0.3.0/tests/post_training_compression/test_report.py +641 -0
  1123. versatil-0.3.0/tests/post_training_compression/test_serialization.py +298 -0
  1124. versatil-0.3.0/tests/quantization/__init__.py +1 -0
  1125. versatil-0.3.0/tests/quantization/backends/__init__.py +1 -0
  1126. versatil-0.3.0/tests/quantization/backends/test_x86_inductor.py +173 -0
  1127. versatil-0.3.0/tests/quantization/conftest.py +36 -0
  1128. versatil-0.3.0/tests/quantization/test_calibration.py +301 -0
  1129. versatil-0.3.0/tests/quantization/test_integration.py +531 -0
  1130. versatil-0.3.0/tests/quantization/test_quantize.py +326 -0
  1131. versatil-0.3.0/tests/quantization/test_strategies.py +34 -0
  1132. versatil-0.3.0/tests/quantization/test_torch_patches.py +395 -0
  1133. versatil-0.3.0/tests/test_validation.py +1874 -0
  1134. versatil-0.3.0/tests/test_workspace.py +2122 -0
  1135. versatil-0.3.0/tests/training/__init__.py +0 -0
  1136. versatil-0.3.0/tests/training/conftest.py +230 -0
  1137. versatil-0.3.0/tests/training/test_callbacks/__init__.py +0 -0
  1138. versatil-0.3.0/tests/training/test_callbacks/conftest.py +100 -0
  1139. versatil-0.3.0/tests/training/test_callbacks/test_confusion_matrix.py +166 -0
  1140. versatil-0.3.0/tests/training/test_callbacks/test_early_stopping.py +32 -0
  1141. versatil-0.3.0/tests/training/test_callbacks/test_ema.py +648 -0
  1142. versatil-0.3.0/tests/training/test_callbacks/test_expert_usage.py +164 -0
  1143. versatil-0.3.0/tests/training/test_callbacks/test_gradient_norm.py +213 -0
  1144. versatil-0.3.0/tests/training/test_callbacks/test_latent_visualization.py +829 -0
  1145. versatil-0.3.0/tests/training/test_callbacks/test_prior_target_standardization.py +334 -0
  1146. versatil-0.3.0/tests/training/test_callbacks/test_provider.py +58 -0
  1147. versatil-0.3.0/tests/training/test_callbacks/test_reduce_lr_on_plateau.py +143 -0
  1148. versatil-0.3.0/tests/training/test_callbacks/test_synthetic_rollout.py +594 -0
  1149. versatil-0.3.0/tests/training/test_callbacks/test_training_stage.py +1499 -0
  1150. versatil-0.3.0/tests/training/test_callbacks/test_wandb_figure.py +22 -0
  1151. versatil-0.3.0/tests/training/test_lightning_policy.py +932 -0
  1152. versatil-0.3.0/tests/training/test_stage.py +124 -0
@@ -0,0 +1,28 @@
1
+ # VersatIL Environment Configuration
2
+ # Copy to .env and customize: cp .env.example .env
3
+
4
+ # Storage paths
5
+ VERSATIL_CHECKPOINT_DIR=/path/to/checkpoints
6
+ VERSATIL_ZARR_DIR=/path/to/zarr
7
+ VERSATIL_CACHE_DIR=/path/to/cache
8
+
9
+ # Pretrained models
10
+ VERSATIL_PRETRAINED_DIR=/path/to/pretrained_models
11
+
12
+ # Raw data paths
13
+ VERSATIL_BOWEL_RETRACTION_DIR=/path/to/bowel_retraction
14
+ VERSATIL_LIBERO_HDF5_DIR=/path/to/libero/datasets
15
+ VERSATIL_LIBERO_LEROBOT_DIR=/path/to/libero_lerobot
16
+ VERSATIL_LIBERO_PLUS_LEROBOT_DIR=/path/to/libero_plus_lerobot
17
+ VERSATIL_METAWORLD_LEROBOT_DIR=/path/to/metaworld_lerobot
18
+ VERSATIL_PUSHT_LEROBOT_DIR=/path/to/pusht_lerobot
19
+ VERSATIL_BLOCK_PUSHING_LEROBOT_DIR=/path/to/block_pushing_lerobot_rel
20
+ VERSATIL_BLOCK_PUSHING_LEROBOT_ABS_DIR=/path/to/block_pushing_lerobot_abs
21
+ VERSATIL_KITCHEN_LEROBOT_DIR=/path/to/kitchen_lerobot
22
+ VERSATIL_MULTIMODAL_PEG_TRANSFER_DIR=/path/to/multimodal_peg_transfer
23
+ VERSATIL_ANT_LEROBOT_DIR=/path/to/ant_lerobot
24
+ VERSATIL_UR3_LEROBOT_DIR=/path/to/ur3_lerobot
25
+
26
+ # Weights & Biases (optional)
27
+ WANDB_PROJECT=versatil
28
+ WANDB_ENTITY=your-team
@@ -0,0 +1,126 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ pull_request:
7
+ branches: [main]
8
+
9
+ env:
10
+ CUDA_VISIBLE_DEVICES: ""
11
+ HF_HOME: ~/.cache/huggingface
12
+ TORCH_HOME: ~/.cache/torch
13
+
14
+ jobs:
15
+ ruff-format:
16
+ runs-on: ubuntu-latest
17
+ steps:
18
+ - uses: actions/checkout@v4
19
+ - uses: astral-sh/ruff-action@v3
20
+ with:
21
+ version: "0.15.6"
22
+ args: format --check src/ tests/
23
+
24
+ ruff-lint:
25
+ runs-on: ubuntu-latest
26
+ steps:
27
+ - uses: actions/checkout@v4
28
+ - uses: astral-sh/ruff-action@v3
29
+ with:
30
+ version: "0.15.6"
31
+ args: check src/ tests/
32
+
33
+ tests:
34
+ runs-on: ubuntu-latest
35
+ needs: [ruff-format, ruff-lint]
36
+ steps:
37
+ - uses: actions/checkout@v4
38
+ - uses: actions/setup-python@v5
39
+ with:
40
+ python-version: "3.14"
41
+ - uses: astral-sh/setup-uv@v5
42
+ - name: Cache HuggingFace models
43
+ uses: actions/cache@v4
44
+ with:
45
+ path: ~/.cache/huggingface
46
+ key: hf-models-${{ hashFiles('pyproject.toml') }}
47
+ restore-keys: hf-models-
48
+ - name: Create .env for CI
49
+ run: |
50
+ cat > .env << 'EOF'
51
+ VERSATIL_CACHE_DIR=/tmp/versatil/cache
52
+ VERSATIL_CHECKPOINT_DIR=/tmp/versatil/checkpoints
53
+ VERSATIL_ZARR_DIR=/tmp/versatil/zarr
54
+ VERSATIL_PRETRAINED_DIR=/tmp/versatil/pretrained
55
+ EOF
56
+ - name: Install dependencies
57
+ run: |
58
+ uv venv .venv
59
+ source .venv/bin/activate
60
+ uv pip install --extra-index-url https://download.pytorch.org/whl/cpu torch==2.10.0 torchaudio==2.10.0 torchvision==0.25.0
61
+ uv sync
62
+ uv pip install pytest-cov
63
+ - name: Run unit tests with coverage
64
+ run: |
65
+ source .venv/bin/activate
66
+ python -m pytest tests/ -m "not integration and not slow and not requires_gpu" --cov=versatil --tb=short -q --junitxml=report-unit.xml
67
+ - name: Run integration tests with coverage
68
+ run: |
69
+ source .venv/bin/activate
70
+ python -m pytest tests/ -m "integration" --cov=versatil --cov-append --cov-fail-under=90 --cov-report=xml:coverage.xml --cov-report=term-missing --tb=short -q --junitxml=report-integration.xml
71
+ - name: Upload coverage
72
+ if: always()
73
+ uses: actions/upload-artifact@v4
74
+ with:
75
+ name: coverage-report
76
+ path: coverage.xml
77
+ - name: Upload test reports
78
+ if: always()
79
+ uses: actions/upload-artifact@v4
80
+ with:
81
+ name: test-reports
82
+ path: |
83
+ report-unit.xml
84
+ report-integration.xml
85
+
86
+ e2e-tests:
87
+ runs-on: ubuntu-latest
88
+ needs: [tests]
89
+ if: github.event_name == 'pull_request' || (github.event_name == 'push' && github.ref == 'refs/heads/main')
90
+ timeout-minutes: 30
91
+ steps:
92
+ - uses: actions/checkout@v4
93
+ - uses: actions/setup-python@v5
94
+ with:
95
+ python-version: "3.14"
96
+ - uses: astral-sh/setup-uv@v5
97
+ - name: Cache HuggingFace models
98
+ uses: actions/cache@v4
99
+ with:
100
+ path: ~/.cache/huggingface
101
+ key: hf-models-${{ hashFiles('pyproject.toml') }}
102
+ restore-keys: hf-models-
103
+ - name: Create .env for CI
104
+ run: |
105
+ cat > .env << 'EOF'
106
+ VERSATIL_CACHE_DIR=/tmp/versatil/cache
107
+ VERSATIL_CHECKPOINT_DIR=/tmp/versatil/checkpoints
108
+ VERSATIL_ZARR_DIR=/tmp/versatil/zarr
109
+ VERSATIL_PRETRAINED_DIR=/tmp/versatil/pretrained
110
+ EOF
111
+ - name: Install dependencies
112
+ run: |
113
+ uv venv .venv
114
+ source .venv/bin/activate
115
+ uv pip install --extra-index-url https://download.pytorch.org/whl/cpu torch==2.10.0 torchaudio==2.10.0 torchvision==0.25.0
116
+ uv sync
117
+ - name: Run e2e tests
118
+ run: |
119
+ source .venv/bin/activate
120
+ python -m pytest tests/endpoints/test_end_to_end.py -m "slow" --tb=short -q --junitxml=report-e2e.xml
121
+ - name: Upload test report
122
+ if: always()
123
+ uses: actions/upload-artifact@v4
124
+ with:
125
+ name: e2e-test-report
126
+ path: report-e2e.xml
@@ -0,0 +1,45 @@
1
+ name: Deploy Documentation
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ workflow_dispatch:
7
+
8
+ permissions:
9
+ contents: read
10
+ pages: write
11
+ id-token: write
12
+
13
+ concurrency:
14
+ group: pages
15
+ cancel-in-progress: false
16
+
17
+ jobs:
18
+ build:
19
+ runs-on: ubuntu-latest
20
+ steps:
21
+ - uses: actions/checkout@v4
22
+
23
+ - uses: actions/setup-python@v5
24
+ with:
25
+ python-version: "3.14"
26
+
27
+ - name: Install docs dependencies
28
+ run: pip install mkdocs-material mkdocstrings[python] mkdocs-gen-files mkdocs-literate-nav
29
+
30
+ - name: Build documentation
31
+ run: mkdocs build --strict
32
+
33
+ - uses: actions/upload-pages-artifact@v3
34
+ with:
35
+ path: site
36
+
37
+ deploy:
38
+ needs: build
39
+ runs-on: ubuntu-latest
40
+ environment:
41
+ name: github-pages
42
+ url: ${{ steps.deployment.outputs.page_url }}
43
+ steps:
44
+ - uses: actions/deploy-pages@v4
45
+ id: deployment
@@ -0,0 +1,41 @@
1
+ name: Publish to PyPI
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - "v*.*.*"
7
+
8
+ permissions:
9
+ id-token: write
10
+ contents: read
11
+
12
+ jobs:
13
+ build:
14
+ runs-on: ubuntu-latest
15
+ steps:
16
+ - uses: actions/checkout@v4
17
+ - uses: actions/setup-python@v5
18
+ with:
19
+ python-version: "3.14"
20
+ - name: Install build tools
21
+ run: pip install build
22
+ - name: Build package
23
+ run: python -m build
24
+ - name: Upload artifacts
25
+ uses: actions/upload-artifact@v4
26
+ with:
27
+ name: dist
28
+ path: dist/
29
+
30
+ publish:
31
+ runs-on: ubuntu-latest
32
+ needs: build
33
+ environment: pypi
34
+ steps:
35
+ - name: Download artifacts
36
+ uses: actions/download-artifact@v4
37
+ with:
38
+ name: dist
39
+ path: dist/
40
+ - name: Publish to PyPI
41
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,154 @@
1
+ bin
2
+ logs
3
+ wandb
4
+ outputs
5
+ .env
6
+
7
+ data_local
8
+ .vscode
9
+ _wandb
10
+ .idea/
11
+
12
+ **/.DS_Store
13
+
14
+ fuse.cfg
15
+
16
+
17
+ *.ai
18
+
19
+ # Generation results
20
+ results/
21
+
22
+ ray/auth.json
23
+
24
+ # Byte-compiled / optimized / DLL files
25
+ __pycache__/
26
+ *.py[cod]
27
+ *$py.class
28
+
29
+ # C extensions
30
+ *.so
31
+
32
+ # Distribution / packaging
33
+ .Python
34
+ build/
35
+ develop-eggs/
36
+ dist/
37
+ downloads/
38
+ eggs/
39
+ .eggs/
40
+ lib/
41
+ lib64/
42
+ parts/
43
+ sdist/
44
+ var/
45
+ wheels/
46
+ pip-wheel-metadata/
47
+ share/python-wheels/
48
+ *.egg-info/
49
+ .installed.cfg
50
+ *.egg
51
+ MANIFEST
52
+
53
+ # PyInstaller
54
+ # Usually these files are written by a python script from a template
55
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
56
+ *.manifest
57
+ *.spec
58
+
59
+ # Installer logs
60
+ pip-log.txt
61
+ pip-delete-this-directory.txt
62
+
63
+ # Unit test / coverage reports
64
+ htmlcov/
65
+ .tox/
66
+ .nox/
67
+ .coverage
68
+ .coverage.*
69
+ .cache
70
+ nosetests.xml
71
+ coverage.xml
72
+ *.cover
73
+ *.py,cover
74
+ .hypothesis/
75
+ .pytest_cache/
76
+
77
+ # Translations
78
+ *.mo
79
+ *.pot
80
+
81
+ # Django stuff:
82
+ *.log
83
+ local_settings.py
84
+ db.sqlite3
85
+ db.sqlite3-journal
86
+
87
+ # Flask stuff:
88
+ instance/
89
+ .webassets-cache
90
+
91
+ # Scrapy stuff:
92
+ .scrapy
93
+
94
+ # Sphinx documentation
95
+ docs/_build/
96
+
97
+ # PyBuilder
98
+ target/
99
+
100
+ # Jupyter Notebook
101
+ .ipynb_checkpoints
102
+
103
+ # IPython
104
+ profile_default/
105
+ ipython_config.py
106
+
107
+ # pyenv
108
+ .python-version
109
+
110
+ # pipenv
111
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
112
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
113
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
114
+ # install all needed dependencies.
115
+ #Pipfile.lock
116
+
117
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
118
+ __pypackages__/
119
+
120
+ # Celery stuff
121
+ celerybeat-schedule
122
+ celerybeat.pid
123
+
124
+ # SageMath parsed files
125
+ *.sage.py
126
+
127
+ # Spyder project settings
128
+ .spyderproject
129
+ .spyproject
130
+
131
+ # Rope project settings
132
+ .ropeproject
133
+
134
+ # mkdocs documentation
135
+ /site
136
+
137
+ # mypy
138
+ .mypy_cache/
139
+ .dmypy.json
140
+ dmypy.json
141
+
142
+ # Pyre type checker
143
+ .pyre/
144
+
145
+ /src/endpoints/custom_configs/*
146
+ a/yaml_configs/custom_configs/*
147
+
148
+ uv.lock
149
+ .venv*
150
+
151
+ lightning_logs/
152
+ src/endpoints/local_test/
153
+ research_scripts/
154
+ scripts/
@@ -0,0 +1,115 @@
1
+ stages:
2
+ - lint
3
+ - test
4
+ - publish
5
+
6
+ variables:
7
+ PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"
8
+ HF_HOME: "$CI_PROJECT_DIR/.cache/huggingface"
9
+ TORCH_HOME: "$CI_PROJECT_DIR/.cache/torch"
10
+ UV_CACHE_DIR: "$CI_PROJECT_DIR/.cache/uv"
11
+ CUDA_VISIBLE_DEVICES: ""
12
+
13
+ # Reusable setup template
14
+ .setup:
15
+ image: python:3.14
16
+ before_script:
17
+ - pip install uv
18
+ - |
19
+ cat > .env << 'EOF'
20
+ VERSATIL_CACHE_DIR=/tmp/versatil/cache
21
+ VERSATIL_CHECKPOINT_DIR=/tmp/versatil/checkpoints
22
+ VERSATIL_ZARR_DIR=/tmp/versatil/zarr
23
+ VERSATIL_PRETRAINED_DIR=/tmp/versatil/pretrained
24
+ EOF
25
+ - |
26
+ if [ ! -x .venv/bin/python ]; then
27
+ rm -rf .venv
28
+ uv venv .venv
29
+ source .venv/bin/activate
30
+ uv pip install --extra-index-url https://download.pytorch.org/whl/cpu torch==2.10.0 torchaudio==2.10.0 torchvision==0.25.0
31
+ else
32
+ source .venv/bin/activate
33
+ fi
34
+ - uv sync
35
+ cache:
36
+ key: "$CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA"
37
+ paths:
38
+ - .cache/
39
+ - .venv/
40
+
41
+ ruff-format:
42
+ stage: lint
43
+ image: python:3.14
44
+ before_script:
45
+ - pip install ruff==0.15.6
46
+ script:
47
+ - ruff format --check src/ tests/
48
+ rules:
49
+ - if: $CI_PIPELINE_SOURCE == "merge_request_event"
50
+ - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
51
+
52
+ ruff-lint:
53
+ stage: lint
54
+ image: python:3.14
55
+ before_script:
56
+ - pip install ruff==0.15.6
57
+ script:
58
+ - ruff check src/ tests/
59
+ rules:
60
+ - if: $CI_PIPELINE_SOURCE == "merge_request_event"
61
+ - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
62
+
63
+ tests:
64
+ stage: test
65
+ extends: .setup
66
+ script:
67
+ - uv pip install pytest-cov
68
+ - python -m pytest tests/ -m "not integration and not slow and not requires_gpu" --cov=versatil --tb=short -q --junitxml=report-unit.xml
69
+ - python -m pytest tests/ -m "integration" --cov=versatil --cov-append --cov-fail-under=90 --cov-report=xml:coverage.xml --cov-report=term-missing --tb=short -q --junitxml=report-integration.xml
70
+ coverage: '/(?i)total.*? (100(?:\.0+)?\%|[1-9]?\d(?:\.\d+)?\%)$/'
71
+ artifacts:
72
+ when: always
73
+ reports:
74
+ junit:
75
+ - report-unit.xml
76
+ - report-integration.xml
77
+ coverage_report:
78
+ coverage_format: cobertura
79
+ path: coverage.xml
80
+ rules:
81
+ - if: $CI_PIPELINE_SOURCE == "merge_request_event"
82
+ - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
83
+
84
+ e2e-tests:
85
+ stage: test
86
+ extends: .setup
87
+ timeout: 60 minutes
88
+ cache:
89
+ policy: pull
90
+ script:
91
+ - python -m pytest tests/endpoints/test_end_to_end.py -m "slow" --tb=short -q --junitxml=report-e2e.xml
92
+ artifacts:
93
+ when: always
94
+ reports:
95
+ junit: report-e2e.xml
96
+ rules:
97
+ - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
98
+ when: always
99
+ - if: $CI_PIPELINE_SOURCE == "merge_request_event"
100
+ when: manual
101
+ allow_failure: true
102
+
103
+ publish-pypi:
104
+ stage: publish
105
+ image: python:3.14
106
+ before_script:
107
+ - pip install build twine
108
+ script:
109
+ - python -m build
110
+ - twine upload dist/* --non-interactive
111
+ variables:
112
+ TWINE_USERNAME: __token__
113
+ TWINE_PASSWORD: $PYPI_TOKEN
114
+ rules:
115
+ - if: $CI_COMMIT_TAG =~ /^v\d+\.\d+\.\d+$/
@@ -0,0 +1,9 @@
1
+ repos:
2
+ - repo: https://github.com/astral-sh/ruff-pre-commit
3
+ rev: v0.15.6
4
+ hooks:
5
+ - id: ruff-format
6
+ types_or: [python, pyi]
7
+ - id: ruff
8
+ args: [--fix, --exit-non-zero-on-fix]
9
+ types_or: [python, pyi]
@@ -0,0 +1,132 @@
1
+ # Changelog
2
+
3
+ All notable changes to VersatIL will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased]
9
+
10
+ ## [0.3.0] - 2026-05-11
11
+
12
+ ### Added
13
+ - End-to-end experiment config families for PushT, Block Pushing, Kitchen, Multimodal Ant, UR3 Block Push, Multimodal Peg Transfer, and synthetic multimodal benchmarks, including state/RGB variants where supported.
14
+ - LIBERO/LIBERO+ configs for GPT-style action transformers, Pi0/SmolVLA-style VLA policies, and vision/language encoder sweeps.
15
+ - Dataset schema, Zarr metadata, observation/action-space configs, OmegaConf path resolvers, and `.env` variables for the new local/LeRobot-compatible benchmark families.
16
+ - Synthetic multimodal benchmark generation, presets, rollout metrics, and training/evaluation configs for mode-recovery experiments.
17
+ - Variational latent-modeling components for multimodal action distributions: VQ posterior encoder, uniform/learned codebook priors, DiT latent prior configs, conditional MMD losses, and relaxed conditional Sinkhorn/OT losses.
18
+ - Staged training support with epoch-indexed trainability, optimizer, and loss-weight overrides, plus prior-target standardization and richer latent/synthetic rollout callbacks.
19
+ - `Pi0Decoder` and `SmolVLADecoder` factories — interleaved VLM-expert joint attention architectures where a pretrained VLM backbone is paired 1:1 with learned expert layers. Pi0 fuses timestep via MLP, Pi0.5 via adaptive normalization. SmolVLA alternates cross-attention and joint self-attention layers.
20
+ - `GenerativeVLMEncoder` abstract base for single-stream VLMs (embed images → embed text → concat → LM). Thin subclasses: `PaliGemmaEncoder`, `SmolVLMEncoder`. Replaces the monolithic `multimodal/vlm.py`.
21
+ - `TwoTowerVLMEncoder` — CLIP-style separate vision/language towers with `ImageEncoderMixin` + `LanguageEncoderMixin`.
22
+ - `ImageEncoderMixin` — abstract base class for multi-camera dispatch with per-camera feature naming (`rgb:left`, `rgb:right`). Subclassed by `RGBEncoderMixin`, `DepthEncoderMixin`, `RGBDEncoderMixin`.
23
+ - Per-camera image sizes — encoding pipeline sets dimensions from `CameraMetadata` in observation space. `set_image_size()` hook on encoders.
24
+ - `LanguageEncoderMixin` — shared tokenized text pad/truncate, attention mask construction, and output padding mask.
25
+ - `FeatureMetadata` frozen dataclass `(key, feature_type, dimension)` with `FeatureType` enum (SPATIAL, SEQUENTIAL, FLAT). Replaces `EncoderOutput`.
26
+ - `GenerationCache` / `GenerationLayerCache` — append-only cache for autoregressive generation. Grows token-by-token.
27
+ - `ConditioningCache` / `ConditioningLayerCache` — write-once cache for static context (observations, encoder features). Stores K/V and optionally Q for bidirectional conditioning. Cache presence implies behavior — no `use_cache` boolean.
28
+ - Cross-attention caching for diffusion decoders — `DiffusionActionTransformer` precomputes conditioning K/V once and reuses across all denoising steps.
29
+ - Transformer package decomposed into `attention/`, `block/`, `layer/`, `cache/` sub-packages — ~1600 lines of duplicated diffusion transformer internals deleted.
30
+ - `TransformerMixin` — shared weight init, positional encoding setup/application with `offset` for cached generation, padding mask expansion.
31
+ - `BlockNormalization` type (`AdaNorm | UnconditionedNorm`) — uniform `(x, condition) → (normed, gate)` interface. Eliminates conditioning branches in transformer blocks.
32
+ - `GatedLinearUnit` generalizes `SwiGLU` — base class with configurable gate activation, plus `SwiGLU` (SiLU gate) and `GeGLU` (GELU-tanh gate) subclasses.
33
+ - Encoder refactoring — encoders renamed by output format (spatial vs flat), not architecture. `CNNEncoder` + `SwinEncoder` → `SpatialRGBEncoder`, `ViTEncoder` → `FlatRGBEncoder`, `DepthCNNEncoder` → `SpatialDepthEncoder`.
34
+ - New backbones: ConvNeXtV2-Nano, TinyViT-21M, DINOv3-ConvNeXt-Small.
35
+ - `exclude_cls` → `num_prefix_tokens` on `TokenPoolingHead` — handles CLS + register tokens.
36
+ - `ImageProcessor` — per-camera image processing extracted into standalone class (resize, augmentation, normalization).
37
+ - `CallbackProvider` protocol for training callbacks — decoders/algorithms declare their own callbacks; Workspace collects via protocol check instead of `isinstance` chains.
38
+ - `action_execution_horizon` parameter on `InferenceClient` — controls how many actions from each predicted chunk to execute before re-querying. Defaults to `prediction_horizon`.
39
+ - `make_attention_mask` supports `causal_actions` flag and `causal_prefix_suffix_length` for VLA prefix-suffix patterns.
40
+ - LR scheduler now uses HuggingFace `transformers.get_scheduler` with `lr_scheduler_kwargs` passthrough.
41
+
42
+ ### Changed
43
+ - `ActionTransformer` no longer requires spatial features — accepts any feature type.
44
+ - Fusion modules report correct output feature types (SEQUENTIAL when inputs are sequential).
45
+ - `LanguageEncoder` detects CLS token via `AutoTokenizer.cls_token_id` instead of hardcoding.
46
+ - Encoding pipeline YAML defaults cleaned up: removed redundant `_target_`, added missing config group references.
47
+ - `DataLoaderConfig` no longer hardcodes `image_height`/`image_width` — dimensions come from per-camera `CameraMetadata`.
48
+ - `ObservationPreprocessor` uses `ImageProcessor` + `CameraMetadata` instead of raw albumentations transforms.
49
+ - `PolicyLoader` reads precision from checkpoint config instead of requiring a `precision` parameter.
50
+ - `FlowMatchingConfig` adds `reverse_flow_convention` flag.
51
+ - `data/augmentation/` restructured to `data/processing/` — `ActionProcessor` and `TransformBuilder` moved alongside `ImageProcessor`.
52
+ - `depth/dformerv2` and `depth/light_geometric` encoders moved to `cross_modal/rgbd/`.
53
+ - `multimodal/` package renamed by `cross_modal/`, `vlm.py` is now a `vision_language` package.
54
+ - Loss `_target_` paths updated across all YAML configs for metrics package restructure (removed `__init__.py` exports).
55
+ - Diffusion transformer high-level classes (`CrossAttentionDiT`, `MMDiTTransformer`, `DiTBlock`) now delegate to shared `transformer/` blocks and layers
56
+ instead of maintaining duplicated implementations.
57
+ - All `__init__.py` re-exports removed across transformer, training, and inference packages — consumers import from concrete modules.
58
+
59
+ ### Fixed
60
+ - GPT Action Transformer tokenized head had a 64-dim MLP bottleneck before predicting 1025 vocab classes with weight tying in the same space. Removed bottleneck — direct `embedding_dimension` → vocab projection.
61
+ - `DiTPrior` always targeted noise regardless of `prediction_type` — now branches correctly for epsilon, sample, and velocity.
62
+ - `GaussianPrior` used stale `self.device` after `.to()` — now uses `_device_tracker` buffer.
63
+ - `ConditionalCNNEncoder` pooling head not re-frozen after `set_image_size()` when `frozen=True`.
64
+ - EMA callback `optimization_step` incremented per batch instead of per optimizer step — replaced with `trainer.global_step`.
65
+ - Inference client discarded predicted action chunks — without temporal aggregation, only first action was sent. Now sends `action_execution_horizon` actions per inference call.
66
+ - Post-training compression `validate()` skipped in global mode — iterated empty `self.modules` instead of resolved targets.
67
+ - `DictOfTensorMixin.device` raised `StopIteration` when `params_dict` empty — now uses `_device_tracker` buffer.
68
+ - DataLoader `persistent_workers=True` crashed with `num_workers=0` — now conditionally set.
69
+ - `TemporalAggregator` crashed with `IndexError` when exceeding `max_timesteps` — now raises `RuntimeError`.
70
+ - `TrajectoryLengthLoss` zeroed padded timesteps before computing diffs, creating spurious jumps at boundaries.
71
+ - `TrajectorySmoothness` padding mask only checked `is_pad[:, 2:]` but acceleration depends on 3 positions.
72
+ - `DiscreteDETRActionTransformer` had `requires_actions=True` but ignores actions — changed to `False`.
73
+ - `SmolVLADecoder` missing `proprioceptive_projection = None` init.
74
+ - Phantom batch in metrics accumulator from lazy module init — reset after dummy forward pass.
75
+ - SigLIP2 tokenizer fallback when `attention_mask` not returned.
76
+
77
+ ### Removed
78
+ - Legacy encoder files: `rgb/cnn.py`, `rgb/swin.py`, `rgb/vit.py`, `depth/cnn.py` and their tests — superseded by `SpatialRGBEncoder`, `FlatRGBEncoder`, `SpatialDepthEncoder`.
79
+
80
+ ## [0.2.0] - 2026-04-09
81
+
82
+ ### Fixed
83
+ - `Policy.compute_loss` was comparing network predictions against raw ground-truth actions instead of the algorithm-specific targets (velocity field for flow matching, noise for diffusion epsilon mode). Introduced `DecodingAlgorithm.get_targets()` so each algorithm provides the correct regression target to the loss module.
84
+ - Added `DecodingAlgorithm.predicts_in_action_space` and `BaseLoss.requires_action_space_targets` to detect incompatible loss-algorithm pairings at init.
85
+
86
+ ### Added
87
+ - Post-training compression pipeline (`post_training_compression/` + `quantization/`): `PostTrainingCompressor` orchestrates load → prepare → prune → export → quantize → save. Supports per-module `CompressionTarget`, composable pruning (unstructured + structured), PT2E quantization via `X86InductorBackend`, and quantize_() API for dynamic/weight-only quantization. `CompressedPolicyLoader` loads `.pt2` archives with `torch.compile`.
88
+ - Python 3.14 compatibility patch for torchao `Union.__module__` assignment.
89
+
90
+ ### Changed
91
+ - `inference/__init__.py` and `inference/policy_loading/__init__.py` no longer re-export submodules (prevents circular imports)
92
+ - All consumers import from concrete modules (e.g., `from versatil.inference.policy_loading.float_loader import PolicyLoader`)
93
+
94
+ ## [0.1.1] - 2026-03-20
95
+
96
+ Migrate to Python 3.13+ and PyTorch 2.10 with CUDA 12.8.
97
+
98
+ ### Changed
99
+ - Minimum Python version raised from 3.11 to 3.13
100
+ - PyTorch upgraded to 2.10 with CUDA 12.8 (was 2.4 with CUDA 12.4)
101
+ - HuggingFace Transformers bumped to 5.x, with compatibility fixes for FAST tokenizer and SigLIP VLM encoder
102
+ - NumPy dependency bumped for Python 3.14 compatibility
103
+ - Ruff target version updated to `py313`
104
+ - `str, enum.Enum` replaced with `enum.StrEnum` (PEP 659, Python 3.11+)
105
+ - `torch.load` now uses `weights_only=False` by default to match PyTorch 2.10 behavior
106
+ - CI/CD Docker image updated to Python 3.14, pipelines now trigger only on merge requests
107
+
108
+ ### Removed
109
+ - `flash-attn` dependency — PyTorch 2.10 SDPA natively dispatches to FlashAttention kernels
110
+ - `FLASH_ATTENTION_2` attention implementation type (replaced by `SDPA`)
111
+
112
+ ### Fixed
113
+ - `asyncio.get_event_loop()` replaced with `asyncio.run()` for Python 3.14 compatibility in WebP codec
114
+ - OpenCV dependency conflict resolved
115
+ - CI/CD pipeline no longer passes silently when unit tests fail
116
+
117
+ ## [0.1.0] - 2026-03-19
118
+
119
+ Initial release of VersatIL — a modular Imitation Learning framework for robotic manipulation.
120
+
121
+ ### Added
122
+ - Composable policy architecture: Policy = EncodingPipeline + Algorithm + Action Decoder + Loss.
123
+ - Algorithms: Behavioral Cloning, Diffusion, Flow Matching, VariationalAlgorithm (compositional variational inference wrapping any base algorithm).
124
+ - Encoders: RGB/Depth (timm backbones), Conditional CNN (FiLM), DFormerV2, Geometric RGBD, Proprioceptive (MLP), Language (HuggingFace transformers), Vision-Language (HuggingFace multimodal).
125
+ - Fusion modules: Concatenation, MLP, Attention.
126
+ - Decoder factories: ACT, Action Transformer, Conditional Action U-Net, Diffusion Action Transformer (Cross-Attention and MultiModal), Discrete-DETR, DiT-Block, Free Action Transformer, GPT Action Transformer, LACT, MoDE-ACT, MoE Decoder, MoE Free Action Transformer, Phase-ACT.
127
+ - Action heads: Single-Output, Gaussian (mean + log-variance), Mixture of Experts (MoE).
128
+ - Data pipeline: Zarr episodic store, CSV/HDF5/LeRobot raw formats, action/observation processing, image augmentation, normalization, tokenization.
129
+ - Inference: pluggable transport protocol (ZMQ), observation/action preprocessing, temporal aggregation, unified client for simulation and on-hardware.
130
+ - Training: PyTorch Lightning loop, Hydra/OmegaConf configs, WandB tracking, custom callbacks and checkpoint management.
131
+ - Losses: composable system via `nn.Module` composition — regression, classification, KL divergence, Sinkhorn divergence, MMD.
132
+ - CI/CD: GitLab CI and GitHub Actions, unit and integration tests with >90% coverage, Ruff formatting/linting.