nshtrainer 1.3.1__tar.gz → 1.3.3__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 (165) hide show
  1. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/PKG-INFO +1 -1
  2. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/pyproject.toml +1 -1
  3. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/model/base.py +17 -4
  4. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/_config.py +4 -0
  5. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/README.md +0 -0
  6. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/.nshconfig.generated.json +0 -0
  7. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/__init__.py +0 -0
  8. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/_callback.py +0 -0
  9. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/_checkpoint/metadata.py +0 -0
  10. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/_checkpoint/saver.py +0 -0
  11. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/_directory.py +0 -0
  12. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/_experimental/__init__.py +0 -0
  13. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/_hf_hub.py +0 -0
  14. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/__init__.py +0 -0
  15. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/actsave.py +0 -0
  16. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/base.py +0 -0
  17. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/checkpoint/__init__.py +0 -0
  18. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/checkpoint/_base.py +0 -0
  19. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/checkpoint/best_checkpoint.py +0 -0
  20. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/checkpoint/last_checkpoint.py +0 -0
  21. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/checkpoint/on_exception_checkpoint.py +0 -0
  22. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/debug_flag.py +0 -0
  23. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/directory_setup.py +0 -0
  24. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/distributed_prediction_writer.py +0 -0
  25. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/early_stopping.py +0 -0
  26. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/ema.py +0 -0
  27. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/finite_checks.py +0 -0
  28. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/gradient_skipping.py +0 -0
  29. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/interval.py +0 -0
  30. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/log_epoch.py +0 -0
  31. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/lr_monitor.py +0 -0
  32. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/metric_validation.py +0 -0
  33. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/norm_logging.py +0 -0
  34. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/print_table.py +0 -0
  35. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/rlp_sanity_checks.py +0 -0
  36. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/shared_parameters.py +0 -0
  37. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/timer.py +0 -0
  38. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/wandb_upload_code.py +0 -0
  39. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/callbacks/wandb_watch.py +0 -0
  40. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/.gitattributes +0 -0
  41. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/__init__.py +0 -0
  42. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/_checkpoint/__init__.py +0 -0
  43. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/_checkpoint/metadata/__init__.py +0 -0
  44. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/_directory/__init__.py +0 -0
  45. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/_hf_hub/__init__.py +0 -0
  46. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/__init__.py +0 -0
  47. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/actsave/__init__.py +0 -0
  48. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/base/__init__.py +0 -0
  49. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/checkpoint/__init__.py +0 -0
  50. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/checkpoint/_base/__init__.py +0 -0
  51. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/checkpoint/best_checkpoint/__init__.py +0 -0
  52. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/checkpoint/last_checkpoint/__init__.py +0 -0
  53. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/checkpoint/on_exception_checkpoint/__init__.py +0 -0
  54. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/debug_flag/__init__.py +0 -0
  55. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/directory_setup/__init__.py +0 -0
  56. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/distributed_prediction_writer/__init__.py +0 -0
  57. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/early_stopping/__init__.py +0 -0
  58. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/ema/__init__.py +0 -0
  59. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/finite_checks/__init__.py +0 -0
  60. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/gradient_skipping/__init__.py +0 -0
  61. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/log_epoch/__init__.py +0 -0
  62. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/lr_monitor/__init__.py +0 -0
  63. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/metric_validation/__init__.py +0 -0
  64. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/norm_logging/__init__.py +0 -0
  65. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/print_table/__init__.py +0 -0
  66. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/rlp_sanity_checks/__init__.py +0 -0
  67. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/shared_parameters/__init__.py +0 -0
  68. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/timer/__init__.py +0 -0
  69. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/wandb_upload_code/__init__.py +0 -0
  70. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/callbacks/wandb_watch/__init__.py +0 -0
  71. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/loggers/__init__.py +0 -0
  72. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/loggers/actsave/__init__.py +0 -0
  73. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/loggers/base/__init__.py +0 -0
  74. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/loggers/csv/__init__.py +0 -0
  75. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/loggers/tensorboard/__init__.py +0 -0
  76. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/loggers/wandb/__init__.py +0 -0
  77. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/lr_scheduler/__init__.py +0 -0
  78. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/lr_scheduler/base/__init__.py +0 -0
  79. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/lr_scheduler/linear_warmup_cosine/__init__.py +0 -0
  80. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/lr_scheduler/reduce_lr_on_plateau/__init__.py +0 -0
  81. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/metrics/__init__.py +0 -0
  82. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/metrics/_config/__init__.py +0 -0
  83. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/nn/__init__.py +0 -0
  84. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/nn/mlp/__init__.py +0 -0
  85. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/nn/nonlinearity/__init__.py +0 -0
  86. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/nn/rng/__init__.py +0 -0
  87. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/optimizer/__init__.py +0 -0
  88. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/profiler/__init__.py +0 -0
  89. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/profiler/_base/__init__.py +0 -0
  90. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/profiler/advanced/__init__.py +0 -0
  91. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/profiler/pytorch/__init__.py +0 -0
  92. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/profiler/simple/__init__.py +0 -0
  93. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/trainer/__init__.py +0 -0
  94. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/trainer/_config/__init__.py +0 -0
  95. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/trainer/accelerator/__init__.py +0 -0
  96. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/trainer/plugin/__init__.py +0 -0
  97. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/trainer/plugin/base/__init__.py +0 -0
  98. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/trainer/plugin/environment/__init__.py +0 -0
  99. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/trainer/plugin/io/__init__.py +0 -0
  100. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/trainer/plugin/layer_sync/__init__.py +0 -0
  101. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/trainer/plugin/precision/__init__.py +0 -0
  102. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/trainer/strategy/__init__.py +0 -0
  103. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/trainer/trainer/__init__.py +0 -0
  104. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/util/__init__.py +0 -0
  105. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/util/_environment_info/__init__.py +0 -0
  106. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/util/config/__init__.py +0 -0
  107. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/util/config/dtype/__init__.py +0 -0
  108. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/configs/util/config/duration/__init__.py +0 -0
  109. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/data/__init__.py +0 -0
  110. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/data/balanced_batch_sampler.py +0 -0
  111. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/data/datamodule.py +0 -0
  112. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/data/transform.py +0 -0
  113. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/loggers/__init__.py +0 -0
  114. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/loggers/actsave.py +0 -0
  115. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/loggers/base.py +0 -0
  116. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/loggers/csv.py +0 -0
  117. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/loggers/tensorboard.py +0 -0
  118. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/loggers/wandb.py +0 -0
  119. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/lr_scheduler/__init__.py +0 -0
  120. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/lr_scheduler/base.py +0 -0
  121. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/lr_scheduler/linear_warmup_cosine.py +0 -0
  122. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/lr_scheduler/reduce_lr_on_plateau.py +0 -0
  123. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/metrics/__init__.py +0 -0
  124. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/metrics/_config.py +0 -0
  125. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/model/__init__.py +0 -0
  126. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/model/mixins/callback.py +0 -0
  127. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/model/mixins/debug.py +0 -0
  128. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/model/mixins/logger.py +0 -0
  129. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/nn/__init__.py +0 -0
  130. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/nn/mlp.py +0 -0
  131. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/nn/module_dict.py +0 -0
  132. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/nn/module_list.py +0 -0
  133. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/nn/nonlinearity.py +0 -0
  134. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/nn/rng.py +0 -0
  135. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/optimizer.py +0 -0
  136. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/profiler/__init__.py +0 -0
  137. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/profiler/_base.py +0 -0
  138. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/profiler/advanced.py +0 -0
  139. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/profiler/pytorch.py +0 -0
  140. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/profiler/simple.py +0 -0
  141. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/__init__.py +0 -0
  142. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/_distributed_prediction_result.py +0 -0
  143. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/_log_hparams.py +0 -0
  144. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/_runtime_callback.py +0 -0
  145. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/accelerator.py +0 -0
  146. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/plugin/__init__.py +0 -0
  147. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/plugin/base.py +0 -0
  148. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/plugin/environment.py +0 -0
  149. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/plugin/io.py +0 -0
  150. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/plugin/layer_sync.py +0 -0
  151. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/plugin/precision.py +0 -0
  152. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/signal_connector.py +0 -0
  153. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/strategy.py +0 -0
  154. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/trainer/trainer.py +0 -0
  155. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/util/_environment_info.py +0 -0
  156. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/util/bf16.py +0 -0
  157. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/util/config/__init__.py +0 -0
  158. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/util/config/dtype.py +0 -0
  159. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/util/config/duration.py +0 -0
  160. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/util/environment.py +0 -0
  161. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/util/path.py +0 -0
  162. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/util/seed.py +0 -0
  163. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/util/slurm.py +0 -0
  164. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/util/typed.py +0 -0
  165. {nshtrainer-1.3.1 → nshtrainer-1.3.3}/src/nshtrainer/util/typing_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: nshtrainer
3
- Version: 1.3.1
3
+ Version: 1.3.3
4
4
  Summary:
5
5
  Author: Nima Shoghi
6
6
  Author-email: nimashoghi@gmail.com
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "nshtrainer"
3
- version = "1.3.1"
3
+ version = "1.3.3"
4
4
  description = ""
5
5
  authors = [{ name = "Nima Shoghi", email = "nimashoghi@gmail.com" }]
6
6
  requires-python = ">=3.10,<4.0"
@@ -85,12 +85,25 @@ def default_split_batched_predictions(
85
85
  """
86
86
  import torch.utils._pytree as tree
87
87
 
88
- for sample_idx, batch_idx in enumerate(batch_indices):
88
+ for i, global_idx in enumerate(batch_indices):
89
+
90
+ def _verify_and_index(x: torch.Tensor):
91
+ # Make sure dim 0 length is equal to the batch size,
92
+ # otherwise we can't index it and should prompt
93
+ # the user to implement a splitter
94
+ if x.shape[0] != len(batch_indices):
95
+ raise ValueError(
96
+ f"Batch size {x.shape[0]} does not match the number of batch indices {len(batch_indices)}. "
97
+ "Please implement a custom `split_batched_predictions` method in your LightningModuleBase class."
98
+ )
99
+
100
+ return x[i]
101
+
89
102
  # Create a dictionary for each sample
90
103
  yield IndividualSample(
91
- index=batch_idx,
92
- batch=tree.tree_map(lambda x: x[sample_idx], batch),
93
- prediction=tree.tree_map(lambda x: x[sample_idx], prediction),
104
+ index=global_idx,
105
+ batch=tree.tree_map(_verify_and_index, batch),
106
+ prediction=tree.tree_map(_verify_and_index, prediction),
94
107
  )
95
108
 
96
109
 
@@ -374,6 +374,10 @@ class TrainerConfig(C.Config):
374
374
  """Tags for the run."""
375
375
  notes: list[str] = []
376
376
  """Human readable notes for the run."""
377
+ meta: dict[str, Any] = {}
378
+ """Metadata information for the run. This is a dictionary that can be used to store any additional information
379
+ about the run. It is not used by nshtrainer, but can be useful for logging or tracking purposes.
380
+ """
377
381
 
378
382
  @property
379
383
  def full_name(self):
File without changes