Я пытаюсь использовать MLFlow для регистрации артефактов в хранилище BLOB-объектов Azure. Хотя запись в dbfs работает нормально, при попытке войти в хранилище BLOB-объектов Azure я вижу только папку с соответствующим runid, но внутри нее нет содержимого.
Вот что я делаю -
Создайте эксперимент из блоков данных Azure, присвойте ему имя и расположение артефактов в виде wasbs: //mlartifacts@myazurestorageaccount.blob.core.windows.net/.
В искровом кластере в разделе переменных environemtn передайте AZURE_STORAGE_ACCESS_KEY = "ValueoftheKey"
- В записной книжке используйте mlflow для регистрации метрик, параметров и, наконец, модели с использованием фрагмента. как показано ниже
with mlflow.start_run():
lr = ElasticNet(alpha=alpha, l1_ratio=l1_ratio, random_state=42)
lr.fit(train_x, train_y)
predicted_qualities = lr.predict(test_x)
(rmse, mae, r2) = eval_metrics(test_y, predicted_qualities)
print("Elasticnet model (alpha=%f, l1_ratio=%f):" % (alpha, l1_ratio))
print(" RMSE: %s" % rmse)
print(" MAE: %s" % mae)
print(" R2: %s" % r2)
mlflow.log_param("alpha", alpha)
mlflow.log_param("l1_ratio", l1_ratio)
mlflow.log_metric("rmse", rmse)
mlflow.log_metric("r2", r2)
mlflow.log_metric("mae", mae)
mlflow.sklearn.log_model(lr, "model")
Конечно, перед его использованием я установил эксперимент, в котором я определил хранилище артефактов как хранилище лазурных блобов
experiment_name = "/Users/user@domain.com/mltestazureblob"
mlflow.set_experiment(experiment_name)
Метрикии параметры, которые я могу из пользовательского интерфейса MLFlow в Databricks, но поскольку мое местоположение артефактов - хранилище BLOB-объектов Azure, я ожидаю, что модель, файлы .pkl и conda.yaml будут находиться вТо есть в хранилище BLOB-объектов Azure, но когда я проверяю его, я вижу только папку, соответствующую идентификатору выполнения эксперимента, но внутри ничего нет.
Я не знаю, что мне не хватает. В случае, если кому-то понадобятся дополнительные сведения, я буду рад предоставить.
Обратите внимание, что все работает нормально, когда я использую местоположение по умолчанию, т.е. dbfs.