MLflow, установить все незарегистрированные моделиPython

Программы на Python
Ответить
Anonymous
 MLflow, установить все незарегистрированные модели

Сообщение Anonymous »

Я использую MLflow (3.7.0) с PyTorch (2.5.1 + CUDA). У меня есть функция, которая сохраняет модель, если она улучшилась по сравнению с предыдущей эпохой.
Я сохраняю модель следующим образом:
mlflow.pytorch.log_model(
model_cpu,
name=name,
step=epoch,
signature=self._create_mlflow_signature(model_cpu),
await_registration_for=0
)

Теперь я хочу получить нужные мне модели (мне не нужно их регистрировать) и использовать их для прогнозирования. Для этого мне нужно знать их имя и run_id. На данный момент я загружаю нужные мне модели так:

import mlflow

mlflow.set_tracking_uri("http://localhost:5000")

run_id = 'c1fc86256ed64b6ea1c71ea4122f07be'
model_name = 'checkpoint_epoch_2' # name model

model_a = mlflow.pytorch.load_model(
f"runs:/{run_id}/{model_name}"
)

Я пытался получить список артефактов, используя следующий код:
from mlflow.tracking import MlflowClient

mlflow.set_tracking_uri("http://localhost:5000") # I use mlflow from localhost

client = MlflowClient()

experiment_id = "1"

artifacts = []

runs = client.search_runs(
experiment_ids=[experiment_id],
filter_string="",
order_by=["attributes.start_time DESC"]
)

for run in runs:
run_id = run.info.run_id

artifacts_from_run = client.list_artifacts(run_id)
print('Artifacts:', artifacts_from_run)
artifacts.append(
{
'run_id': run_id,
'artifacts': artifacts
}
)


Artifacts: []
Artifacts: []
Artifacts: []


Подробнее здесь: https://stackoverflow.com/questions/798 ... red-models
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»