Skip to content

Commit 5ded4f0

Browse files
Merge pull request #149 from Exabyte-io/feature/SOF-7632
chore: remove exabyteml
2 parents 05e052c + 574a4f2 commit 5ded4f0

File tree

4 files changed

+2
-221
lines changed

4 files changed

+2
-221
lines changed

express/parsers/exabyteml.py

Lines changed: 0 additions & 22 deletions
This file was deleted.

express/parsers/mixins/exabyteml.py

Lines changed: 0 additions & 30 deletions
This file was deleted.

express/properties/workflow.py

Lines changed: 2 additions & 167 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ def _serialize(self) -> dict:
5151

5252
class PyMLTrainAndPredictWorkflow(WorkflowProperty):
5353
"""
54-
Next generation of ExabyteML. We expect workflows to have a format as follows:
54+
We expect workflows to have a format as follows:
5555
5656
Workflow_Head_Subworkflow - Contains various units which prepare an ML job. For example, we may have the following
5757
units present.
@@ -203,7 +203,7 @@ def is_using_dataset(self):
203203
@property
204204
def workflow_specific_config(self) -> dict:
205205
"""
206-
Generates the specific config for the new implementation of ExabyteML. The remainder of the config is
206+
Generates the specific config for the workflow. The remainder of the config is
207207
generated inside of the parent Workflow class.
208208
209209
Returns:
@@ -224,168 +224,3 @@ def workflow_specific_config(self) -> dict:
224224
}
225225

226226
return specific_config
227-
228-
229-
class ExabyteMLPredictWorkflow(WorkflowProperty):
230-
"""
231-
Legacy implementation of Exabyte ML's predict Workflow property class.
232-
"""
233-
234-
def __init__(self, name, parser, *args, **kwargs):
235-
super().__init__(name, parser, *args, **kwargs)
236-
237-
self.model = self.parser.model
238-
self.targets = self.parser.targets
239-
self.features = self.parser.features
240-
self.scaling_params_per_feature = self.parser.scaling_params_per_feature
241-
242-
@property
243-
def workflow_specific_config(self) -> dict:
244-
"""
245-
Generates the specific config for a legacy ExabyteML workflow. The remainder of the config is generated
246-
inside of the parent Worfklow class.
247-
248-
Returns:
249-
dict
250-
"""
251-
specific_config = {
252-
"units": [
253-
{
254-
"_id": "LCthJ6E2QabYCZqf4",
255-
"name": "ml_predict_subworkflow",
256-
"type": "subworkflow",
257-
"flowchartId": "subworkflow",
258-
"head": True,
259-
}
260-
],
261-
"subworkflows": [
262-
{
263-
"name": "ml_predict_subworkflow",
264-
"isDraft": True,
265-
"application": {
266-
"version": "0.2.0",
267-
"summary": "Exabyte Machine Learning Engine",
268-
"name": "exabyteml",
269-
"shortName": "ml",
270-
"build": "Default",
271-
},
272-
"units": [
273-
{
274-
"status": "idle",
275-
"statusTrack": [],
276-
"head": True,
277-
"flowchartId": "io",
278-
"name": "input",
279-
"application": {
280-
"version": "0.2.0",
281-
"summary": "Exabyte Machine Learning Engine",
282-
"name": "exabyteml",
283-
"shortName": "ml",
284-
"build": "Default",
285-
},
286-
"results": [],
287-
"next": "data_transformation_manipulation",
288-
"source": "api",
289-
"postProcessors": [],
290-
"preProcessors": [],
291-
"subtype": "dataFrame",
292-
"input": [
293-
{
294-
"endpoint": "dataframe",
295-
"endpoint_options": {
296-
"headers": {},
297-
"data": {"features": self.features, "ids": [], "targets": self.targets},
298-
"method": "POST",
299-
"params": {},
300-
"jobId": "",
301-
},
302-
}
303-
],
304-
"type": "io",
305-
"monitors": [],
306-
},
307-
{
308-
"status": "idle",
309-
"statusTrack": [],
310-
"head": False,
311-
"flowchartId": "data_transformation_manipulation",
312-
"name": "clean data",
313-
"monitors": [],
314-
"results": [],
315-
"next": "data_transformation_scale_and_reduce",
316-
"application": {
317-
"version": "0.2.0",
318-
"summary": "Exabyte Machine Learning Engine",
319-
"name": "exabyteml",
320-
"shortName": "ml",
321-
"build": "Default",
322-
},
323-
"postProcessors": [],
324-
"preProcessors": [],
325-
"operationType": "manipulation",
326-
"operation": "data_transformation",
327-
"type": "processing",
328-
"inputData": {
329-
"cleanMissingData": True,
330-
"replaceNoneValuesWith": 0,
331-
"removeDuplicateRows": True,
332-
},
333-
},
334-
{
335-
"status": "idle",
336-
"statusTrack": [],
337-
"head": False,
338-
"flowchartId": "data_transformation_scale_and_reduce",
339-
"name": "scale and reduce",
340-
"monitors": [],
341-
"results": [],
342-
"next": "score",
343-
"application": {
344-
"version": "0.2.0",
345-
"build": "Default",
346-
"name": "exabyteml",
347-
"shortName": "ml",
348-
"summary": "Exabyte Machine Learning Engine",
349-
},
350-
"postProcessors": [],
351-
"preProcessors": [],
352-
"operationType": "scale_and_reduce",
353-
"operation": "data_transformation",
354-
"type": "processing",
355-
"inputData": {
356-
"scaler": "standard_scaler",
357-
"perFeature": self.scaling_params_per_feature,
358-
},
359-
},
360-
{
361-
"status": "idle",
362-
"statusTrack": [],
363-
"executable": {"name": "score"},
364-
"flowchartId": "score",
365-
"name": "score",
366-
"head": False,
367-
"results": [{"name": "predicted_properties"}],
368-
"application": {
369-
"version": "0.2.0",
370-
"build": "Default",
371-
"name": "exabyteml",
372-
"shortName": "ml",
373-
"summary": "Exabyte Machine Learning Engine",
374-
},
375-
"postProcessors": [],
376-
"preProcessors": [],
377-
"context": {},
378-
"input": [],
379-
"flavor": {"name": "score"},
380-
"type": "execution",
381-
"monitors": [{"name": "standard_output"}],
382-
},
383-
],
384-
"model": self.model,
385-
"_id": "LCthJ6E2QabYCZqf4",
386-
"properties": self.targets,
387-
}
388-
],
389-
"properties": self.targets,
390-
}
391-
return specific_config

express/settings.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@
2929
},
3030
"material": {"reference": "express.properties.material.Material"},
3131
"symmetry": {"reference": "express.properties.non_scalar.symmetry.Symmetry"},
32-
"workflow:ml_predict": {"reference": "express.properties.workflow.ExabyteMLPredictWorkflow"},
3332
"workflow:pyml_predict": {"reference": "express.properties.workflow.PyMLTrainAndPredictWorkflow"},
3433
"phonon_dos": {"reference": "express.properties.non_scalar.two_dimensional_plot.phonon_dos.PhononDOS"},
3534
"phonon_dispersions": {
@@ -70,7 +69,6 @@
7069
"vasp": "express.parsers.apps.vasp.parser.VaspParser",
7170
"nwchem": "express.parsers.apps.nwchem.parser.NwchemParser",
7271
"structure": "express.parsers.structure.StructureParser",
73-
"exabyteml": "express.parsers.exabyteml.ExabyteMLParser",
7472
}
7573

7674
# Used to round to zero by default

0 commit comments

Comments
 (0)