{"id":374692,"date":"2024-05-21T06:06:42","date_gmt":"2024-05-21T06:06:42","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=374692"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=374692","title":{"rendered":"<span>ClearML Data Management<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/5w\/dj\/vq\/5wdjvqcqthc0yzwbcthy6xdkbiw.png\" data-src=\"https:\/\/habrastorage.org\/webt\/5w\/dj\/vq\/5wdjvqcqthc0yzwbcthy6xdkbiw.png\"\/><\/p>\n<p>  <\/p>\n<p>\u041e\u0447\u0435\u0432\u0438\u0434\u043d\u044b\u0439 \u0434\u043b\u044f ML-\u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430 \u0444\u0430\u043a\u0442: \u0435\u0441\u043b\u0438 \u043d\u0430 \u0432\u0445\u043e\u0434 \u043c\u043e\u0434\u0435\u043b\u0438 \u043f\u043e\u0434\u0430\u0442\u044c \u043c\u0443\u0441\u043e\u0440 \u2014 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u0442\u043e\u0436\u0435 \u0431\u0443\u0434\u0435\u0442 \u043c\u0443\u0441\u043e\u0440. \u042d\u0442\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u0442 \u0432\u0441\u0435\u0433\u0434\u0430, \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u0442\u043e\u0433\u043e, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443 \u043d\u0430\u0441 \u043a\u0440\u0443\u0442\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u0430\u0436\u043d\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c, \u043a\u0430\u043a \u0432\u0430\u0448\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0445\u0440\u0430\u043d\u0438\u0442\u044c\u0441\u044f, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f, \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0443\u0442\u0441\u044f \u043b\u0438 \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432. \u0414\u043b\u044f \u0432\u0441\u0435\u0445 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 \u0435\u0441\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432: DVC, MLflow, W&amp;B, ClearML \u0438 \u0434\u0440\u0443\u0433\u0438\u0435. Git \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043e\u043d \u043d\u0435 \u0431\u044b\u043b \u0441\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d \u043f\u043e\u0434 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f ML. \u041d\u043e \u0435\u0441\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u0434\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u2014 \u044d\u0442\u043e ClearML. \u041e \u043d\u0435\u043c \u044f \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0438 \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443.<\/p>\n<p><a name=\"habracut\"><\/a>  <\/p>\n<h1 id=\"raznica-mezhdu-git-i-clearml-v-kontekste-ml-zadach\">\u0420\u0430\u0437\u043d\u0438\u0446\u0430 \u043c\u0435\u0436\u0434\u0443 Git \u0438 ClearML \u0432 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0435 ML-\u0437\u0430\u0434\u0430\u0447<\/h1>\n<p>  <\/p>\n<p>Git \u043d\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u0434\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c \u043f\u0440\u0438\u0447\u0438\u043d\u0430\u043c: <\/p>\n<p>  <\/p>\n<ul>\n<li>\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u0432 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c\u0438 \u043e\u0431\u044a\u0435\u043c\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445; <\/li>\n<li>\u043d\u0435 \u0432\u0441\u0451 \u0445\u043e\u0440\u043e\u0448\u043e \u0441 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c\u044e \u0434\u0430\u043d\u043d\u044b\u0445; <\/li>\n<li>\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0435\u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u0430; <\/li>\n<li>\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0431\u043e\u043b\u044c\u0448\u0438\u043c\u0438 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u0441\u043b\u043e\u0436\u043d\u043e\u0435.<\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u0412 \u0438\u0442\u043e\u0433\u0435 \u0443 \u043d\u0430\u0441 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0441\u044f \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u0430\u044f \u0438 \u0442\u044f\u0436\u0435\u043b\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430, \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0435\u0443\u0434\u043e\u0431\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c. <\/p>\n<p>  <\/p>\n<p>ClearML \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u043e\u0433\u0440\u043e\u043c\u043d\u0443\u044e MLOps-\u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0443:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/he\/ip\/6m\/heip6mfkufxl-8d_dgsb0qhcn5o.png\" data-src=\"https:\/\/habrastorage.org\/webt\/he\/ip\/6m\/heip6mfkufxl-8d_dgsb0qhcn5o.png\"\/><br \/>  <em>\u041c\u043e\u0434\u0443\u043b\u0438 ClearML, \u043f\u043e\u043a\u0440\u044b\u0432\u0430\u044e\u0449\u0438\u0435 \u0432\u0435\u0441\u044c \u0446\u0438\u043a\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 ML-\u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430<\/em><\/p>\n<p>  <\/p>\n<p><strong>\u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 ClearML:<\/strong><\/p>\n<p>  <\/p>\n<ul>\n<li><strong>ClearML Python<\/strong> (clearml) \u2014 \u0441\u043b\u0443\u0436\u0438\u0442 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 ClearML \u0432 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0431\u0430\u0437\u0443 \u043a\u043e\u0434\u0430. \u042d\u0442\u043e \u043e\u0431\u044b\u0447\u043d\u0430\u044f \u043f\u0438\u0442\u043e\u043d\u043e\u0432\u0441\u043a\u0430\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430. \u0415\u0441\u0442\u044c CLI \u0438 SDK, \u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u043d\u0438\u043c\u0438 \u043c\u044b \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u0434\u0430\u043b\u0435\u0435.<\/li>\n<li><strong>ClearML Server<\/strong> (clearml-server) \u2014 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432, \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0438 \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 Web UI \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432. \u041c\u043e\u0436\u043d\u043e \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u0443 \u0441\u0435\u0431\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e.<\/li>\n<li><strong>ClearML Agent<\/strong> (clearml-agent) \u2014 \u0430\u0433\u0435\u043d\u0442 \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u043e\u0432\u043a\u0438 MLOps. \u041e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0438\u0445 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u043e\u0441\u0442\u044c.<\/li>\n<li><strong>ClearML Serving<\/strong> (clearml-serving) \u2014 \u043d\u0443\u0436\u0435\u043d \u0434\u043b\u044f \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0438 \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u043e\u0432\u043a\u0438 \u043c\u043e\u0434\u0435\u043b\u0435\u0439. \u0415\u0441\u0442\u044c \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 Triton. \u041d\u043e \u043d\u0430 \u043c\u043e\u0439 \u0432\u0437\u0433\u043b\u044f\u0434 \u043e\u043d \u043d\u0435\u0434\u043e\u0440\u0430\u0431\u043e\u0442\u0430\u043d: \u0435\u0441\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c \u0438 \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438 \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u0441\u0431\u043e\u0440\u043a\u0438.<\/li>\n<li><strong>ClearML Session<\/strong> (clearml-session) \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0445 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u043e\u0432 Jupyter Notebooks \u0438 VSCode. \u041e\u0447\u0435\u043d\u044c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435, \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0445\u043e\u0440\u043e\u0448\u043e, \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0440\u0430\u0431\u043e\u0447\u0438\u0435 \u043c\u0435\u0441\u0442\u0430 \u0434\u043b\u044f ML-\u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043e\u0432 \u0438 \u0432\u044b\u0434\u0435\u043b\u044f\u0442\u044c \u043d\u0443\u0436\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u0435\u0439 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u043d\u0438\u0445. \u0412\u0441\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 clearml-agent, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u043a\u0430\u0441\u0442\u043e\u043c\u043d\u044b\u0439 docker-image.<\/li>\n<li><strong>ClearML Data<\/strong> (clearml-data) \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438 \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0432\u0435\u0440\u0445 \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\/\u043e\u0431\u044a\u0435\u043a\u0442\u043d\u044b\u0445 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a AWS S3.<\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u0420\u0435\u0434\u043a\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043f\u043e\u043a\u0440\u044b\u0432\u0430\u044e\u0442 \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u0432\u0441\u0435 \u043d\u0443\u0436\u0434\u044b \u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u0431\u044b\u0447\u043d\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0437\u043e\u043e\u043f\u0430\u0440\u043a \u0438\u0437 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439. \u0412 \u0441\u043b\u0443\u0447\u0430\u0435 \u0441 ClearML \u043f\u043e\u043a\u0440\u044b\u0442\u044b \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u043d\u043e\u0441\u0442\u0438 ML-\u043f\u0440\u043e\u0435\u043a\u0442\u0430. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043c\u043e\u0434\u0443\u043b\u044c <strong>ClearML Data<\/strong>.<\/p>\n<p>  <\/p>\n<h1 id=\"osobennosti-clearml-po-sravneniyu-s-analogichnymi-instrumentami\">\u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 ClearML \u043f\u043e \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044e \u0441 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u043c\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438<\/h1>\n<p>  <\/p>\n<p>\u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, DVC, \u0432 ClearML \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u043e\u0442 \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u0434\u0430. \u041a\u0430\u043a \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u044e\u0442 \u0441\u0430\u043c\u0438 \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430, \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0435 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a\u043e\u0434\u043e\u043c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u043d\u0438 \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0432 git-\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438:<\/p>\n<p>  <\/p>\n<blockquote><p><strong>We believe Data is not code<\/strong>. It should not be stored in a git tree, because progress on datasets is not always linear. Moreover, it can be difficult and inefficient to find on a git tree the commit associated with a certain version of a dataset.<\/p><\/blockquote>\n<p>\u0423 ClearML \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0438 \u043f\u0440\u0438\u044f\u0442\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441. MLflow \u0432 \u044d\u0442\u043e\u043c \u043f\u043b\u0430\u043d\u0435 \u043d\u0435 \u0442\u0430\u043a \u0434\u0440\u0443\u0436\u0435\u043b\u044e\u0431\u0435\u043d.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/i1\/zw\/qn\/i1zwqnorqyu2mc1hx2yld2dawjy.png\" data-src=\"https:\/\/habrastorage.org\/webt\/i1\/zw\/qn\/i1zwqnorqyu2mc1hx2yld2dawjy.png\"\/><br \/>  <em>Web UI ClearML \u0434\u043b\u044f \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u043e\u0432<\/em><\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0447\u0430\u0441\u0442\u044f\u043c\u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u043c\u043e\u0436\u043d\u043e \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0430\u043c:<a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/webapp\/datasets\/webapp_dataset_viewing\/\"> dataset_details<\/a> \u0438<a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/webapp\/datasets\/webapp_dataset_page\/\"> dataset_page<\/a>.<\/p>\n<p>  <\/p>\n<p>\u0415\u0449\u0435 \u043e\u0434\u043d\u0430 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u044c ClearML \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u044e\u0442\u0441\u044f \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432\u0441\u0435 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0442\u0438\u043f\u043e\u043c<a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/fundamentals\/task\/\"> task<\/a> (experiments \u0432 UI). \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u044b, \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b \u0441 \u043c\u043e\u0434\u0435\u043b\u044f\u043c\u0438, \u043f\u0430\u0439\u043f\u043b\u0430\u0439\u043d\u044b \u2014 \u0443 \u0432\u0441\u0435\u0445 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u0439 \u0442\u0438\u043f. \u041d\u0438\u043a\u0430\u043a\u0438\u0445 \u043b\u0438\u0448\u043d\u0438\u0445 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 \u0438 \u043f\u043e\u043d\u044f\u0442\u043d\u044b\u0435 \u0441\u0442\u0430\u0442\u0443\u0441\u044b \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0442\u0438\u043f\u0430. <a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/fundamentals\/task\/\">Task<\/a> \u2014 \u044d\u0442\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u0435\u0430\u043d\u0441 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0441\u043e\u0431\u043e\u0439 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442, \u0448\u0430\u0433 \u0438\u043b\u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430, \u043b\u044e\u0431\u0443\u044e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0443\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/tx\/x7\/2o\/txx72oqfxsyzz0isnvkx03_hfcc.png\" data-src=\"https:\/\/habrastorage.org\/webt\/tx\/x7\/2o\/txx72oqfxsyzz0isnvkx03_hfcc.png\"\/><br \/>  <em>\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0441\u0442\u0430\u0442\u0443\u0441\u044b tasks<\/em><\/p>\n<p>  <\/p>\n<p>\u0414\u0430\u043d\u043d\u044b\u043c\u0438 \u043c\u043e\u0436\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449 \u0434\u0430\u043d\u043d\u044b\u0445: Azure, AWS, MinIO \u0438 \u0434\u0440\u0443\u0433\u0438\u0445 [<a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/integrations\/storage\">\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f<\/a>]. \u0422\u0430\u043a\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043b\u0430\u0442\u043d\u044b\u0435 \u0444\u0438\u0447\u0438 \u2014 \u0433\u0438\u043f\u0435\u0440\u0434\u0430\u0442\u0430\u0441\u0435\u0442\u044b.<\/p>\n<p>  <\/p>\n<p>\u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441\u043e \u043c\u043d\u043e\u0433\u0438\u043c\u0438 DS-\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430\u043c\u0438 (scikit-learn, Matplotlib, PyTorch, TensorFlow \u0438 \u0434\u0440\u0443\u0433\u0438\u043c\u0438) \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u043e\u0434\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u043c\u0435\u0442\u0440\u0438\u043a\u0438, \u0433\u0440\u0430\u0444\u0438\u043a\u0438 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f, \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c\u044b, \u043b\u043e\u0433\u0438, \u043d\u0435\u0437\u0430\u043a\u043e\u043c\u043c\u0438\u0447\u0435\u043d\u043d\u044b\u0435 \u0447\u0430\u0441\u0442\u0438 \u043a\u043e\u0434\u0430, \u0432\u0435\u0440\u0441\u0438\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u2014 \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c <strong>task<\/strong> \u0432 \u043d\u0430\u0447\u0430\u043b\u0435<strong> .py \u0444\u0430\u0439\u043b\u0430 \/ jupyter notebook<\/strong> \u0438 \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043c\u043e\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u043b\u044e\u0431\u043e\u0439 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442.<\/p>\n<p>  <\/p>\n<p>\u0421\u0435\u0439\u0447\u0430\u0441 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0432\u0441\u0435 \u0435\u0449\u0435 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0441\u0442\u0432\u0443\u0435\u0442\u0441\u044f. \u041a\u0430\u043a \u0438 \u0443 \u0432\u0441\u0435\u0445 \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0438\u0445\u0441\u044f \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c, \u0443 \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u0435\u0441\u0442\u044c \u0441\u0432\u043e\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0438:<\/p>\n<p>  <\/p>\n<ol>\n<li>\u0412 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430\u0445 plots \u0438 debug \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043d\u0435 \u0431\u0443\u0434\u0443\u0442 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c\u0441\u044f;<\/li>\n<li>\u041c\u043e\u0431\u0438\u043b\u044c\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441\u0430\u0439\u0442\u0430 \u043d\u0435\u0443\u0434\u043e\u0431\u043d\u0430 \u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0443\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442\u044c \u0432 \u041f\u041a-\u0432\u0435\u0440\u0441\u0438\u044e;<\/li>\n<li>\u0413\u0440\u0430\u0444\u0438\u043a\u0438 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043d\u0435 \u0442\u0430\u043a\u0438\u0435 \u043a\u0440\u0430\u0441\u0438\u0432\u044b\u0435, \u043a\u0430\u043a \u0443 W&amp;B ?;<\/li>\n<li>\u041d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e\u0434\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043c\u0435\u0442\u0440\u0438\u043a\u0438 \u0434\u043b\u044f pytorch lightning, \u0438\u0437-\u0437\u0430 \u0447\u0435\u0433\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c tensorboard (\u0430 \u043c\u0435\u0442\u0440\u0438\u043a\u0438 \u0438\u0437 tensorboard \u0443\u0436\u0435 \u043f\u043e\u0434\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0432 clearml).<\/li>\n<\/ol>\n<p>  <\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u0421learML Data, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u0445\u043e\u0434\u0438\u0442 \u0432 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 ClearML.<\/p>\n<p>  <\/p>\n<h1 id=\"clearml-data-na-praktike\">ClearML Data \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435<\/h1>\n<p>  <\/p>\n<p>\u0412\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0441\u044f \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u043e\u0439 ClearML \u0441 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435\u043c \u0432 100 GB \u0434\u043b\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u043f\u0440\u0438\u0433\u043b\u0430\u0441\u0438\u0442\u044c \u0435\u0449\u0435 \u0434\u0432\u0443\u0445 \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u0432 \u0432\u0430\u0448\u0435 \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e clearml. \u041f\u043e\u0434\u043e\u0431\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u0435\u0441\u0442\u044c \u0438 \u0443 W&amp;B. \u0410 \u0432\u043e\u0442 \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c W&amp;B \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e \u0438\u043b\u0438 \u043d\u0430 \u0432\u0430\u0448\u0435\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e \u043d\u0435\u043b\u044c\u0437\u044f, \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 ClearML.<\/p>\n<p>  <\/p>\n<p><strong>\u041f\u0435\u0440\u0432\u044b\u0439 \u044d\u0442\u0430\u043f: \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043a\u0440\u0435\u0434\u043e\u0432<\/strong> [\u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0441\u043c. \u0432<a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/getting_started\/ds\/ds_first_steps\"> \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438<\/a>]<\/p>\n<p>  <\/p>\n<ol>\n<li>\u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0443 \u0441\u0435\u0431\u044f clearml \u0447\u0435\u0440\u0435\u0437 <em>pip install clearml<\/em><\/li>\n<li>\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u043c\u0441\u044f \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435:<a href=\"https:\/\/app.clear.ml\/login\"> app.clear.ml\/login<\/a><\/li>\n<li>\u0417\u0430\u0445\u043e\u0434\u0438\u043c \u0432<a href=\"https:\/\/app.clear.ml\/settings\/workspace-configuration\"> Settings \u2192 Workspace<\/a> \u2192 \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u043a\u0440\u0435\u0434\u044b \u00abCreate new credentials\u00bb <\/li>\n<\/ol>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/lz\/lj\/f2\/lzljf2sreewbyt7n8uhj8pu_dts.png\" data-src=\"https:\/\/habrastorage.org\/webt\/lz\/lj\/f2\/lzljf2sreewbyt7n8uhj8pu_dts.png\"\/><br \/>  <em>\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043a\u0440\u0435\u0434\u043e\u0432<\/em><\/p>\n<p>  <\/p>\n<p>\u041c\u043e\u0436\u043d\u043e \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f <strong>Local Python<\/strong> \u0438\u043b\u0438 <strong>Jupyter Notebook<\/strong>. \u0418\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u0434\u043b\u044f \u043d\u0438\u0445 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u043d\u0438\u0436\u0435.<\/p>\n<p>  <\/p>\n<p><strong>Local Python<\/strong><br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/iw\/zf\/mo\/iwzfmol0dbxdmlq_okny_mzm_gq.png\" data-src=\"https:\/\/habrastorage.org\/webt\/iw\/zf\/mo\/iwzfmol0dbxdmlq_okny_mzm_gq.png\"\/><\/p>\n<p>  <\/p>\n<p>\u0412 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 <em>clearml-init<\/em> \u0438 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u043a\u0440\u0435\u0434\u044b:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/hn\/na\/cs\/hnnacsxnfkyiy6ebf6oxbd-pdlc.png\" data-src=\"https:\/\/habrastorage.org\/webt\/hn\/na\/cs\/hnnacsxnfkyiy6ebf6oxbd-pdlc.png\"\/><\/p>\n<p>  <\/p>\n<p><strong>Jupyter Notebook<\/strong><\/p>\n<p>  <\/p>\n<p>\u0412 \u0442\u0430\u0431\u0435 Jupyter Notebook \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u043c \u043a\u0440\u0435\u0434\u044b \u0432 \u044f\u0447\u0435\u0439\u043a\u0443 \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0430:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/wa\/jh\/an\/wajhanhmzcmussgw-t4wd88ynoc.png\" data-src=\"https:\/\/habrastorage.org\/webt\/wa\/jh\/an\/wajhanhmzcmussgw-t4wd88ynoc.png\"\/><\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u0440\u0435\u0434\u043e\u0432 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Local Python \u0438\u043b\u0438 Jupyter Notebook \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b <em>~\/clearml.conf<\/em> \u0434\u043b\u044f Linux. \u0414\u043b\u044f \u0434\u0440\u0443\u0433\u0438\u0445 \u041e\u0421 \u043f\u0443\u0442\u044c \u043c\u043e\u0436\u0435\u0442 \u043e\u0442\u043b\u0438\u0447\u0430\u0442\u044c\u0441\u044f. \u0412 \u044d\u0442\u043e\u043c \u0444\u0430\u0439\u043b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044e \u0441 S3. <\/p>\n<p>  <\/p>\n<blockquote><p>\u041a\u0440\u0435\u0434\u044b \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u043a\u043e\u043c\u043c\u0438\u0442\u0438\u0442\u044c\u0441\u044f \u0438 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c\u0441\u044f. \u041f\u0440\u0438\u043c\u0435\u0440\u044b \u0432\u044b\u0448\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0446\u0435\u043b\u044f\u0445.<\/p><\/blockquote>\n<p>\u0412\u0435\u0441\u044c \u043a\u043e\u0434 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u0435\u0441\u0442\u044c \u0442\u0443\u0442 \u2192<a href=\"https:\/\/colab.research.google.com\/drive\/1zynVJYprgW5xGMesyENJyBRfLGUOkjhQ?usp=sharing\"> \u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043a\u043e\u043b\u0430\u0431<\/a>. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435! ?<\/p>\n<p>  <\/p>\n<p>ClearML Data \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0434\u0432\u0430 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430:<\/p>\n<p>  <\/p>\n<ul>\n<li><a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/clearml_data\/clearml_data_cli\/\">clearml-data<\/a> \u2014 \u0443\u0442\u0438\u043b\u0438\u0442\u0430 CLI \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f, \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0430\u0431\u043e\u0440\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445;<\/li>\n<li><a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/clearml_data\/clearml_data_sdk\/\">clearml.Dataset<\/a> \u2014 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 Python \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f, \u0438\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u044f, \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0430\u0431\u043e\u0440\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445.<\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u043a\u0430\u0436\u0434\u044b\u043c \u0438\u0437 \u043d\u0438\u0445 \u043f\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438.<\/p>\n<p>  <\/p>\n<h2 id=\"sozdanie-dataseta-s-cli\">\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0441 CLI<\/h2>\n<p>  <\/p>\n<p>\u0421\u043a\u0430\u0447\u0430\u0435\u043c \u0438 \u0440\u0430\u0441\u043f\u0430\u043a\u0443\u0435\u043c \u0434\u0430\u0442\u0430\u0441\u0435\u0442, \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0431\u0443\u0434\u0435\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0434\u0430\u043b\u0435\u0435:<\/p>\n<p>  <\/p>\n<pre><code class=\"bash\">wget -P \/content\/dataset_v1\/ https:\/\/download.microsoft.com\/download\/3\/E\/1\/3E1C3F21-ECDB-4869-8368-6DEBA77B919F\/kagglecatsanddogs_5340.zip unzip \/content\/dataset_v1\/kagglecatsanddogs_5340.zip -d \/content\/dataset_v1\/<\/code><\/pre>\n<p>  <\/p>\n<p>\u0415\u0441\u0442\u044c \u0434\u0432\u0430 \u0441\u043f\u043e\u0441\u043e\u0431\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 ClearML: \u0447\u0435\u0440\u0435\u0437 \u0440\u0443\u0447\u043d\u043e\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u044d\u0442\u0430\u043f\u0430 \u0438 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 sync. <\/p>\n<p>  <\/p>\n<h3 id=\"pervyy-sposob-ruchnoy-kontrol-kazhdogo-etapa\">\u041f\u0435\u0440\u0432\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431: \u0440\u0443\u0447\u043d\u043e\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u044d\u0442\u0430\u043f\u0430<\/h3>\n<p>  <\/p>\n<ul>\n<li><a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/clearml_data\/clearml_data_cli#create\">\u0441reate<\/a> \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u0434\u0430\u0442\u0430\u0441\u0435\u0442. \u0422\u0443\u0442 \u043c\u044b \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043f\u0440\u043e\u0435\u043a\u0442, \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430, \u0442\u0435\u0433\u0438, \u0432\u0435\u0440\u0441\u0438\u044e. \u0415\u0441\u043b\u0438 \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u0435\u0440\u0441\u0438\u044e, \u043e\u043d\u0430 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438.<\/li>\n<\/ul>\n<p>  <\/p>\n<pre><code class=\"bash\"># \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0434\u0430\u0442\u0430\u0441\u0435\u0442 clearml-data create --project DeepSchool\/Tutorials\/cats_vs_dogs \\                     --name cats_vs_dogs \\                      --tags init_data<\/code><\/pre>\n<p>  <\/p>\n<p><em>&#8212;project<\/em> \u2014 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0438\u0435\u0440\u0430\u0440\u0445\u0438\u044e. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: <em>Turorials\/Toy_Datasets\/Cifar10\/Train<\/em> \u0438 \u0442\u0430\u043a \u0434\u043e \u0433\u043b\u0443\u0431\u0438\u043d\u044b 10.<\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b <em>clearml-data create<\/em> \u0432 UI \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u0442\u0430\u0442\u0443\u0441 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430. \u0421\u0435\u0439\u0447\u0430\u0441 \u0443 \u043d\u0430\u0441 \u00abUploading\u00bb, \u0437\u043d\u0430\u0447\u0438\u0442, \u0435\u0441\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c, \u0443\u0434\u0430\u043b\u044f\u0442\u044c \u0438 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c \u0444\u0430\u0439\u043b\u044b \u044d\u0442\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/kx\/sa\/iw\/kxsaiwfmf92qlzhfw2jctvv9dbk.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/kx\/sa\/iw\/kxsaiwfmf92qlzhfw2jctvv9dbk.jpeg\" data-blurred=\"true\"\/><br \/>  <em>\u0421\u0442\u0430\u0442\u0443\u0441 \u00abUploading\u00bb \u0432 ClearML UI \u043f\u043e\u0441\u043b\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430<\/em><\/p>\n<p>  <\/p>\n<blockquote><p>clearml-data \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u043e\u0441\u043b\u0435 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043a\u043e\u043c\u0430\u043d\u0434 \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0444\u043b\u0430\u0433 <em>&#8212;id<\/em>.<\/p><\/blockquote>\n<p>  <\/p>\n<ul>\n<li><a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/clearml_data\/clearml_data_cli#add\">add<\/a> \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0432 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u0434\u0430\u0442\u0430\u0441\u0435\u0442. \u041e\u043d \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0444\u0430\u0439\u043b\u044b \u0432 \u0434\u0430\u0442\u0430\u0441\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 ~\/data\/*.jpg.<\/li>\n<\/ul>\n<p>  <\/p>\n<pre><code class=\"bash\"># \u0414\u043e\u0431\u0430\u0432\u0438\u043c \u0444\u0430\u0439\u043b\u044b. clearml-data add --files \"\/content\/dataset_v1\"<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"bash\"># \u041f\u0435\u0440\u0435\u0434 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439 \u043d\u0430 ClearML \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u0444\u0430\u0439\u043b\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438\u0441\u044c clearml-data list --id &lt;dataset_id><\/code><\/pre>\n<p>  <\/p>\n<ul>\n<li><a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/clearml_data\/clearml_data_cli#close\">close<\/a> \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0438 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 clearml. \u041c\u043e\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c <em>&#8212;storage<\/em> \u2014 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u044d\u0442\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 ClearML.<\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u042d\u0442\u0430\u043f <em>close<\/em> \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0432 \u0441\u0435\u0431\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u0438 \u0444\u0438\u043d\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 <em>finalize \u0438 upload<\/em>, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0435\u0441\u043b\u0438 \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0438\u043c\u0435\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0434\u0430\u0442\u0430\u0441\u0435\u0442.<\/p>\n<p>  <\/p>\n<p><em>&lt;dataset_id><\/em> \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0438 \u0432\u0438\u0434\u0435\u043d \u0432 ClearML UI \u043f\u043e\u0441\u043b\u0435 \u044d\u0442\u0430\u043f\u0430 <em>close<\/em>.<\/p>\n<p>  <\/p>\n<pre><code class=\"bash\"># \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0440\u0430\u0432\u043d\u0430 clearml-data upload \u0438 clearml-data finalize clearml-data close<\/code><\/pre>\n<p>  <\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u0430\u043f\u0430 <em>finalize<\/em> \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u043b\u044c\u0437\u044f: \u044d\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0434\u043b\u044f \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438. \u0422\u0435\u043f\u0435\u0440\u044c \u0443 \u043d\u0430\u0448\u0435\u0433\u043e \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0441\u0442\u0430\u0442\u0443\u0441 \u00abFinal\u00bb.<\/p>\n<p>  <\/p>\n<p>\u0422\u0430\u043a \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043f\u043e\u0441\u043b\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0445 \u0432\u044b\u0448\u0435 \u043a\u043e\u043c\u0430\u043d\u0434:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/eg\/1f\/el\/eg1felwteakucq_gw2ml4imfupu.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/eg\/1f\/el\/eg1felwteakucq_gw2ml4imfupu.jpeg\" data-blurred=\"true\"\/><br \/>  <em>\u0417\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0439 \u0434\u0430\u0442\u0430\u0441\u0435\u0442 \u0432 ClearML<\/em><\/p>\n<p>  <\/p>\n<h3 id=\"vtoroy-sposob-c-pomoschyu-sync\">\u0412\u0442\u043e\u0440\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431: c \u043f\u043e\u043c\u043e\u0449\u044c\u044e sync<\/h3>\n<p>  <\/p>\n<p><em>sync<\/em> \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0435\u0442 \u0432 \u0441\u0435\u0431\u0435 \u0432\u0441\u0435 \u0432\u044b\u0448\u0435\u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0435 \u044d\u0442\u0430\u043f\u044b \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u043d\u043e \u043f\u0440\u0438 \u043e\u0434\u043d\u043e\u043c \u0443\u0441\u043b\u043e\u0432\u0438\u0438: \u0432\u0441\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u043b\u0435\u0436\u0430\u0442\u044c \u0432 \u043e\u0434\u043d\u043e\u0439 \u043f\u0430\u043f\u043a\u0435.<\/p>\n<p>  <\/p>\n<pre><code class=\"bash\">clearml-data sync --project DeepSchool\/Tutorials\/cats_vs_dogs \\                   --name cats_vs_dogs_sync \\                   --folder \/content\/dataset_v1<\/code><\/pre>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/k-\/p8\/za\/k-p8zaiyuxebkazl84uzakug1da.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/k-\/p8\/za\/k-p8zaiyuxebkazl84uzakug1da.jpeg\" data-blurred=\"true\"\/><br \/>  <em>\u0417\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0439 \u0434\u0430\u0442\u0430\u0441\u0435\u0442 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 sync \u0447\u0435\u0440\u0435\u0437 CLI<\/em> <\/p>\n<p>  <\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0432 UI \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u043f\u0430\u043f\u043a\u0430 \u00abDeepSchool\u00bb. \u0412 \u043d\u0435\u0439 \u0435\u0441\u0442\u044c \u0434\u0432\u0430 \u043f\u043e\u0434\u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u044b \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u043a\u043e\u043c\u0430\u043d\u0434:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/jd\/qz\/in\/jdqzin-pyiavsr22i7higenlqz4.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/jd\/qz\/in\/jdqzin-pyiavsr22i7higenlqz4.jpeg\" data-blurred=\"true\"\/><br \/>  <em>\u0417\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0435 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u044b \u0432 \u043f\u0430\u043f\u043a\u0435 \u00abDeepSchool\u00bb<\/em><\/p>\n<p>  <\/p>\n<h2 id=\"poluchenie-dannyh-s-cli\">\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 CLI<\/h2>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043f\u0438\u0438 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u0443\u044e <strong>\u043d\u0435\u043b\u044c\u0437\u044f<\/strong> \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c (read only), \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 <em>get<\/em>:<\/p>\n<p>  <\/p>\n<pre><code class=\"bash\">clearml-data get --id &lt;created_dataset_id> <\/code><\/pre>\n<p>  <\/p>\n<p>\u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c id \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u043c\u043e\u0436\u043d\u043e \u0432 UI:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/1h\/az\/xy\/1hazxyw6tjslb6ixhuj3sal4h4w.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/1h\/az\/xy\/1hazxyw6tjslb6ixhuj3sal4h4w.jpeg\" data-blurred=\"true\"\/><br \/>  <em>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 id \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0438\u0437 ClearML UI<\/em><\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0432 read only \u043c\u043e\u0436\u0435\u0442 \u0441\u0442\u0430\u0442\u044c \u0443\u0434\u043e\u0431\u043d\u044b\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c, \u0435\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0433\u043e \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u044f \u043e\u0434\u043d\u0438\u0445 \u0438 \u0442\u0435\u0445 \u0436\u0435 \u0434\u0430\u043d\u043d\u044b\u0445. \u0415\u0441\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0432 \u043a\u044d\u0448\u0435, \u043f\u0440\u0438 \u0438\u0445 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438 \u0441\u043a\u0430\u0447\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u0435\u043b\u044c\u0442\u0430.<\/p>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043f\u0438\u0438 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u0443\u044e <strong>\u043c\u043e\u0436\u043d\u043e<\/strong> \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c, \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 <em>get<\/em> \u0438 \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u043f\u0430\u043f\u043a\u0443, \u0432 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0434\u0430\u0442\u0430\u0441\u0435\u0442:<\/p>\n<p>  <\/p>\n<pre><code class=\"bash\"># \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u043c\u044b\u0435 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435. # \u0415\u0441\u043b\u0438 \u043d\u0435\u0442, \u0442\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0434\u043b\u044f \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 clearml-data get --id 717662694123428bab2b103efed87e4b \\                  --copy .\/cats_vs_dogs_sync\/<\/code><\/pre>\n<p>  <\/p>\n<p>\u041d\u0430\u0448\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u0443\u0436\u0435 \u0432 \u043a\u044d\u0448\u0435, \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e, ClearML \u0441\u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043b\u0438 \u043a\u044d\u0448-\u0432\u0435\u0440\u0441\u0438\u044f \u043e\u0442 \u043d\u0443\u0436\u043d\u043e\u0439 \u0434\u043b\u044f \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u044f. \u0415\u0441\u043b\u0438 \u043d\u0435\u0442 \u2014 \u043e\u043d \u0441\u043a\u043e\u043f\u0438\u0440\u0443\u0435\u0442 \u0447\u0430\u0441\u0442\u044c \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0438\u0437 \u043a\u044d\u0448\u0430 \u0438 \u043e\u0442\u043b\u0438\u0447\u0430\u044e\u0449\u0443\u044e\u0441\u044f \u0447\u0430\u0441\u0442\u044c \u0438\u0437 ClearML.<\/p>\n<p>  <\/p>\n<p>\u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u044b \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0434\u0430\u0442\u0430\u0441\u0435\u0442 \u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e.<\/p>\n<p>  <\/p>\n<h2 id=\"sozdanie-novoy-versii-dataseta-s-cli\">\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0441 CLI<\/h2>\n<p>  <\/p>\n<p>\u0418\u0437\u043c\u0435\u043d\u0438\u043c \u0434\u0430\u0442\u0430\u0441\u0435\u0442, \u0441\u043a\u0430\u0447\u0430\u0432 \u043d\u043e\u0432\u044b\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u043a\u043b\u0430\u0441\u0441\u0430 Fish.<\/p>\n<p>  <\/p>\n<pre><code class=\"bash\">fish_images = ['http:\/\/www.michigansportsman.com\/Boaters_Guide\/10.18.05_Manistee_Lake_Coho_004_small.jpg',                 'http:\/\/www.aosalaska.com\/gallery\/silvers\/silver24.jpg',                 'http:\/\/www.piscatorialpursuits.com\/images\/jimmy.jpg',                 'http:\/\/www.fpc.org\/spawning\/images\/multnomahcoho11-04.jpg',                 'http:\/\/www.alaskaantlerworks.com\/images\/jerm_silver.jpg']  from clearml import StorageManager  for image_path in fish_images:     StorageManager.get_local_copy(remote_url=image_path,                         extract_archive=False,                         cache_context=\"\/content\/cats_vs_dogs_sync\/PetImages\/Fish\")<\/code><\/pre>\n<p>  <\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c, \u043a\u043e\u0433\u0434\u0430 \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u043d\u0430\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0435\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u044b <em>sync<\/em>, \u0443\u043a\u0430\u0437\u0430\u0432 \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 <em>&#8212;parents<\/em>:<\/p>\n<p>  <\/p>\n<pre><code class=\"bash\"># \u0417\u0430\u0433\u0440\u0443\u0437\u0438\u043c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u043d\u044b\u0439 \u0434\u0430\u0442\u0430\u0441\u0435\u0442 \u0441 \u043d\u043e\u0432\u044b\u043c \u043a\u043b\u0430\u0441\u0441\u043e\u043c Fish, # \u0432\u0430\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c id \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430, # \u0438\u043d\u0430\u0447\u0435 \u0432\u043c\u0435\u0441\u0442\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u043e\u0432\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0441\u044f \u0432\u0435\u0441\u044c \u0434\u0430\u0442\u0430\u0441\u0435\u0442, \u0447\u0442\u043e \u0437\u0430\u0439\u043c\u0435\u0442 \u043c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 !clearml-data sync --project DeepSchool\/Tutorials\/cats_vs_dogs \\                    --name cats_vs_dogs_sync \\                    --parents 717662694123428bab2b103efed87e4b \\                    --folder \/content\/cats_vs_dogs_sync<\/code><\/pre>\n<p>  <\/p>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043d\u0430 \u0440\u0438\u0441\u0443\u043d\u043a\u0435 \u043d\u0438\u0436\u0435. \u0427\u0435\u0440\u0435\u0437 VERSION INFO \u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430 \u0441\u043a\u0440\u0438\u043d\u0448\u043e\u0442\u0435 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0443 \u043f\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0443 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445, \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0445 \u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u043d\u044b\u0445 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/5e\/0i\/ed\/5e0iedp5b3sbtcud5gh0hzkf6k0.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/5e\/0i\/ed\/5e0iedp5b3sbtcud5gh0hzkf6k0.jpeg\" data-blurred=\"true\"\/><br \/>  <em>\u041d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0432 ClearML UI. \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u0430\u043f\u043a\u0430 \u0441 \u043a\u043b\u0430\u0441\u0441\u043e\u043c \u00abFish\u00bb<\/em> <\/p>\n<p>  <\/p>\n<p>\u0412 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u0430\u0445 \u0435\u0441\u0442\u044c \u0431\u0438\u0442\u0430\u044f \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430, \u0443\u0434\u0430\u043b\u0438\u043c \u0435\u0435.<\/p>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0432\u044b\u0432\u0435\u0434\u0435\u043c \u0441\u043f\u0438\u0441\u043e\u043a \u0444\u043e\u0442\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <em>clearml-data list<\/em>:<\/p>\n<p>  <\/p>\n<pre><code class=\"python\">clearml-data list --id 8f13d861488248fca90aa9522b882ea5 \\                    --filter PetImages\/Fish\/*.jpg<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"bash\">clearml-data - Dataset Management &amp; Versioning CLI List dataset content: 8f13d861488248fca90aa9522b882ea5 Listing dataset content file name                                                                                 | size       | hash                                                             ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- PetImages\/Fish\/24af78f36dd391046209db21577ec667.multnomahcoho11-04.jpg                    |      1,520 | 31bb5a2bdbb753adebd1a7c88b69fd7ddd405241619bbb866db4ed9c51d729e2 PetImages\/Fish\/4d536d76aaf42c0e5524b6f8c6918227.jimmy.jpg                                 |     19,515 | 0432f283284a5ab33c31f42040267bde9a37853b5c4557060c2bcd1527ef78b2 PetImages\/Fish\/70a4b2cb727768e435b3f77ba7b782b6.silver24.jpg                              |     19,715 | 803de343fd2410e1e5568fbac54f3dba9a699048e1b44d9194b03b8888b2ff90 PetImages\/Fish\/c18a90447be153bab0d90e175bff269f.10.18.05_Manistee_Lake_Coho_004_small.jpg |      3,548 | c654999d76c033bcb0ed04d75c6a592280c2c8dbbb60133f2c2013a54ca4229e PetImages\/Fish\/cdcbd1c83803abb15830e0f0c16bc353.jerm_silver.jpg                           |     67,725 | 0b5ac127c2b7e766116ecc1f8f1a8f5023a23749d255761bbc2785c77b42fc5e Total 5 files, 112023 bytes<\/code><\/pre>\n<p>  <\/p>\n<p>\u0423\u0434\u0430\u043b\u0438\u043c \u0431\u0438\u0442\u0443\u044e \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u044e \u0438\u0437 \u043f\u0430\u043f\u043a\u0438 \u00abFish\u00bb \u0432 \u043d\u0430\u0448\u0435\u043c \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0435:<\/p>\n<p>  <\/p>\n<pre><code class=\"bash\">rm -f .\/cats_vs_dogs_sync\/PetImages\/Fish\/24af78f36dd391046209db21577ec667.multnomahcoho11-04.jpg<\/code><\/pre>\n<p>  <\/p>\n<p>\u041e\u0431\u043d\u043e\u0432\u0438\u043c \u0434\u0430\u0442\u0430\u0441\u0435\u0442 c \u043f\u043e\u043c\u043e\u0449\u044c\u044e <em>sync<\/em>:<\/p>\n<p>  <\/p>\n<pre><code class=\"bash\">clearml-data sync --project DeepSchool\/Tutorials\/cats_vs_dogs \\                   --name cats_vs_dogs_sync \\                   --parents 8f13d861488248fca90aa9522b882ea5 \\                   --folder \/content\/cats_vs_dogs_sync<\/code><\/pre>\n<p>  <\/p>\n<p>\u0412 ClearML UI \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043d\u0430\u0448\u0435\u0433\u043e \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/ql\/3d\/u3\/ql3du3jo_x9efago93pt5i9xfyg.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/ql\/3d\/u3\/ql3du3jo_x9efago93pt5i9xfyg.jpeg\" data-blurred=\"true\"\/><br \/>  <em>\u041d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0441 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u043c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c<\/em><\/p>\n<p>  <\/p>\n<h2 id=\"sozdanie-dataseta-s-sdk\">\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0441 SDK<\/h2>\n<p>  <\/p>\n<p>\u0410\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e \u0432\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 python. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u0440\u0438\u043c\u0435\u0440 \u043d\u0430 \u0442\u0435\u0445 \u0436\u0435 \u0434\u0430\u043d\u043d\u044b\u0445:<\/p>\n<p>  <\/p>\n<ol>\n<li>\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 ClearML \u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u044d\u0442\u0430\u043f\u0430:<br \/> \n<pre><code class=\"python\"> # \u041f\u0435\u0440\u0432\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0441 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u0432\u044b\u0431\u043e\u0440\u043e\u0447\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u0444\u0430\u0439\u043b\u044b from clearml import Dataset<\/code><\/pre>\n<\/li>\n<\/ol>\n<p>  <\/p>\n<p>dataset_project = &#171;DeepSchool\/Tutorials\/cats_vs_dogs&#187;<br \/>  dataset_name = &#171;cats_vs_dogs_SDK&#187;<br \/>  dataset_path = &#171;\/content\/cats_vs_dogs_sync&#187;<\/p>\n<p>  <\/p>\n<p>dataset = Dataset.create(dataset_name=dataset_name,<br \/>  dataset_project=dataset_project)<br \/>  dataset.add_files(dataset_path) # \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0444\u0430\u0439\u043b\u044b \u0432 \u0434\u0430\u0442\u0430\u0441\u0435\u0442<br \/>  dataset.upload()<br \/>  dataset.finalize()<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\">2. \u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 ClearML \u0447\u0435\u0440\u0435\u0437 *sync*: ```python # \u0412\u0442\u043e\u0440\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0441 sync from clearml import Dataset  dataset_project = \"DeepSchool\/Tutorials\/cats_vs_dogs\" dataset_name = \"cats_vs_dogs_SDK_sync\" dataset_path = \"\/content\/cats_vs_dogs_sync\"   dataset = Dataset.create(dataset_name=dataset_name,                           dataset_project=dataset_project) dataset.sync_folder(dataset_path) dataset.finalize(auto_upload=True)<\/code><\/pre>\n<p>  <\/p>\n<p>\u0412\u0430\u0436\u043d\u043e: \u043f\u043e\u0441\u043b\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f <em>finalize()<\/em> \u043c\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u043c \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u043b\u0435\u043f\u043e\u043a \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0432 clearml, \u043d\u043e \u0441\u043c\u043e\u0436\u0435\u043c \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u043e\u0432\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0441 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u043d\u044b\u043c\u0438 \u0444\u0430\u0439\u043b\u0430\u043c\u0438.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/ji\/it\/vh\/jiitvhkud77q9v3tffdv4qejnp0.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/ji\/it\/vh\/jiitvhkud77q9v3tffdv4qejnp0.jpeg\" data-blurred=\"true\"\/><br \/>  <em>\u0417\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u0447\u0435\u0440\u0435\u0437 CLI \u0438 SDK<\/em><\/p>\n<p>  <\/p>\n<h2 id=\"poluchenie-dannyh-s-sdk\">\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 SDK<\/h2>\n<p>  <\/p>\n<p>\u0421\u043a\u0430\u0447\u0430\u0442\u044c \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0439 \u0434\u0430\u0442\u0430\u0441\u0435\u0442 \u043c\u043e\u0436\u043d\u043e \u0442\u0440\u0435\u043c\u044f \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438.<\/p>\n<p>  <\/p>\n<ol>\n<li>\n<p>\u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0438\u043c\u0435\u043d\u0430 \u0444\u0430\u0439\u043b\u043e\u0432.<\/p>\n<p>  <\/p>\n<pre><code class=\"python\"># \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0430 read only,  # \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043c cats_vs_dogs_SDK_sync \u0434\u0430\u0442\u0430\u0441\u0435\u0442 from clearml import Dataset from pathlib import Path dataset_path = Dataset.get(dataset_name=dataset_name,                        dataset_project=dataset_project) # \u0438\u043b\u0438 dataset_path = Dataset.get(dataset_id=&lt;dataset_id>)<\/code><\/pre>\n<p>  <\/li>\n<li>\n<p>\u0414\u043b\u044f \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u044f\u0432\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c <em>.get_local_copy()<\/em>, \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0434\u0430\u043d\u043d\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0441\u043a\u0430\u0447\u0430\u043d\u044b \u0432 \u043a\u044d\u0448, \u0438 \u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0438\u0442\u0430\u0442\u044c.<\/p>\n<p>  <\/p>\n<pre><code class=\"python\"># \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0430 read only from pathlib import Path dataset_path = Dataset.get(dataset_name=dataset_name,                        dataset_project=dataset_project                        ).get_local_copy() # \u0438\u043b\u0438 dataset_path = Dataset.get(dataset_id=&lt;dataset_id>).get_local_copy()<\/code><\/pre>\n<p>  <\/li>\n<li>\n<p>\u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u0430\u0442\u0430\u0441\u0435\u0442 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e \u0432 \u0432\u0430\u0448\u0435\u0439 \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 \u0434\u043b\u044f \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f, \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f, \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0447\u0435\u0440\u0435\u0437 <em>.get_mutable_local_copy(target_folder=&#187;where\/to\/save\/data\u201d)<\/em>.<\/p>\n<p>  <\/p>\n<pre><code class=\"python\"># \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u043c\u044b\u0435 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435  dataset_path = Dataset.get(dataset_name=dataset_name,                        dataset_project=dataset_project                        ).get_mutable_local_copy(                                                     target_folder=\".\/cats_vs_dogs_sdk_sync\"                                                     ) # \u0438\u043b\u0438  dataset_path = Dataset.get(                                                     dataset_id=&lt;dataset_id>                                                 ).get_mutable_local_copy(target_folder=\".\/cats_vs_dogs_sdk_sync\")<\/code><\/pre>\n<p>  <\/li>\n<\/ol>\n<p>  <\/p>\n<h2 id=\"sozdanie-novoy-versii-dataseta-s-sdk\">\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0441 SDK<\/h2>\n<p>  <\/p>\n<p>\u0418\u0437\u043c\u0435\u043d\u0438\u043c \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0447\u0435\u0440\u0435\u0437 SDK, \u0438 \u0437\u0430\u043b\u044c\u0435\u043c \u043d\u043e\u0432\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430.<\/p>\n<p>  <\/p>\n<p>\u0412 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u0443\u0434\u0430\u043b\u0438\u043c \u043f\u0430\u043f\u043a\u0443 \u00abCat\u00bb c \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u0435\u0442\u043e\u0434\u0430 <strong>remove_files<\/strong> (\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u044d\u0442\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430, \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c sync).<\/p>\n<p>  <\/p>\n<p><em>&#8212;parents<\/em> \u2014 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c id \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0438\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u043e\u0432.<\/p>\n<p>  <\/p>\n<p>\u0423\u0434\u0430\u043b\u0438\u043c \u043f\u0430\u043f\u043a\u0443 \u00abCat\u00bb:<\/p>\n<p>  <\/p>\n<pre><code class=\"bash\">rm -rf .\/cats_vs_dogs_sync\/PetImages\/Cat<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"python\"># \u041f\u0435\u0440\u0432\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0441 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u0432\u044b\u0431\u043e\u0440\u043e\u0447\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u0438 \u0443\u0434\u0430\u043b\u044f\u0442\u044c \u0444\u0430\u0439\u043b\u044b from clearml import Dataset  dataset_project = \"DeepSchool\/Tutorials\/cats_vs_dogs\" dataset_name = \"cats_vs_dogs_SDK_sync\" dataset_path = \"\/content\/cats_vs_dogs_sdk_sync\"  dataset = Dataset.create(dataset_name=dataset_name,              dataset_project=dataset_project,              parent_datasets=[\"f2999e995d924d239dcd5db8981f27d0\"])                          # \u0432\u0430\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u0434\u0430\u0442\u0430\u0441\u0435\u0442  # \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e \u0443\u0434\u0430\u043b\u044f\u0435\u0442 \u0444\u0430\u0439\u043b\u044b \u0438\u0437 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 dataset.remove_files('.\/PetImages\/Cat')  dataset.finalize(auto_upload=True)<\/code><\/pre>\n<p>  <\/p>\n<p>\u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0434\u0430\u0442\u0430\u0441\u0435\u0442 \u0434\u0430\u0436\u0435 \u0431\u0435\u0437 \u0435\u0433\u043e \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u044f.<\/p>\n<p>  <\/p>\n<blockquote><p><strong>\u0412\u0430\u0436\u043d\u043e:<\/strong> \u0435\u0441\u043b\u0438 \u0432\u044b \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u0435 \u0438\u043c\u044f \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430, \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u0441\u0447\u0438\u0442\u0430\u0442\u044c\u0441\u044f \u043d\u043e\u0432\u044b\u043c \u0438 \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u0432 \u043d\u043e\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u043e\u0447\u043a\u0435 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0432 ClearML UI.<\/p><\/blockquote>\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <em>sync<\/em> \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0434\u0430\u0442\u0430\u0441\u0435\u0442 \u0443\u0434\u043e\u0431\u043d\u0435\u0435, \u0442\u0430\u043a \u043a\u0430\u043a \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u0441\u043b\u0443\u0447\u0430\u0435\u0432 \u043e\u043d \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e. \u0417\u0434\u0435\u0441\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442\u0441\u044f \u0440\u0430\u0437\u043d\u0438\u0446\u0430 \u043c\u0435\u0436\u0434\u0443 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u0438 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u0432 ClearML:<\/p>\n<p>  <\/p>\n<pre><code class=\"python\"> from clearml import Dataset  dataset_project = \"DeepSchool\/Tutorials\/cats_vs_dogs\" dataset_name = \"cats_vs_dogs_SDK_sync\" dataset_path = \"\/content\/cats_vs_dogs_sdk_sync\"  dataset = Dataset.create(dataset_name=dataset_name,                          dataset_project=dataset_project,                          parent_datasets=[\"f2999e995d924d239dcd5db8981f27d0\"])                                                  # \u0432\u0430\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u0434\u0430\u0442\u0430\u0441\u0435\u0442  dataset.sync_folder(     local_path=dataset_path )  dataset.finalize(auto_upload=True)<\/code><\/pre>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/oa\/xd\/ia\/oaxdia2rxoh0nvucnrdhwkzrnqa.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/oa\/xd\/ia\/oaxdia2rxoh0nvucnrdhwkzrnqa.jpeg\" data-blurred=\"true\"\/><br \/>  <em>\u0412\u0435\u0440\u0441\u0438\u044f \u0441 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0439 \u043f\u0430\u043f\u043a\u043e\u0439 \u043a\u043b\u0430\u0441\u0441\u0430 \u00abCat\u00bb<\/em><\/p>\n<p>  <\/p>\n<h2 id=\"obedinenie-datasetov-s-cli-i-sdk\">\u041e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u043e\u0432 \u0441 CLI \u0438 SDK<\/h2>\n<p>  <\/p>\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u044b search \u0432\u044b\u0432\u0435\u0434\u0435\u043c \u0432\u0441\u0435 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u044b, \u0432 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0438 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0435\u0441\u0442\u044c \u043f\u043e\u0434\u0441\u0442\u0440\u043e\u043a\u0430 \u00abcats\u00bb:<\/p>\n<p>  <\/p>\n<pre><code class=\"python\">clearml-data search --name cats  clearml-data - Dataset Management &amp; Versioning CLI Search datasets project                           | name                             | version             | tags                | created                          --------------------------------------------------------------------------------------------------------------------------------------------------- DeepSchool\/Tutorials\/cats_vs_dogs | cats_vs_dogs                     | 1.0.0               | 'init_data'         | 2024-02-20 06:35:02              DeepSchool\/Tutorials\/cats_vs_dogs | cats_vs_dogs_sync                | 1.0.0               |                     | 2024-02-20 06:55:16              DeepSchool\/Tutorials\/cats_vs_dogs | cats_vs_dogs_sync                | 1.0.1               |                     | 2024-02-20 07:52:41              DeepSchool\/Tutorials\/cats_vs_dogs | cats_vs_dogs_sync                | 1.0.2               |                     | 2024-02-21 03:11:04              DeepSchool\/Tutorials\/cats_vs_dogs | cats_vs_dogs_SDK                 | 1.0.0               |                     | 2024-02-21 03:32:02              DeepSchool\/Tutorials\/cats_vs_dogs | cats_vs_dogs_SDK_sync            | 1.0.0               |                     | 2024-02-21 03:33:41              DeepSchool\/Tutorials\/cats_vs_dogs | cats_vs_dogs_SDK_sync            | 1.0.1               |                     | 2024-02-21 05:37:12<\/code><\/pre>\n<p>  <\/p>\n<p>\u0415\u0441\u0442\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0430\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u2014 id \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u043e\u0432 \u0442\u0443\u0442 \u043d\u0435 \u043f\u0438\u0448\u0443\u0442 ? \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0443\u0436\u043d\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435 id \u0432 UI.<\/p>\n<p>  <\/p>\n<p>\u041e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u0434\u0432\u0430 (\u0438 \u0431\u043e\u043b\u044c\u0448\u0435) \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u0432 \u043e\u0434\u0438\u043d \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e: \u043d\u0443\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c id \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u043e\u0432 \u0441 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u043c <em>&#8212;parents<\/em>.<\/p>\n<p>  <\/p>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u043c \u043d\u0430\u0448\u0438 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u044b c <em>create \u0438 close<\/em>, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u043b\u0438 \u0440\u0430\u043d\u0435\u0435. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0443\u043a\u0430\u0436\u0435\u043c \u043d\u043e\u0432\u043e\u0435 \u0438\u043c\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0438 \u0432\u0441\u0435 id \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u043e\u0432:<\/p>\n<p>  <\/p>\n<pre><code class=\"python\"> # id \u0432\u043e\u0437\u043c\u0435\u043c \u0438\u0437 UI clearml-data create --project DeepSchool\/Tutorials\/cats_vs_dogs \\                     --name UNITED_DATASET_CLI \\                     --parents 4fb7cf2830c449ca8fc7fc9d62e4fcb8 89158f088e354385a5b905716f746659 \\                                b1f6537691f74d94b4bd5d6569fdd865 55322da674c6439c91a089eb36ff5e29 \\                     --tags united clearml-data close<\/code><\/pre>\n<p>  <\/p>\n<p>\u041d\u0430 \u0440\u0438\u0441\u0443\u043d\u043a\u0435 \u043d\u0438\u0436\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u043d\u043e\u0433\u043e (\u043f\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u043c \u0432\u0435\u0440\u0441\u0438\u044f\u043c) \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430, \u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043e\u0442 \u0447\u0435\u0442\u044b\u0440\u0451\u0445 \u0440\u0430\u0437\u043d\u044b\u0445 \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u0435\u0439. \u041c\u044b \u0432\u0438\u0434\u0438\u043c \u043a\u0430\u0436\u0434\u044b\u0439 \u0434\u0430\u0442\u0430\u0441\u0435\u0442 \u0438 \u0432\u0441\u0435 \u0435\u0433\u043e \u0432\u0435\u0440\u0441\u0438\u0438. <\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/xf\/lm\/y6\/xflmy6y2xoao3iupxvz413mwy8s.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/xf\/lm\/y6\/xflmy6y2xoao3iupxvz413mwy8s.jpeg\" data-blurred=\"true\"\/><br \/>  <em>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u044b\u043b \u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d \u043e\u0442 \u0447\u0435\u0442\u044b\u0440\u0435\u0445 \u0440\u0430\u0437\u043d\u044b\u0445 \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u0435\u0439<\/em><\/p>\n<p>  <\/p>\n<blockquote><p><strong>\u0412\u0430\u0436\u043d\u043e:<\/strong> \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0432\u043b\u0435\u0447\u044c \u0437\u0430 \u0441\u043e\u0431\u043e\u0439 \u043f\u043e\u0442\u0435\u0440\u044e \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u043d\u043e\u043c \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0435.<\/p><\/blockquote>\n<p>\u0427\u0435\u0440\u0435\u0437 SDK \u043c\u044b \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u0441 \u0434\u0432\u0443\u043c\u044f \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044f\u043c\u0438:<\/p>\n<p>  <\/p>\n<pre><code class=\"python\"># \u041e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0441 SDK, \u0442\u0443\u0442 \u0432\u043e\u0437\u044c\u043c\u0435\u043c \u043f\u043e\u043c\u0435\u043d\u044c\u0448\u0435 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u043e\u0432  dataset = Dataset.create(   dataset_name='UNITED DATASET SDK',   dataset_project='DeepSchool\/Tutorials\/cats_vs_dogs',    parent_datasets=['4fb7cf2830c449ca8fc7fc9d62e4fcb8',                    '89158f088e354385a5b905716f746659'],   dataset_version=\"1.0\", #   output_uri=\"gs:\/\/bucket-name\/folder\", # S3 \u0438\u043b\u0438 \u043b\u044e\u0431\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435   description='cats vs dogs vs fish' )<\/code><\/pre>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/jh\/z-\/e8\/jhz-e8zkqxs3i1rzisodiuds1hy.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/jh\/z-\/e8\/jhz-e8zkqxs3i1rzisodiuds1hy.jpeg\" data-blurred=\"true\"\/><br \/>  <em>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u044b\u043b \u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d \u043e\u0442 \u0434\u0432\u0443\u0445 \u0440\u0430\u0437\u043d\u044b\u0445 \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u0435\u0439<\/em><\/p>\n<p>  <\/p>\n<h2 id=\"obedinenie-tablichnyh-dannyh\">\u041e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0442\u0430\u0431\u043b\u0438\u0447\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445<\/h2>\n<p>  <\/p>\n<p>\u041f\u0440\u0438 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438 \u0444\u0430\u0439\u043b\u044b \u043d\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0442\u0441\u044f \u0432 \u043e\u0434\u0438\u043d. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0443 \u043d\u0430\u0441 \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0441\u044f \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u0434\u0432\u0430 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u043f\u043e\u0441\u0442\u0440\u043e\u0447\u043d\u043e (CSV-\u0444\u0430\u0439\u043b\u044b) \u0432 \u043e\u0434\u0438\u043d \u043e\u0431\u0449\u0438\u0439 \u0444\u0430\u0439\u043b.<\/p>\n<p>  <\/p>\n<ul>\n<li>\u0415\u0441\u043b\u0438 CSV-\u0444\u0430\u0439\u043b\u044b \u0438\u043c\u0435\u044e\u0442 \u043e\u0434\u043d\u043e \u0438 \u0442\u043e \u0436\u0435 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435, \u0442\u043e \u0432 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u043d\u043e\u043c \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0435 \u0431\u0443\u0434\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430.<\/li>\n<li>\u0415\u0441\u043b\u0438 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u0440\u0430\u0437\u043d\u044b\u0435, \u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0434\u0432\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u0430 \u0432 \u043e\u0434\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430.<\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u0435\u043d git: \u0432\u044b \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 git \u0434\u043b\u044f \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u0430. \u0412\u044b \u0441\u0430\u043c\u0438 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u0442\u0435 \u0444\u0430\u0439\u043b, \u0430 \u0437\u0430\u0442\u0435\u043c \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0435 git, \u0447\u0442\u043e\u0431\u044b \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0438 \u0438\u0445 \u0432\u0440\u0435\u043c\u044f.<\/p>\n<p>  <\/p>\n<h2 id=\"dokumentaciya-dataseta\">\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430<\/h2>\n<p>  <\/p>\n<p>\u0412 \u043d\u0430\u0447\u0430\u043b\u0435 \u0441\u0442\u0430\u0442\u044c\u0438 \u043c\u044b \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438, \u0447\u0442\u043e \u0432\u0441\u0435 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438 ClearML \u2014 \u044d\u0442\u043e task. \u0414\u0430\u0442\u0430\u0441\u0435\u0442\u044b \u043d\u0435 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435. \u041a \u043d\u0438\u043c \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0440\u0430\u0437\u043d\u044b\u0435 \u043c\u0435\u0442\u0440\u0438\u043a\u0438, \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c\u044b, \u0434\u0435\u0431\u0430\u0433 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f, \u0430 \u0437\u0430\u0442\u0435\u043c \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0438\u0445 \u0432 task \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/gr\/2x\/ru\/gr2xru2p4m_ze2pegwyxodcczcm.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/gr\/2x\/ru\/gr2xru2p4m_ze2pegwyxodcczcm.jpeg\" data-blurred=\"true\"\/><br \/>  <em>\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a task \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430<\/em><\/p>\n<p>  <\/p>\n<p>\u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c: <em>task information -> debug samples<\/em><\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/yu\/vz\/ax\/yuvzaxdzokysj0gx3n9_r98dda8.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/yu\/vz\/ax\/yuvzaxdzokysj0gx3n9_r98dda8.jpeg\" data-blurred=\"true\"\/><br \/>  <em>\u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0432 task \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430<\/em><\/p>\n<p>  <\/p>\n<p>\u041d\u0430 \u0440\u0438\u0441\u0443\u043d\u043a\u0435 \u0432\u044b\u0448\u0435 \u043c\u044b \u0432\u0438\u0434\u0438\u043c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0440\u0430\u0437\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430. \u0412 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u0439 \u0442\u0430\u0431\u0435 DEBUG SAMPLES \u043a \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0443 \u043f\u043e\u0434\u0433\u0440\u0443\u0436\u0435\u043d\u044b \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f (\u044d\u0442\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430). \u041f\u043e\u0434\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043c\u043e\u0436\u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u0433\u0440\u0430\u0444\u0438\u043a\u0438 (\u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0438\u0445 \u0432 PLOTS \u0438 SCALARS). \u0410 \u0432 ARTIFACTS \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u0433\u0440\u0443\u0437\u0438\u0442\u044c CSV-\u0444\u0430\u0439\u043b\u044b, zip \u0438 \u0442. \u0434.<\/p>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 CSV-\u0444\u0430\u0439\u043b\u043e\u0432 \u043a \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0443, \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a, \u0433\u0440\u0430\u0444\u0438\u043a\u043e\u0432 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <em>Dataset.get_logger()<\/em>.<\/p>\n<p>  <\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440 \u0438\u0437<a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/clearml_data\/clearml_data_sdk#dataset-preview\"> \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438<\/a>:<\/p>\n<p>  <\/p>\n<pre><code class=\"python\"># Attach a table to the dataset dataset.get_logger().report_table(     title=\"Raw Dataset Metadata\", series=\"Raw Dataset Metadata\", csv=\"path\/to\/csv\" )  # Attach a historgram to the table dataset.get_logger().report_histogram(     title=\"Class distribution\",     series=\"Class distribution\",     values=histogram_data,     iteration=0,     xlabels=histogram_data.index.tolist(),     yaxis=\"Number of samples\", )<\/code><\/pre>\n<p>  <\/p>\n<h2 id=\"hranenie-kesha\">\u0425\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043a\u0435\u0448\u0430<\/h2>\n<p>  <\/p>\n<p>\u0412\u0435\u0441\u044c \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043a\u044d\u0448 (\u043c\u043e\u0434\u0435\u043b\u0438, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u0441\u043a\u0430\u0447\u0435\u043d\u043d\u044b\u0435 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u044b \u0438 \u0434\u0440.) \u0431\u0443\u0434\u0435\u0442 \u0445\u0440\u0430\u043d\u0438\u0442\u044c\u0441\u044f \u0432 ~\/clearml\/cache.<\/p>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u2014 \u0441\u0432\u043e\u0439 \u043a\u044d\u0448. \u0418\u043d\u043e\u0433\u0434\u0430 \u044d\u0442\u043e \u043d\u0435\u0443\u0434\u043e\u0431\u043d\u043e: \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0435\u0441\u043b\u0438 \u0434\u0430\u0442\u0430\u0441\u0435\u0442 \u0432\u0435\u0441\u0438\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 1TB, \u0430 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u043d\u0430\u044f \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0430\u044f. \u0422\u043e\u0433\u0434\u0430 \u043c\u043e\u0436\u043d\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u0442\u044c\u0441\u044f \u0441 \u043e\u0447\u0435\u043d\u044c \u0434\u043e\u043b\u0433\u043e\u0439 (\u043c\u043d\u043e\u0433\u043e\u0447\u0430\u0441\u043e\u0432\u043e\u0439) \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439 \u044d\u0442\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440. \u0415\u0441\u043b\u0438 \u043d\u0430\u0434 \u0442\u0430\u043a\u0438\u043c \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u043e\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430, \u0433\u0434\u0435 \u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0441\u0432\u043e\u044f \u043a\u043e\u043f\u0438\u044f \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 \u2014 \u044d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u043d\u044f\u0442\u044c \u043f\u0440\u0438\u043b\u0438\u0447\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u044c SSD \u0438\u043b\u0438 HDD \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435. \u0414\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0434\u0443\u0431\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043e\u0431\u0449\u0438\u0439 \u043a\u044d\u0448 \u0438 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0442\u0443\u0434\u0430 \u0432\u0441\u0435 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u044b ClearML. \u041e\u043d \u0431\u0443\u0434\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0441 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435\u043c \u043a\u0430\u043a\u0438\u0445-\u043b\u0438\u0431\u043e \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u043e\u0432 \u043d\u0430 clearml-server. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0443 \u0432\u0441\u0435\u0445 \u0431\u0443\u0434\u0443\u0442 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u043e\u0432 \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u0435.<\/p>\n<p>  <\/p>\n<h1 id=\"zaklyuchenie\">\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h1>\n<p>  <\/p>\n<p>\u0421\u0435\u0439\u0447\u0430\u0441 \u0435\u0441\u0442\u044c \u043e\u0447\u0435\u043d\u044c \u043c\u043d\u043e\u0433\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445. \u041d\u0435 \u0432\u0441\u0435 \u0438\u0437 \u043d\u0438\u0445 \u0443\u0434\u043e\u0431\u043d\u044b \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u0432\u0438\u0434\u0435\u043e \u0438 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u043c\u0438. \u041d\u0435 \u0432\u0441\u0435 \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u0442\u044c \u0435\u0434\u0438\u043d\u0443\u044e \u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0436\u0438\u0437\u043d\u0435\u043d\u043d\u043e\u0433\u043e \u0446\u0438\u043a\u043b\u0430 ML-\u043f\u0440\u043e\u0435\u043a\u0442\u0430. \u0410 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 ClearML \u043c\u043e\u0436\u043d\u043e \u0430\u043a\u043a\u0443\u0440\u0430\u0442\u043d\u043e \u0438 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435, \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u044c \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b, \u043e\u043d\u0431\u043e\u0440\u0434\u0438\u0442\u044c \u043d\u043e\u0432\u0438\u0447\u043a\u043e\u0432 \u0438 \u0434\u0435\u043b\u0430\u0442\u044c \u0435\u0449\u0435 \u043c\u043d\u043e\u0433\u043e \u0447\u0435\u0433\u043e ?<\/p>\n<p>  <\/p>\n<p>ClearML \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u0434\u0432\u0430 \u0443\u0434\u043e\u0431\u043d\u044b\u0445 \u0441\u043f\u043e\u0441\u043e\u0431\u0430 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0447\u0435\u0440\u0435\u0437 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044b CLI \u0438 Python SDK, \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043c\u044b \u0438 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u0432\u044b\u0448\u0435.<\/p>\n<p>  <\/p>\n<p>\u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u0442\u0430\u0442\u044c\u044f\u0445 \u043c\u044b \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c <strong>clearml agents<\/strong> \u0438 <strong>clearml pipelines<\/strong> \u0438 \u0443\u0437\u043d\u0430\u0435\u043c, \u043a\u0430\u043a \u0438\u043d\u0442\u0435\u0433\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c S3 \u0438\u043b\u0438 Minio \u0432 clearml \u0438 \u043a\u0430\u043a\u0438\u0435 \u0443 \u044d\u0442\u043e\u0433\u043e \u0435\u0441\u0442\u044c \u043f\u043b\u044e\u0441\u044b.<\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u043b\u0435\u0437\u043d\u044b\u0435 \u0441\u0441\u044b\u043b\u043a\u0438:<\/p>\n<p>  <\/p>\n<ol>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=r795nc9PMZs&amp;t=1059s\">\u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0435 \u0432\u044b\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a \u0441\u0442\u0440\u043e\u0438\u043b\u0430\u0441\u044c MLOps \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 \u043d\u0430 \u0431\u0430\u0437\u0435 ClearML \u0432 MTS<\/a><\/li>\n<li><a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/clearml_data\/best_practices\">Best practices \u043e\u0442 ClearML Data (\u0432\u0435\u0440\u0441\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u043e\u0432, \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f)<\/a><\/li>\n<li><a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/clearml_data\/clearml_data_cli\">\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f CLI<\/a><\/li>\n<li><a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/clearml_data\/clearml_data_sdk\">\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f SDK<\/a><\/li>\n<li><a href=\"https:\/\/clear.ml\/docs\/latest\/docs\/clearml_data\/data_management_examples\/workflows\">\u0422\u0443\u0442\u043e\u0440\u0438\u0430\u043b\u044b \u043e\u0442 ClearML<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=U7n9qXIBxEg&amp;list=PLMdIlCuMqSTnoC45ME5_JnsJX0zWqDdlO\">\u0426\u0435\u043b\u044b\u0439 \u043f\u043b\u0435\u0439\u043b\u0438\u0441\u0442 \u043f\u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 ClearML<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=S2pz9jn26uI\">\u0412\u0438\u0434\u0435\u043e \u043f\u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 clearml-data<\/a><\/li>\n<\/ol>\n<p>  <\/p>\n<p>P.S.<br \/>  \u041f\u0435\u0440\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441\u0442\u0430\u0442\u044c\u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u0434\u043b\u044f <a href=\"https:\/\/deepschool-pro.notion.site\/ClearML-Data-Management-915ae05cd7654f4a9fff822c76c2ec7b\">deepschool-pro<\/a>, \u043d\u0430 \u0425\u0430\u0431\u0440\u0435 \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u0435\u0442\u0441\u044f \u0441 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u043c\u0438 \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f\u043c\u0438.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/810435\/\"> https:\/\/habr.com\/ru\/articles\/810435\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/5w\/dj\/vq\/5wdjvqcqthc0yzwbcthy6xdkbiw.png\" data-src=\"https:\/\/habrastorage.org\/webt\/5w\/dj\/vq\/5wdjvqcqthc0yzwbcthy6xdkbiw.png\"\/><\/p>\n<p>  <\/p>\n<p>\u041e\u0447\u0435\u0432\u0438\u0434\u043d\u044b\u0439 \u0434\u043b\u044f ML-\u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430 \u0444\u0430\u043a\u0442: \u0435\u0441\u043b\u0438 \u043d\u0430 \u0432\u0445\u043e\u0434 \u043c\u043e\u0434\u0435\u043b\u0438 \u043f\u043e\u0434\u0430\u0442\u044c \u043c\u0443\u0441\u043e\u0440 \u2014 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u0442\u043e\u0436\u0435 \u0431\u0443\u0434\u0435\u0442 \u043c\u0443\u0441\u043e\u0440. \u042d\u0442\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u0442 \u0432\u0441\u0435\u0433\u0434\u0430, \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u0442\u043e\u0433\u043e, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443 \u043d\u0430\u0441 \u043a\u0440\u0443\u0442\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u0430\u0436\u043d\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c, \u043a\u0430\u043a \u0432\u0430\u0448\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0445\u0440\u0430\u043d\u0438\u0442\u044c\u0441\u044f, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f, \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0443\u0442\u0441\u044f \u043b\u0438 \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432. \u0414\u043b\u044f \u0432\u0441\u0435\u0445 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 \u0435\u0441\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432: DVC, MLflow, W&amp;B, ClearML \u0438 \u0434\u0440\u0443\u0433\u0438\u0435. Git \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043e\u043d \u043d\u0435 \u0431\u044b\u043b \u0441\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d \u043f\u043e\u0434 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f ML. \u041d\u043e \u0435\u0441\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u0434\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u2014 \u044d\u0442\u043e ClearML. \u041e \u043d\u0435\u043c \u044f \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0438 \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-374692","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/374692","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=374692"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/374692\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=374692"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=374692"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=374692"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}