code-loader 1.0.185__tar.gz → 1.0.186.dev1__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 (37) hide show
  1. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/PKG-INFO +3 -3
  2. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/leaploader.py +12 -8
  3. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/leaploaderbase.py +3 -2
  4. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/pyproject.toml +1 -1
  5. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/LICENSE +0 -0
  6. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/README.md +0 -0
  7. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/__init__.py +0 -0
  8. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/contract/__init__.py +0 -0
  9. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/contract/datasetclasses.py +0 -0
  10. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/contract/enums.py +0 -0
  11. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/contract/exceptions.py +0 -0
  12. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/contract/mapping.py +0 -0
  13. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/contract/responsedataclasses.py +0 -0
  14. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/contract/sim_config.py +0 -0
  15. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/contract/visualizer_classes.py +0 -0
  16. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/default_losses.py +0 -0
  17. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/default_metrics.py +0 -0
  18. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/experiment_api/__init__.py +0 -0
  19. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/experiment_api/api.py +0 -0
  20. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/experiment_api/cli_config_utils.py +0 -0
  21. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/experiment_api/client.py +0 -0
  22. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/experiment_api/epoch.py +0 -0
  23. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/experiment_api/experiment.py +0 -0
  24. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/experiment_api/experiment_context.py +0 -0
  25. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/experiment_api/types.py +0 -0
  26. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/experiment_api/utils.py +0 -0
  27. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/experiment_api/workingspace_config_utils.py +0 -0
  28. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/inner_leap_binder/__init__.py +0 -0
  29. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/inner_leap_binder/leapbinder.py +0 -0
  30. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/inner_leap_binder/leapbinder_decorators.py +0 -0
  31. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/mixpanel_tracker.py +0 -0
  32. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/plot_functions/__init__.py +0 -0
  33. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/plot_functions/plot_functions.py +0 -0
  34. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/plot_functions/visualize.py +0 -0
  35. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/utils.py +0 -0
  36. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/visualizers/__init__.py +0 -0
  37. {code_loader-1.0.185 → code_loader-1.0.186.dev1}/code_loader/visualizers/default_visualizers.py +0 -0
@@ -1,7 +1,8 @@
1
- Metadata-Version: 2.3
1
+ Metadata-Version: 2.1
2
2
  Name: code-loader
3
- Version: 1.0.185
3
+ Version: 1.0.186.dev1
4
4
  Summary:
5
+ Home-page: https://github.com/tensorleap/code-loader
5
6
  License: MIT
6
7
  Author: dorhar
7
8
  Author-email: doron.harnoy@tensorleap.ai
@@ -19,7 +20,6 @@ Requires-Dist: numpy (>=2.3.2,<3.0.0) ; python_version >= "3.11" and python_vers
19
20
  Requires-Dist: psutil (>=5.9.5,<6.0.0)
20
21
  Requires-Dist: pyyaml (>=6.0.2,<7.0.0)
21
22
  Requires-Dist: requests (>=2.32.3,<3.0.0)
22
- Project-URL: Homepage, https://github.com/tensorleap/code-loader
23
23
  Project-URL: Repository, https://github.com/tensorleap/code-loader
24
24
  Description-Content-Type: text/markdown
25
25
 
@@ -446,8 +446,8 @@ class LeapLoader(LeapLoaderBase):
446
446
  return result_payloads
447
447
 
448
448
  def run_simulation(self, sim_name, params=None, n_samples=1, seed=0,
449
- sample_ids=None, extend_preprocess=True):
450
- # type: (str, Optional[Dict[str, Any]], int, int, Optional[List[str]], bool) -> Dict[str, Any]
449
+ sample_ids=None, extend_preprocess=True, allow_partial=False):
450
+ # type: (str, Optional[Dict[str, Any]], int, int, Optional[List[str]], bool, bool) -> Dict[str, Any]
451
451
  # extend_preprocess=True (default): also extend preprocess_result[additional] with the
452
452
  # new synthetic sample_ids (producer-side behavior — synthetic worker needs this for
453
453
  # enumeration / data_length tracking). Pass False from consumer-side populators that
@@ -476,17 +476,21 @@ class LeapLoader(LeapLoaderBase):
476
476
  per_encoder[handler.name].append(handler.function(sample_id, sim_preprocess))
477
477
  encoded = {name: np.stack(arrays) for name, arrays in per_encoder.items()}
478
478
  if sample_ids is not None:
479
- if len(sample_ids) != len(original_sample_ids):
480
- raise ValueError(
481
- "sample_ids length ({}) does not match simulation output length ({})".format(
482
- len(sample_ids), len(original_sample_ids)
483
- )
484
- )
485
479
  for sid in sample_ids:
486
480
  if not isinstance(sid, str):
487
481
  raise TypeError(
488
482
  "All sample_ids must be of type str. Got: {}".format(type(sid))
489
483
  )
484
+ if len(sample_ids) != len(original_sample_ids):
485
+ if not allow_partial:
486
+ raise ValueError(
487
+ "sample_ids length ({}) does not match simulation output length ({})".format(
488
+ len(sample_ids), len(original_sample_ids)
489
+ )
490
+ )
491
+ n_bound = min(len(sample_ids), len(original_sample_ids))
492
+ sample_ids = list(sample_ids)[:n_bound]
493
+ original_sample_ids = original_sample_ids[:n_bound]
490
494
  for synth_id, original_local_id in zip(sample_ids, original_sample_ids):
491
495
  self._synthetic_lookup[synth_id] = (sim_preprocess, original_local_id)
492
496
  if extend_preprocess:
@@ -154,8 +154,9 @@ class LeapLoaderBase:
154
154
  pass
155
155
 
156
156
  @abstractmethod
157
- def run_simulation(self, sim_name, params=None, n_samples=1, seed=0, sample_ids=None):
158
- # type: (str, Optional[Dict[str, Any]], int, int, Optional[List[str]]) -> Dict[str, Any]
157
+ def run_simulation(self, sim_name, params=None, n_samples=1, seed=0, sample_ids=None,
158
+ extend_preprocess=True, allow_partial=False):
159
+ # type: (str, Optional[Dict[str, Any]], int, int, Optional[List[str]], bool, bool) -> Dict[str, Any]
159
160
  pass
160
161
 
161
162
  def is_custom_latent_space(self) -> bool:
@@ -1,7 +1,7 @@
1
1
  [tool.poetry]
2
2
  name = "code-loader"
3
3
 
4
- version = "1.0.185"
4
+ version = "1.0.186.dev1"
5
5
  description = ""
6
6
  authors = ["dorhar <doron.harnoy@tensorleap.ai>"]
7
7
  license = "MIT"