123456789101112131415161718192021222324252627 |
- import mlflow
- import os
- import numpy as np
- import urllib.parse
- def get_prev_run(function, params, tags=None, git_commit=None):
- query = 'attributes.status = "FINISHED"'
- query += ' and tags."function" = "{}"'.format(function)
- for key, val in params.items():
- query += ' and '
- query += 'params.{} = "{}"'.format(key, val)
- if tags:
- for key, val in tags.items():
- query += ' and '
- query += 'tags."{}" = "{}"'.format(key, val)
- runs = mlflow.search_runs(filter_string=query)
- if runs.empty:
- return None
- else:
- # TODO should check git_commit
- return mlflow.tracking.MlflowClient().get_run(
- runs.iloc[0].loc['run_id'])
- def load_uri(uri):
- url_data = urllib.parse.urlparse(uri)
- path = urllib.parse.unquote(url_data.path)
- return np.load(path)
|