Andrea Maldonado commited on
Commit
cec06cf
·
1 Parent(s): 22e135d

export GenerateEventLogs for PyPI

Browse files
.github/workflows/test_gedi.yml CHANGED
@@ -242,4 +242,28 @@ jobs:
242
 
243
  - name: Compare output
244
  run:
245
- diff data/validation/2_ense_rmcv_feat.csv output/test/igedi_table_1/2_ense_rmcv_feat.csv
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
242
 
243
  - name: Compare output
244
  run:
245
+ diff data/validation/2_ense_rmcv_feat.csv output/test/igedi_table_1/2_ense_rmcv_feat.csv
246
+
247
+ test_pypible_generate_event_logs:
248
+ runs-on: ubuntu-latest
249
+ steps:
250
+ - name: Checkout code
251
+ uses: actions/checkout@v4
252
+
253
+ - name: Set up Python
254
+ uses: actions/setup-python@v5
255
+ with:
256
+ python-version: 3.9
257
+
258
+ - name: Install dependencies
259
+ run: |
260
+ sudo apt-get install build-essential python3 python3-dev
261
+
262
+ - name: Install feeed
263
+ run: |
264
+ python -m pip install --upgrade pip
265
+ pip install .
266
+
267
+ - name: Run test
268
+ run:
269
+ python -c "from gedi import GenerateEventLogs;default_params = {'generator_params': {'experiment': {'ratio_top_20_variants': 0.2, 'epa_normalized_sequence_entropy_linear_forgetting': 0.4}, 'config_space': {'mode': [5, 20], 'sequence': [0.01, 1], 'choice': [0.01, 1], 'parallel': [0.01, 1], 'loop': [0.01, 1], 'silent': [0.01, 1], 'lt_dependency': [0.01, 1], 'num_traces': [10, 101], 'duplicate': [0], 'or': [0]}, 'n_trials': 50}}; GenerateEventLogs(default_params)"
gedi/__init__.py CHANGED
@@ -1,3 +1,4 @@
1
  from .run import gedi
 
2
 
3
- __all__=['gedi']
 
1
  from .run import gedi
2
+ from .generator import GenerateEventLogs
3
 
4
+ __all__=['gedi', 'GenerateEventLogs']
gedi/generator.py CHANGED
@@ -135,8 +135,11 @@ def add_extension_before_traces(xes_file):
135
 
136
  class GenerateEventLogs():
137
  # TODO: Clarify nomenclature: experiment, task, objective as in notebook (https://github.com/lmu-dbs/gedi/blob/main/notebooks/grid_objectives.ipynb)
138
- def __init__(self, params):
139
  print("=========================== Generator ==========================")
 
 
 
140
  print(f"INFO: Running with {params}")
141
  start = dt.now()
142
  if params.get(OUTPUT_PATH) is None:
@@ -188,7 +191,7 @@ class GenerateEventLogs():
188
  write_xes(temp['log'], save_path)
189
  add_extension_before_traces(save_path)
190
  print("SUCCESS: Saved generated event log in", save_path)
191
- print(f"SUCCESS: Generator took {dt.now()-start} sec. Generated {len(self.log_config)} event logs.")
192
  print(f" Saved generated logs in {self.output_path}")
193
  print("========================= ~ Generator ==========================")
194
 
 
135
 
136
  class GenerateEventLogs():
137
  # TODO: Clarify nomenclature: experiment, task, objective as in notebook (https://github.com/lmu-dbs/gedi/blob/main/notebooks/grid_objectives.ipynb)
138
+ def __init__(self, params=None) -> None:
139
  print("=========================== Generator ==========================")
140
+ if params is None:
141
+ default_params = {'generator_params': {'experiment': {'ratio_top_20_variants': 0.2, 'epa_normalized_sequence_entropy_linear_forgetting': 0.4}, 'config_space': {'mode': [5, 20], 'sequence': [0.01, 1], 'choice': [0.01, 1], 'parallel': [0.01, 1], 'loop': [0.01, 1], 'silent': [0.01, 1], 'lt_dependency': [0.01, 1], 'num_traces': [10, 101], 'duplicate': [0], 'or': [0]}, 'n_trials': 50}}
142
+ raise TypeError(f"Missing 'params'. Please provide a dictionary with generator parameters as so: {default_params}. See https://github.com/lmu-dbs/gedi for more info.")
143
  print(f"INFO: Running with {params}")
144
  start = dt.now()
145
  if params.get(OUTPUT_PATH) is None:
 
191
  write_xes(temp['log'], save_path)
192
  add_extension_before_traces(save_path)
193
  print("SUCCESS: Saved generated event log in", save_path)
194
+ print(f"SUCCESS: Generator took {dt.now()-start} sec. Generated {len(self.log_config)} event log(s).")
195
  print(f" Saved generated logs in {self.output_path}")
196
  print("========================= ~ Generator ==========================")
197