omniopt2 8359__tar.gz → 8361__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.

Potentially problematic release.


This version of omniopt2 might be problematic. Click here for more details.

Files changed (40) hide show
  1. {omniopt2-8359 → omniopt2-8361}/.omniopt.py +8 -20
  2. {omniopt2-8359 → omniopt2-8361}/PKG-INFO +1 -1
  3. {omniopt2-8359 → omniopt2-8361}/omniopt2.egg-info/PKG-INFO +1 -1
  4. {omniopt2-8359 → omniopt2-8361}/pyproject.toml +1 -1
  5. {omniopt2-8359 → omniopt2-8361}/.colorfunctions.sh +0 -0
  6. {omniopt2-8359 → omniopt2-8361}/.dockerignore +0 -0
  7. {omniopt2-8359 → omniopt2-8361}/.general.sh +0 -0
  8. {omniopt2-8359 → omniopt2-8361}/.gitignore +0 -0
  9. {omniopt2-8359 → omniopt2-8361}/.helpers.py +0 -0
  10. {omniopt2-8359 → omniopt2-8361}/.omniopt_plot_cpu_ram_usage.py +0 -0
  11. {omniopt2-8359 → omniopt2-8361}/.omniopt_plot_general.py +0 -0
  12. {omniopt2-8359 → omniopt2-8361}/.omniopt_plot_gpu_usage.py +0 -0
  13. {omniopt2-8359 → omniopt2-8361}/.omniopt_plot_kde.py +0 -0
  14. {omniopt2-8359 → omniopt2-8361}/.omniopt_plot_scatter.py +0 -0
  15. {omniopt2-8359 → omniopt2-8361}/.omniopt_plot_scatter_generation_method.py +0 -0
  16. {omniopt2-8359 → omniopt2-8361}/.omniopt_plot_scatter_hex.py +0 -0
  17. {omniopt2-8359 → omniopt2-8361}/.omniopt_plot_time_and_exit_code.py +0 -0
  18. {omniopt2-8359 → omniopt2-8361}/.omniopt_plot_trial_index_result.py +0 -0
  19. {omniopt2-8359 → omniopt2-8361}/.omniopt_plot_worker.py +0 -0
  20. {omniopt2-8359 → omniopt2-8361}/.random_generator.py +0 -0
  21. {omniopt2-8359 → omniopt2-8361}/.shellscript_functions +0 -0
  22. {omniopt2-8359 → omniopt2-8361}/.tests/pylint.rc +0 -0
  23. {omniopt2-8359 → omniopt2-8361}/.tpe.py +0 -0
  24. {omniopt2-8359 → omniopt2-8361}/LICENSE +0 -0
  25. {omniopt2-8359 → omniopt2-8361}/MANIFEST.in +0 -0
  26. {omniopt2-8359 → omniopt2-8361}/README.md +0 -0
  27. {omniopt2-8359 → omniopt2-8361}/apt-dependencies.txt +0 -0
  28. {omniopt2-8359 → omniopt2-8361}/omniopt +0 -0
  29. {omniopt2-8359 → omniopt2-8361}/omniopt2.egg-info/SOURCES.txt +0 -0
  30. {omniopt2-8359 → omniopt2-8361}/omniopt2.egg-info/dependency_links.txt +0 -0
  31. {omniopt2-8359 → omniopt2-8361}/omniopt2.egg-info/requires.txt +0 -0
  32. {omniopt2-8359 → omniopt2-8361}/omniopt2.egg-info/top_level.txt +0 -0
  33. {omniopt2-8359 → omniopt2-8361}/omniopt_docker +0 -0
  34. {omniopt2-8359 → omniopt2-8361}/omniopt_evaluate +0 -0
  35. {omniopt2-8359 → omniopt2-8361}/omniopt_plot +0 -0
  36. {omniopt2-8359 → omniopt2-8361}/omniopt_share +0 -0
  37. {omniopt2-8359 → omniopt2-8361}/requirements.txt +0 -0
  38. {omniopt2-8359 → omniopt2-8361}/setup.cfg +0 -0
  39. {omniopt2-8359 → omniopt2-8361}/setup.py +0 -0
  40. {omniopt2-8359 → omniopt2-8361}/test_requirements.txt +0 -0
@@ -603,7 +603,7 @@ def _get_debug_json(time_str: str, msg: str) -> str:
603
603
 
604
604
  def print_stack_paths() -> None:
605
605
  stack = inspect.stack()[1:] # skip current frame
606
- stack.reverse() # vom Hauptprogramm zur tiefsten Funktion
606
+ stack.reverse()
607
607
 
608
608
  last_filename = None
609
609
  for depth, frame_info in enumerate(stack):
@@ -2057,15 +2057,6 @@ def run_live_share_command(force: bool = False) -> Tuple[str, str]:
2057
2057
 
2058
2058
  return "", ""
2059
2059
 
2060
- #def extract_and_print_qr(text: str) -> None:
2061
- # match = re.search(r"(https?://\S+|\b[\w.-]+@[\w.-]+\.\w+\b|\b\d{10,}\b)", text)
2062
- # if match:
2063
- # data = match.group(0)
2064
- # qr = qrcode.QRCode(box_size=1, error_correction=qrcode.constants.ERROR_CORRECT_L, border=0)
2065
- # qr.add_data(data)
2066
- # qr.make()
2067
- # qr.print_ascii(out=sys.stdout)
2068
-
2069
2060
  def force_live_share() -> bool:
2070
2061
  if args.live_share:
2071
2062
  return live_share(True)
@@ -2085,7 +2076,6 @@ def live_share(force: bool = False, text_and_qr: bool = False) -> bool:
2085
2076
  if text_and_qr:
2086
2077
  if stderr:
2087
2078
  print_green(stderr)
2088
- #extract_and_print_qr(stderr)
2089
2079
  else:
2090
2080
  print_red("This call should have shown the CURL, but didnt. Stderr: {stderr}, stdout: {stdout}")
2091
2081
  if stdout:
@@ -3698,7 +3688,7 @@ def write_failed_logs(data_dict: Optional[dict], error_description: str = "") ->
3698
3688
  data = [list(data_dict.values())]
3699
3689
  else:
3700
3690
  print_debug("No data_dict provided, writing only error description.")
3701
- data = [[]] # leeres Datenfeld, nur error_description kommt dazu
3691
+ data = [[]]
3702
3692
 
3703
3693
  if error_description:
3704
3694
  headers.append('error_description')
@@ -3937,7 +3927,7 @@ def _write_job_infos_csv_build_headline(parameters_keys: List[str], extra_vars_n
3937
3927
  "run_time",
3938
3928
  "program_string",
3939
3929
  *parameters_keys,
3940
- *arg_result_names, # arg_result_names muss global definiert sein
3930
+ *arg_result_names,
3941
3931
  "exit_code",
3942
3932
  "signal",
3943
3933
  "hostname",
@@ -7813,8 +7803,10 @@ def get_batched_arms(nr_of_jobs_to_get: int) -> list:
7813
7803
  print_debug(f"get_batched_arms: Attempt {attempts + 1}: requesting {remaining} more arm(s).")
7814
7804
 
7815
7805
  print_debug("get pending observations")
7806
+ t0 = time.time()
7816
7807
  pending_observations = get_pending_observation_features(experiment=ax_client.experiment)
7817
- print_debug("got pending observations")
7808
+ dt = time.time() - t0
7809
+ print_debug(f"got pending observations: {pending_observations} (took {dt:.2f} seconds)")
7818
7810
 
7819
7811
  print_debug("getting global_gs.gen()")
7820
7812
  batched_generator_run = global_gs.gen(
@@ -7824,7 +7816,6 @@ def get_batched_arms(nr_of_jobs_to_get: int) -> list:
7824
7816
  )
7825
7817
  print_debug(f"got global_gs.gen(): {batched_generator_run}")
7826
7818
 
7827
- # Inline rekursiv entpacken bis flach
7828
7819
  depth = 0
7829
7820
  path = "batched_generator_run"
7830
7821
  while isinstance(batched_generator_run, (list, tuple)) and len(batched_generator_run) > 0:
@@ -7875,7 +7866,6 @@ def generate_trials(n: int, recursion: bool) -> Tuple[Dict[int, Any], bool]:
7875
7866
  if cnt >= n:
7876
7867
  break
7877
7868
 
7878
- # 🔹 Erzeuge einen komplett neuen Arm, damit Ax den Namen vergibt
7879
7869
  try:
7880
7870
  arm = Arm(parameters=arm.parameters)
7881
7871
  except Exception as arm_err:
@@ -8625,7 +8615,7 @@ def create_step(model_name: str, _num_trials: int = -1, index: Optional[int] = N
8625
8615
  model_enum = get_model_from_name(model_name)
8626
8616
 
8627
8617
  return GenerationStep(
8628
- generator=model_enum, # ✅ neue API
8618
+ generator=model_enum,
8629
8619
  num_trials=_num_trials,
8630
8620
  max_parallelism=1000 * max_eval + 1000,
8631
8621
  model_kwargs=get_model_kwargs(),
@@ -9629,7 +9619,7 @@ def load_experiment_state() -> None:
9629
9619
  arms_seen = {}
9630
9620
  for arm in data.get("arms", []):
9631
9621
  name = arm.get("name")
9632
- sig = arm.get("parameters") # grobe Signatur
9622
+ sig = arm.get("parameters")
9633
9623
  if not name:
9634
9624
  continue
9635
9625
  if name in arms_seen and arms_seen[name] != sig:
@@ -9638,7 +9628,6 @@ def load_experiment_state() -> None:
9638
9628
  arm["name"] = new_name
9639
9629
  arms_seen[name] = sig
9640
9630
 
9641
- # Gefilterten Zustand speichern und laden
9642
9631
  temp_path = state_path + ".no_conflicts.json"
9643
9632
  with open(temp_path, encoding="utf-8", mode="w") as f:
9644
9633
  json.dump(data, f)
@@ -11133,7 +11122,6 @@ def stack_trace_wrapper(func: Any, regex: Any = None) -> Any:
11133
11122
  pattern = re.compile(regex) if regex else None
11134
11123
 
11135
11124
  def wrapped(*args, **kwargs):
11136
- # nur prüfen ob diese Funktion den Trigger erfüllt
11137
11125
  if pattern and not pattern.search(func.__name__):
11138
11126
  return func(*args, **kwargs)
11139
11127
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: omniopt2
3
- Version: 8359
3
+ Version: 8361
4
4
  Summary: Automatic highly parallelized hyperparameter optimizer based on Ax/Botorch
5
5
  Home-page: https://scads.ai/transfer-2/verfuegbare-software-dienste-en/omniopt/
6
6
  Author: Norman Koch
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: omniopt2
3
- Version: 8359
3
+ Version: 8361
4
4
  Summary: Automatic highly parallelized hyperparameter optimizer based on Ax/Botorch
5
5
  Home-page: https://scads.ai/transfer-2/verfuegbare-software-dienste-en/omniopt/
6
6
  Author: Norman Koch
@@ -5,7 +5,7 @@ authors = [
5
5
  {email = "norman.koch@tu-dresden.de"},
6
6
  {name = "Norman Koch"}
7
7
  ]
8
- version = "8359"
8
+ version = "8361"
9
9
 
10
10
  readme = "README.md"
11
11
  dynamic = ["dependencies"]
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes