nshtrainer 1.0.0b53__tar.gz → 1.0.0b55__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 (161) hide show
  1. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/PKG-INFO +1 -1
  2. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/pyproject.toml +1 -1
  3. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/__init__.py +2 -0
  4. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/lr_scheduler/__init__.py +2 -0
  5. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/lr_scheduler/reduce_lr_on_plateau/__init__.py +2 -0
  6. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/nn/__init__.py +4 -0
  7. nshtrainer-1.0.0b55/src/nshtrainer/configs/nn/rng/__init__.py +9 -0
  8. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/nn/__init__.py +2 -1
  9. nshtrainer-1.0.0b55/src/nshtrainer/nn/rng.py +23 -0
  10. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/trainer/trainer.py +15 -1
  11. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/README.md +0 -0
  12. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/.nshconfig.generated.json +0 -0
  13. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/__init__.py +0 -0
  14. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/_callback.py +0 -0
  15. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/_checkpoint/metadata.py +0 -0
  16. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/_checkpoint/saver.py +0 -0
  17. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/_directory.py +0 -0
  18. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/_experimental/__init__.py +0 -0
  19. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/_hf_hub.py +0 -0
  20. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/__init__.py +0 -0
  21. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/actsave.py +0 -0
  22. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/base.py +0 -0
  23. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/checkpoint/__init__.py +0 -0
  24. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/checkpoint/_base.py +0 -0
  25. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/checkpoint/best_checkpoint.py +0 -0
  26. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/checkpoint/last_checkpoint.py +0 -0
  27. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/checkpoint/on_exception_checkpoint.py +0 -0
  28. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/debug_flag.py +0 -0
  29. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/directory_setup.py +0 -0
  30. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/early_stopping.py +0 -0
  31. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/ema.py +0 -0
  32. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/finite_checks.py +0 -0
  33. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/gradient_skipping.py +0 -0
  34. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/interval.py +0 -0
  35. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/log_epoch.py +0 -0
  36. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/lr_monitor.py +0 -0
  37. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/metric_validation.py +0 -0
  38. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/norm_logging.py +0 -0
  39. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/print_table.py +0 -0
  40. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/rlp_sanity_checks.py +0 -0
  41. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/shared_parameters.py +0 -0
  42. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/timer.py +0 -0
  43. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/wandb_upload_code.py +0 -0
  44. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/callbacks/wandb_watch.py +0 -0
  45. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/.gitattributes +0 -0
  46. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/_checkpoint/__init__.py +0 -0
  47. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/_checkpoint/metadata/__init__.py +0 -0
  48. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/_directory/__init__.py +0 -0
  49. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/_hf_hub/__init__.py +0 -0
  50. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/__init__.py +0 -0
  51. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/actsave/__init__.py +0 -0
  52. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/base/__init__.py +0 -0
  53. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/checkpoint/__init__.py +0 -0
  54. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/checkpoint/_base/__init__.py +0 -0
  55. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/checkpoint/best_checkpoint/__init__.py +0 -0
  56. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/checkpoint/last_checkpoint/__init__.py +0 -0
  57. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/checkpoint/on_exception_checkpoint/__init__.py +0 -0
  58. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/debug_flag/__init__.py +0 -0
  59. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/directory_setup/__init__.py +0 -0
  60. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/early_stopping/__init__.py +0 -0
  61. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/ema/__init__.py +0 -0
  62. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/finite_checks/__init__.py +0 -0
  63. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/gradient_skipping/__init__.py +0 -0
  64. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/log_epoch/__init__.py +0 -0
  65. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/lr_monitor/__init__.py +0 -0
  66. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/metric_validation/__init__.py +0 -0
  67. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/norm_logging/__init__.py +0 -0
  68. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/print_table/__init__.py +0 -0
  69. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/rlp_sanity_checks/__init__.py +0 -0
  70. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/shared_parameters/__init__.py +0 -0
  71. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/timer/__init__.py +0 -0
  72. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/wandb_upload_code/__init__.py +0 -0
  73. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/callbacks/wandb_watch/__init__.py +0 -0
  74. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/loggers/__init__.py +0 -0
  75. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/loggers/actsave/__init__.py +0 -0
  76. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/loggers/base/__init__.py +0 -0
  77. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/loggers/csv/__init__.py +0 -0
  78. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/loggers/tensorboard/__init__.py +0 -0
  79. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/loggers/wandb/__init__.py +0 -0
  80. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/lr_scheduler/base/__init__.py +0 -0
  81. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/lr_scheduler/linear_warmup_cosine/__init__.py +0 -0
  82. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/metrics/__init__.py +0 -0
  83. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/metrics/_config/__init__.py +0 -0
  84. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/nn/mlp/__init__.py +0 -0
  85. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/nn/nonlinearity/__init__.py +0 -0
  86. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/optimizer/__init__.py +0 -0
  87. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/profiler/__init__.py +0 -0
  88. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/profiler/_base/__init__.py +0 -0
  89. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/profiler/advanced/__init__.py +0 -0
  90. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/profiler/pytorch/__init__.py +0 -0
  91. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/profiler/simple/__init__.py +0 -0
  92. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/trainer/__init__.py +0 -0
  93. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/trainer/_config/__init__.py +0 -0
  94. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/trainer/accelerator/__init__.py +0 -0
  95. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/trainer/plugin/__init__.py +0 -0
  96. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/trainer/plugin/base/__init__.py +0 -0
  97. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/trainer/plugin/environment/__init__.py +0 -0
  98. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/trainer/plugin/io/__init__.py +0 -0
  99. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/trainer/plugin/layer_sync/__init__.py +0 -0
  100. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/trainer/plugin/precision/__init__.py +0 -0
  101. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/trainer/strategy/__init__.py +0 -0
  102. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/trainer/trainer/__init__.py +0 -0
  103. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/util/__init__.py +0 -0
  104. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/util/_environment_info/__init__.py +0 -0
  105. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/util/config/__init__.py +0 -0
  106. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/util/config/dtype/__init__.py +0 -0
  107. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/configs/util/config/duration/__init__.py +0 -0
  108. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/data/__init__.py +0 -0
  109. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/data/balanced_batch_sampler.py +0 -0
  110. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/data/datamodule.py +0 -0
  111. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/data/transform.py +0 -0
  112. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/loggers/__init__.py +0 -0
  113. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/loggers/actsave.py +0 -0
  114. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/loggers/base.py +0 -0
  115. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/loggers/csv.py +0 -0
  116. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/loggers/tensorboard.py +0 -0
  117. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/loggers/wandb.py +0 -0
  118. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/lr_scheduler/__init__.py +0 -0
  119. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/lr_scheduler/base.py +0 -0
  120. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/lr_scheduler/linear_warmup_cosine.py +0 -0
  121. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/lr_scheduler/reduce_lr_on_plateau.py +0 -0
  122. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/metrics/__init__.py +0 -0
  123. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/metrics/_config.py +0 -0
  124. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/model/__init__.py +0 -0
  125. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/model/base.py +0 -0
  126. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/model/mixins/callback.py +0 -0
  127. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/model/mixins/debug.py +0 -0
  128. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/model/mixins/logger.py +0 -0
  129. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/nn/mlp.py +0 -0
  130. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/nn/module_dict.py +0 -0
  131. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/nn/module_list.py +0 -0
  132. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/nn/nonlinearity.py +0 -0
  133. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/optimizer.py +0 -0
  134. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/profiler/__init__.py +0 -0
  135. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/profiler/_base.py +0 -0
  136. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/profiler/advanced.py +0 -0
  137. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/profiler/pytorch.py +0 -0
  138. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/profiler/simple.py +0 -0
  139. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/trainer/__init__.py +0 -0
  140. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/trainer/_config.py +0 -0
  141. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/trainer/_runtime_callback.py +0 -0
  142. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/trainer/accelerator.py +0 -0
  143. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/trainer/plugin/__init__.py +0 -0
  144. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/trainer/plugin/base.py +0 -0
  145. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/trainer/plugin/environment.py +0 -0
  146. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/trainer/plugin/io.py +0 -0
  147. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/trainer/plugin/layer_sync.py +0 -0
  148. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/trainer/plugin/precision.py +0 -0
  149. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/trainer/signal_connector.py +0 -0
  150. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/trainer/strategy.py +0 -0
  151. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/util/_environment_info.py +0 -0
  152. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/util/bf16.py +0 -0
  153. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/util/config/__init__.py +0 -0
  154. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/util/config/dtype.py +0 -0
  155. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/util/config/duration.py +0 -0
  156. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/util/environment.py +0 -0
  157. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/util/path.py +0 -0
  158. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/util/seed.py +0 -0
  159. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/util/slurm.py +0 -0
  160. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/src/nshtrainer/util/typed.py +0 -0
  161. {nshtrainer-1.0.0b53 → nshtrainer-1.0.0b55}/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.0.0b53
3
+ Version: 1.0.0b55
4
4
  Summary:
5
5
  Author: Nima Shoghi
6
6
  Author-email: nimashoghi@gmail.com
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "nshtrainer"
3
- version = "1.0.0-beta53"
3
+ version = "1.0.0-beta55"
4
4
  description = ""
5
5
  authors = ["Nima Shoghi <nimashoghi@gmail.com>"]
6
6
  readme = "README.md"
@@ -85,6 +85,7 @@ from nshtrainer.nn import NonlinearityConfig as NonlinearityConfig
85
85
  from nshtrainer.nn import NonlinearityConfigBase as NonlinearityConfigBase
86
86
  from nshtrainer.nn import PReLUConfig as PReLUConfig
87
87
  from nshtrainer.nn import ReLUNonlinearityConfig as ReLUNonlinearityConfig
88
+ from nshtrainer.nn import RNGConfig as RNGConfig
88
89
  from nshtrainer.nn import SigmoidNonlinearityConfig as SigmoidNonlinearityConfig
89
90
  from nshtrainer.nn import SiLUNonlinearityConfig as SiLUNonlinearityConfig
90
91
  from nshtrainer.nn import SoftmaxNonlinearityConfig as SoftmaxNonlinearityConfig
@@ -306,6 +307,7 @@ __all__ = [
306
307
  "ProfilerConfig",
307
308
  "PyTorchProfilerConfig",
308
309
  "RLPSanityChecksCallbackConfig",
310
+ "RNGConfig",
309
311
  "ReLUNonlinearityConfig",
310
312
  "ReduceLROnPlateauConfig",
311
313
  "SLURMEnvironmentPlugin",
@@ -12,6 +12,7 @@ from nshtrainer.lr_scheduler.base import lr_scheduler_registry as lr_scheduler_r
12
12
  from nshtrainer.lr_scheduler.linear_warmup_cosine import (
13
13
  DurationConfig as DurationConfig,
14
14
  )
15
+ from nshtrainer.lr_scheduler.reduce_lr_on_plateau import EpochsConfig as EpochsConfig
15
16
  from nshtrainer.lr_scheduler.reduce_lr_on_plateau import MetricConfig as MetricConfig
16
17
 
17
18
  from . import base as base
@@ -20,6 +21,7 @@ from . import reduce_lr_on_plateau as reduce_lr_on_plateau
20
21
 
21
22
  __all__ = [
22
23
  "DurationConfig",
24
+ "EpochsConfig",
23
25
  "LRSchedulerConfig",
24
26
  "LRSchedulerConfigBase",
25
27
  "LinearWarmupCosineDecayLRSchedulerConfig",
@@ -2,6 +2,7 @@ from __future__ import annotations
2
2
 
3
3
  __codegen__ = True
4
4
 
5
+ from nshtrainer.lr_scheduler.reduce_lr_on_plateau import EpochsConfig as EpochsConfig
5
6
  from nshtrainer.lr_scheduler.reduce_lr_on_plateau import (
6
7
  LRSchedulerConfigBase as LRSchedulerConfigBase,
7
8
  )
@@ -14,6 +15,7 @@ from nshtrainer.lr_scheduler.reduce_lr_on_plateau import (
14
15
  )
15
16
 
16
17
  __all__ = [
18
+ "EpochsConfig",
17
19
  "LRSchedulerConfigBase",
18
20
  "MetricConfig",
19
21
  "ReduceLROnPlateauConfig",
@@ -11,6 +11,7 @@ from nshtrainer.nn import NonlinearityConfig as NonlinearityConfig
11
11
  from nshtrainer.nn import NonlinearityConfigBase as NonlinearityConfigBase
12
12
  from nshtrainer.nn import PReLUConfig as PReLUConfig
13
13
  from nshtrainer.nn import ReLUNonlinearityConfig as ReLUNonlinearityConfig
14
+ from nshtrainer.nn import RNGConfig as RNGConfig
14
15
  from nshtrainer.nn import SigmoidNonlinearityConfig as SigmoidNonlinearityConfig
15
16
  from nshtrainer.nn import SiLUNonlinearityConfig as SiLUNonlinearityConfig
16
17
  from nshtrainer.nn import SoftmaxNonlinearityConfig as SoftmaxNonlinearityConfig
@@ -25,6 +26,7 @@ from nshtrainer.nn.nonlinearity import nonlinearity_registry as nonlinearity_reg
25
26
 
26
27
  from . import mlp as mlp
27
28
  from . import nonlinearity as nonlinearity
29
+ from . import rng as rng
28
30
 
29
31
  __all__ = [
30
32
  "ELUNonlinearityConfig",
@@ -35,6 +37,7 @@ __all__ = [
35
37
  "NonlinearityConfig",
36
38
  "NonlinearityConfigBase",
37
39
  "PReLUConfig",
40
+ "RNGConfig",
38
41
  "ReLUNonlinearityConfig",
39
42
  "SiLUNonlinearityConfig",
40
43
  "SigmoidNonlinearityConfig",
@@ -47,4 +50,5 @@ __all__ = [
47
50
  "mlp",
48
51
  "nonlinearity",
49
52
  "nonlinearity_registry",
53
+ "rng",
50
54
  ]
@@ -0,0 +1,9 @@
1
+ from __future__ import annotations
2
+
3
+ __codegen__ = True
4
+
5
+ from nshtrainer.nn.rng import RNGConfig as RNGConfig
6
+
7
+ __all__ = [
8
+ "RNGConfig",
9
+ ]
@@ -3,7 +3,6 @@ from __future__ import annotations
3
3
  from .mlp import MLP as MLP
4
4
  from .mlp import MLPConfig as MLPConfig
5
5
  from .mlp import ResidualSequential as ResidualSequential
6
- from .mlp import custom_seed_context as custom_seed_context
7
6
  from .module_dict import TypedModuleDict as TypedModuleDict
8
7
  from .module_list import TypedModuleList as TypedModuleList
9
8
  from .nonlinearity import ELUNonlinearityConfig as ELUNonlinearityConfig
@@ -21,3 +20,5 @@ from .nonlinearity import SoftplusNonlinearityConfig as SoftplusNonlinearityConf
21
20
  from .nonlinearity import SoftsignNonlinearityConfig as SoftsignNonlinearityConfig
22
21
  from .nonlinearity import SwishNonlinearityConfig as SwishNonlinearityConfig
23
22
  from .nonlinearity import TanhNonlinearityConfig as TanhNonlinearityConfig
23
+ from .rng import RNGConfig as RNGConfig
24
+ from .rng import rng_context as rng_context
@@ -0,0 +1,23 @@
1
+ from __future__ import annotations
2
+
3
+ import contextlib
4
+
5
+ import nshconfig as C
6
+ import torch
7
+
8
+
9
+ @contextlib.contextmanager
10
+ def rng_context(config: RNGConfig | None):
11
+ with contextlib.ExitStack() as stack:
12
+ if config is not None:
13
+ stack.enter_context(
14
+ torch.random.fork_rng(devices=range(torch.cuda.device_count()))
15
+ )
16
+ torch.manual_seed(config.seed)
17
+
18
+ yield
19
+
20
+
21
+ class RNGConfig(C.Config):
22
+ seed: int
23
+ """Random seed to use for initialization."""
@@ -457,7 +457,21 @@ class Trainer(LightningTrainer):
457
457
  ):
458
458
  filepath = Path(filepath)
459
459
 
460
- super().save_checkpoint(filepath, weights_only, storage_options)
460
+ if self.model is None:
461
+ raise AttributeError(
462
+ "Saving a checkpoint is only possible if a model is attached to the Trainer. Did you call"
463
+ " `Trainer.save_checkpoint()` before calling `Trainer.{fit,validate,test,predict}`?"
464
+ )
465
+ with self.profiler.profile("save_checkpoint"): # type: ignore
466
+ checkpoint = self._checkpoint_connector.dump_checkpoint(weights_only)
467
+ # Update the checkpoint for the trainer hyperparameters
468
+ checkpoint[self.CHECKPOINT_HYPER_PARAMS_KEY] = self.hparams.model_dump(
469
+ mode="json"
470
+ )
471
+ self.strategy.save_checkpoint(
472
+ checkpoint, filepath, storage_options=storage_options
473
+ )
474
+ self.strategy.barrier("Trainer.save_checkpoint")
461
475
 
462
476
  # Save the checkpoint metadata
463
477
  metadata_path = None
File without changes