我发现删除 arun
只会将状态从 更改active
为deleted
,因为如果按 搜索,则运行在 UI 中仍然可见deleted
。
是否可以从 UI 中删除 arun
以节省空间?删除运行时,是否也删除了与运行相对应的工件?
如果没有,是否可以通过 rest 调用删除运行?
我发现删除 arun
只会将状态从 更改active
为deleted
,因为如果按 搜索,则运行在 UI 中仍然可见deleted
。
是否可以从 UI 中删除 arun
以节省空间?删除运行时,是否也删除了与运行相对应的工件?
如果没有,是否可以通过 rest 调用删除运行?
您无法通过 Web UI 执行此操作,但可以从 python 终端执行此操作
import mlflow
mlflow.delete_experiment(69)
其中 69 是实验 ID
接受的答案确实删除了实验,而不是实验的运行。
为了删除目录,可以使用 mlflow API。这是删除所有已删除运行的脚本:
import mlflow
import shutil
def get_run_dir(artifacts_uri):
return artifacts_uri[7:-10]
def remove_run_dir(run_dir):
shutil.rmtree(run_dir, ignore_errors=True)
experiment_id = 1
deleted_runs = 2
exp = mlflow.tracking.MlflowClient(tracking_uri='./mlflow/mlruns')
runs = exp.search_runs(str(experiment_id), run_view_type=deleted_runs)
_ = [remove_run_dir(get_run_dir(run.info.artifact_uri)) for run in runs]