Подключить S3 Selectel к ClearML
В ClearML для хранения датасетов, результатов и артефактов экспериментов можно подключить S3 Selectel.
-
Откройте конфигурационный файл ClearML
clearml.conf. Измените блокиapi,awsиdevelopment:api {...files_server: s3://s3.<pool>.storage.selcloud.ru:443/<container_name>...}...sdk {...aws {s3 {host: "s3.storage.selcloud.ru:443"region: "ru-1"key: "<access_key>"secret: "<secret_key>"use_credentials_chain: falsecredentials: [{bucket: "<container_name>"secure: true}]}boto3 {pool_connections: 512max_multipart_concurrency: 16}}...}......development {...default_output_uri: "s3://s3.<pool>.storage.selcloud.ru:443/<container_name>/<path>"...}...Укажите:
<container_name>— имя бакета в S3, в котором будут храниться датасеты и артефакты. Имя можно посмотреть в панели управления: в верхнем меню нажмите Продукты → S3 → Бакеты;<access_key>— Access Key ID из S3-ключа, выданного пользователю;<secret_key>— Secret Access Key из S3-ключа, выданного пользователю.<path>— префикс в S3;<pool>— пул, в котором находится S3 (например,ru-1).
-
Чтобы загрузить датасеты в ClearML Server, запустите python-скрипт.
Пример скрипта для загрузки одного датасета:
# Создать датасет через класс Datasetfrom clearml import Datasetdataset = Dataset.create(dataset_name="<dataset_name>",dataset_project="<project_name>",output_uri="s3://s3.storage.selcloud.ru:443/<container_name>/<path>",)# Добавить файлы в датасетdataset.add_files(path="<local_path_to_dataset>",)# Загрузить датасет в ClearML Serverdataset.upload()# Закоммитить изменения в датасетеdataset.finalize()Укажите: