Артефакты — файлы, которые используются в экспериментах или создаются в процессе их выполнения. Это могут быть датасеты, модели, конфигурации, чекпоинты и другие файлы. Поддерживается версионирование и использование артефактов из предыдущих запусков.
Для создания артефакта используется wandb SDK.
Перед началом работы убедитесь, что выполнены следующие условия:
Создан ML-проект, в котором будет сохранен ран.
Создайте объект артефакта с указанием имени и типа:
import wandb# Initialize the runrun = wandb.init(project="<name_project>")# Create an artifactartifact = wandb.Artifact(name="<name_run>",type="<type_artifact>",)
Где:
<name_project> — название ML-проекта.
<name_run> — название рана.
<type_artifact> — тип артефакта: model, dataset, file и др.
При инициализации объекта артефакта можно дополнительно указать описание и метаданные. Подробнее в документации wandb SDK.
Каждый раз, когда вы создаете артефакт с тем же названием и типом, создается новая версия этого артефакта.
Добавьте файлы в артефакт.
Выберите метод в зависимости от типа артефакта.
# Add a fileartifact.add_file("model.pt")# Add a directoryartifact.add_dir("models/")# Add data by referenceartifact.add_reference("s3://bucket/path/to/data")
Загрузите артефакт в ран:
run.log_artifact(artifact)
Завершите ран:
run.finish()
Пример полного кода:
# Initialize the runrun = wandb.init(project="my-new-project")# Create an artifactartifact = wandb.Artifact(name="ak0iraec",type="file")artifact.add_file("mlflow.db")run.log_artifact(artifact)
Артефакт создан и загружен в ML-проект.
Чтобы скачать артефакт, нажмите Скачать.