code-loader 1.0.181.dev5__tar.gz → 1.0.182__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.181.dev5 → code_loader-1.0.182}/PKG-INFO +1 -1
  2. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/inner_leap_binder/leapbinder.py +1 -1
  3. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/leaploader.py +11 -11
  4. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/leaploaderbase.py +2 -2
  5. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/pyproject.toml +1 -1
  6. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/LICENSE +0 -0
  7. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/README.md +0 -0
  8. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/__init__.py +0 -0
  9. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/contract/__init__.py +0 -0
  10. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/contract/datasetclasses.py +0 -0
  11. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/contract/enums.py +0 -0
  12. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/contract/exceptions.py +0 -0
  13. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/contract/mapping.py +0 -0
  14. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/contract/responsedataclasses.py +0 -0
  15. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/contract/sim_config.py +0 -0
  16. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/contract/visualizer_classes.py +0 -0
  17. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/default_losses.py +0 -0
  18. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/default_metrics.py +0 -0
  19. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/experiment_api/__init__.py +0 -0
  20. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/experiment_api/api.py +0 -0
  21. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/experiment_api/cli_config_utils.py +0 -0
  22. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/experiment_api/client.py +0 -0
  23. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/experiment_api/epoch.py +0 -0
  24. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/experiment_api/experiment.py +0 -0
  25. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/experiment_api/experiment_context.py +0 -0
  26. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/experiment_api/types.py +0 -0
  27. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/experiment_api/utils.py +0 -0
  28. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/experiment_api/workingspace_config_utils.py +0 -0
  29. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/inner_leap_binder/__init__.py +0 -0
  30. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/inner_leap_binder/leapbinder_decorators.py +0 -0
  31. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/mixpanel_tracker.py +0 -0
  32. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/plot_functions/__init__.py +0 -0
  33. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/plot_functions/plot_functions.py +0 -0
  34. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/plot_functions/visualize.py +0 -0
  35. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/utils.py +0 -0
  36. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/visualizers/__init__.py +0 -0
  37. {code_loader-1.0.181.dev5 → code_loader-1.0.182}/code_loader/visualizers/default_visualizers.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: code-loader
3
- Version: 1.0.181.dev5
3
+ Version: 1.0.182
4
4
  Summary:
5
5
  Home-page: https://github.com/tensorleap/code-loader
6
6
  License: MIT
@@ -694,7 +694,7 @@ class LeapBinder:
694
694
  for handler in self.setup_container.inputs:
695
695
  out1 = handler.function(preprocess_response.sample_ids[0], preprocess_response)
696
696
  out2 = handler.function(preprocess_response.sample_ids[0], preprocess_response)
697
- if not np.array_equal(out1, out2):
697
+ if not np.allclose(out1, out2):
698
698
  raise Exception(
699
699
  "Simulation '{}': encoder '{}' is non-deterministic — consecutive calls with seed=0 returned different outputs".format(
700
700
  sim.name, handler.name
@@ -328,7 +328,7 @@ class LeapLoader(LeapLoaderBase):
328
328
  for handler in global_leap_binder.setup_container.inputs:
329
329
  out1 = handler.function(preprocess_response.sample_ids[0], preprocess_response)
330
330
  out2 = handler.function(preprocess_response.sample_ids[0], preprocess_response)
331
- if not np.array_equal(out1, out2):
331
+ if not np.allclose(out1, out2):
332
332
  raise ValueError(
333
333
  "Encoder '{}' is non-deterministic: consecutive calls with seed=0 returned different outputs".format(
334
334
  handler.name
@@ -345,8 +345,8 @@ class LeapLoader(LeapLoaderBase):
345
345
  result_payloads.append(test_result)
346
346
  return result_payloads
347
347
 
348
- def run_simulation_check(self, sim_name):
349
- # type: (str) -> Dict[str, npt.NDArray[np.float32]]
348
+ def run_simulation(self, sim_name, params=None, n_samples=1, seed=0):
349
+ # type: (str, Optional[Dict[str, Any]], int, int) -> Dict[str, npt.NDArray[np.float32]]
350
350
  self.exec_script()
351
351
  sim = next(
352
352
  (s for s in global_leap_binder.setup_container.simulations if s.name == sim_name),
@@ -354,9 +354,9 @@ class LeapLoader(LeapLoaderBase):
354
354
  )
355
355
  if sim is None:
356
356
  raise ValueError("No simulation registered with name '{}'".format(sim_name))
357
- kwargs = sample_sim_params(sim.sim_config)
358
- kwargs["N"] = 1
359
- kwargs["seed"] = 0
357
+ kwargs = dict(params) if params is not None else sample_sim_params(sim.sim_config)
358
+ kwargs["N"] = n_samples
359
+ kwargs["seed"] = seed
360
360
  _simulation_context["active"] = True
361
361
  try:
362
362
  sim_preprocess = sim.function(**kwargs)
@@ -364,11 +364,11 @@ class LeapLoader(LeapLoaderBase):
364
364
  _simulation_context["active"] = False
365
365
  sim_preprocess.state = DataStateType.additional
366
366
  sim_preprocess.tl_generated = True
367
- sim_preprocess.sample_ids = [0]
368
- result = {}
369
- for handler in global_leap_binder.setup_container.inputs:
370
- result[handler.name] = handler.function(sim_preprocess.sample_ids[0], sim_preprocess)
371
- return result
367
+ per_encoder = {handler.name: [] for handler in global_leap_binder.setup_container.inputs}
368
+ for sample_id in sim_preprocess.sample_ids:
369
+ for handler in global_leap_binder.setup_container.inputs:
370
+ per_encoder[handler.name].append(handler.function(sample_id, sim_preprocess))
371
+ return {name: np.stack(arrays) for name, arrays in per_encoder.items()}
372
372
 
373
373
  @staticmethod
374
374
  def _get_all_dataset_base_handlers() -> List[Union[DatasetBaseHandler, MetadataHandler]]:
@@ -154,8 +154,8 @@ class LeapLoaderBase:
154
154
  pass
155
155
 
156
156
  @abstractmethod
157
- def run_simulation_check(self, sim_name):
158
- # type: (str) -> Dict[str, Any]
157
+ def run_simulation(self, sim_name, params=None, n_samples=1, seed=0):
158
+ # type: (str, Optional[Dict[str, Any]], int, int) -> Dict[str, Any]
159
159
  pass
160
160
 
161
161
  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.181.dev5"
4
+ version = "1.0.182"
5
5
  description = ""
6
6
  authors = ["dorhar <doron.harnoy@tensorleap.ai>"]
7
7
  license = "MIT"