You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm trying to get metadata from an MLPipeline object that was present in the JSON pipeline annotation that was loaded. For example, the annotation has a metadata.name field that I'd like to access from the pipeline.
What I Did
In the following example, I would expect that the MLPipeline has a metadata dict which has name key, just like the JSON. But it doesn't.
$ mkdir -p mlprimitives mlpipelines
$ curl -s https://raw.githubusercontent.com/MLBazaar/MLPrimitives/master/mlprimitives/primitives/sklearn.ensemble.RandomForestRegressor.json -o mlprimitives/sklearn.ensemble.RandomForestRegressor.json
$ curl -s https://raw.githubusercontent.com/MLBazaar/MLPrimitives/master/mlprimitives/pipelines/sklearn.ensemble.RandomForestRegressor.json -o mlpipelines/sklearn.ensemble.RandomForestRegressor.json
$ jq .metadata.name mlpipelines/sklearn.ensemble.RandomForestRegressor.json
"sklearn.ensemble.RandomForestRegressor"
$ python
Python 3.8.3 (default, Jul 20 2020, 16:43:14)
[Clang 11.0.3 (clang-1103.0.32.62)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from mlblocks import load_pipeline, MLPipeline
>>> pipeline = MLPipeline(load_pipeline('sklearn.ensemble.RandomForestRegressor'))
>>> pipeline.metadata
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'MLPipeline' object has no attribute 'metadata'
Suggestions
Explicitly support persisting metadata on the MLPipeline object (and presumably on underlying MLBlock objects)
Raise an error of the JSON input contains unused (unsupported) keys
Guarantee that MLPipeline.load and MLPipeline.save are inverse operations, i.e. that no data is lost (currently metadata fields are lost)
The text was updated successfully, but these errors were encountered:
Description
I'm trying to get metadata from an
MLPipeline
object that was present in the JSON pipeline annotation that was loaded. For example, the annotation has ametadata.name
field that I'd like to access from the pipeline.What I Did
In the following example, I would expect that the
MLPipeline
has ametadata
dict which hasname
key, just like the JSON. But it doesn't.Suggestions
MLPipeline
object (and presumably on underlyingMLBlock
objects)MLPipeline.load
andMLPipeline.save
are inverse operations, i.e. that no data is lost (currently metadata fields are lost)The text was updated successfully, but these errors were encountered: