Окружения и Jupyter Server
Вопросы в этом разделе
Как развернуть пользовательские окружения на сервисе Environments?
Не могу создать Jupyter Server с GPU. В чем может быть причина?
Будет ли тарифицироваться Jupyter Server в статусе «На паузе»?
Будет ли тарифицироваться Jupyter Server в статусе «Ошибка» или «Предупреждение»?
Как запустить ячейку Jupyter Server во время сборки образа и завершить ее после сборки?
В логах ошибка “Permission denied, please try again” при запуске задачи, как устранить?
Не видно образ из Docker registry при создании Jupyter Server, что делать?
Что сделать, чтобы столбец ipynb_checkpoints не появлялся в метриках?
Что делать, если возникает ошибка No space left on device при работе с Jupyter Server?
Что делать, если при удалении файлов на NFS не освобождается место?
Как очистить место в директории /home/jovyan и удалить файлы, попавшие в корзину?
Что делать, если при выполнении команды «torch.cuda.is_available()» возвращается «False»?
Какие TCP-порты можно использовать для выхода в интернет из Jupyter Server или задач обучения?
Не получается развернуть бесплатный Jupyter Server
На платформе ML Space есть ограничение в три бесплатных Jupyter Server для одного региона размещения ресурсов. При создании четвертого возникнет ошибка.
Подробнее см. Регионы размещения ресурсов.
Не могу создать Jupyter Server с GPU. В чем может быть причина?
Такая ситуация может возникать в следующих случаях:
Закончился баланс.
Не выставлен лимит на Департамент.
При нулевом балансе не получится:
создать Jupyter Server с выделенными GPU,
запустить обучение путем отправки задач в регион,
собрать образ с моделями для их последующего развертывания на сервисе Deployments
Актуальный баланс можно посмотреть в профиле пользователя. См. Обзорная страница.
Лимиты на департамент можно задавать в личном кабинете пользователя. Подробнее см. в Документации.
Как приостановить Jupyter Server?
Для приостановки Jupyter Server:
Выберите сервер, который планируете приостановить.
Нажмите на иконку паузы в соответствующей строке списка.
Jupyter Server изменит статус «На паузе».
Доступны ли логи Jupyter Server после приостановки?
После приостановки посмотреть логи нельзя. Для просмотра логов возобновите работу Jupyter Server.
Будет ли тарифицироваться Jupyter Server в статусе «На паузе»?
Если Jupyter Server приостановлен, он не тарифицируется.
Будет ли тарифицироваться Jupyter Server в статусе «Ошибка» или «Предупреждение»?
В случае некорректного запуска Jupyter Server может принимать статус «Ошибка» или «Предупреждение», при этом используемые ресурсы тарифицируются. Рекомендуем удалить Jupyter Server в таком статусе и создать его заново.
Как запустить ячейку Jupyter Server во время сборки образа и завершить ее после сборки?
Если возникает потребность выполнения ячейки после сборки образа, добавьте код:
def wait_image_build_job(job):
response = job.submit()
if "created" not in response:
return response
job.logs()
return "Done"
job = ImageBuildJob(...........)
wait_for_image_build_job(job)
В логах ошибка “Permission denied, please try again” при запуске задачи, как устранить?
Вероятно, при запуске задачи взят образ для Jupyter Server (имеет префикс “jupyter-” в названии).
Пример:
cr.msk.sbercloud.ru/aicloud-jupyter/jupyter-cuda10.0-tf1.15.0-pt1.3.0-gpu:0.0.80 — с этим образом возникнет возникать ошибка,
cr.msk.sbercloud.ru/aicloud-base-images/horovod-cuda10.0-tf1.15.0-pt1.3.0:0.0.27 — этот образ будет корректно работать в регионе V100.
Не видно образ из Docker registry при создании Jupyter Server, что делать?
Если не видно образ, загруженный в Docker registry при создании Jupyter Server, могут помочь следующие рекомендации:
Проверьте название образа. Для использования образа в сервисе Environments у него должен быть префикс «jupyter-».
Для использования образа в модулях платформы префикс образа обязательно должен начинаться с маленькой буквы, например «jupyter-», «deploy-», «job-».
В сервисе Environments образ с именем test-custom-image:1.0
не будет отображаться в списке доступных для создания Jupyter Server.
Образ с именем jupyter-custom-image:1.0
будет отображаться.
Почему у меня не разворачивается Jupyter Server c GPU?
Проблема может возникать, если под Jupyter Server нет свободных ресурсов на одном DGX (выделение ресурсов на нескольких DGX невозможно).
Рекомендуется создавать Jupyter Server с количеством выделенных GPU 8 или меньше.
Обучение, которое требует большее количество ресурсов, лучше запускать как задачу в регионе методом client_lib.Job()
.
Что сделать, чтобы столбец ipynb_checkpoints не появлялся в метриках?
Использовать файлы MLflow средствами MLflow и файлы Jupyter Lab/Notebook средствами Jupyter Lab/Notebook. Так можно избежать непредвиденных артефактов в виде .ipynb_checkpoints-столбца в разделе Metrics.
Папка mlflow
— машиночитаемая (предусмотрено читать через API MLflow), при необходимости открывать файлы можно по SSH через Cyberduck/терминал.
ipynb_checkpoints-папки появляются не везде, а только в том каталоге, где находится запущенный ноутбук. Поэтому наиболее простым решением проблемы с MLflow было бы отделить одно от другого и явно определять каталог, в котором будет находиться информация, относящаяся к MLflow-эксперименту.
Делается это следующим образом:
mlflow.set_tracking_uri('file:/home/jovyan/mlruns')
.
Подробнее об этой команде — в документации MLflow.
Проверить текущий каталог можно командой mlflow.get_tracking_uri()
.
Подробнее можно прочитать в документации MLflow.
Что делать, если возникает ошибка No space left on device при работе с Jupyter Server?
Чтобы устранить ошибку, расширьте NFS.
Для самостоятельного расширения дискового пространства на требуемом NFS:
Перейдите на главную страницу, нажав на
ML Space.
Перейдите на вкладку Воркспейсы.
Нажмите
возле требуемого воркспейса.
Выберите команду Квоты NFS.
Установите квоты для хранилища требуемого региона.
Нажмите Сохранить.
Важно
Установка квот доступна для регионов Christofari.V100, Christofari.A100 и Cloud.Region.A100 (GPU Tesla A100).
Верхний предел квоты ограничен объемом NFS для разных регионов:
Christofari.V100 — 1 ТБ;
Christofari.A100 — 10 ТБ;
Cloud.Region.A100 (GPU Tesla A100) — 5 ТБ.
Что делать, если при удалении файлов на NFS не освобождается место?
Перейдите в
.Подключитесь к требуемому Jupyter Server, нажав Jupyter.
В открывшемся окне нажмите
.
Как очистить место в директории /home/jovyan и удалить файлы, попавшие в корзину?
Перейдите в
.Откройте ваш Jupyter Server и перейдите в нужную директорию внутри
/home/jovyan
.Чтобы увидеть, сколько места занимает содержимое директории, в терминале Jupyter Server выполните команду
Команда для проверки свободного местаdf -h
Если какие-то файлы попали в корзину, очистите ее одним из способов:
Через интерфейс, выполнив действия, описанные в вопросе Что делать, если при удалении файлов на NFS не освобождается место?
Из терминала Jupyter Server, выполнив команду
Команда для очистки корзиныrm -rv ~/.local/share/Trash
Чтобы удалить все файлы и папки в этой директории, воспользуйтесь следующей командой.
Внимание
Команда
rm -r /home/jovyan/*
удалит все содержимое/home/jovyan
, не включая саму директорию. Тщательно проверьте, какие объекты планируете удалять, прежде чем выполнить эту команду.Команда для безвозвратного удаления файлов и папок в указанной директорииrm -r /home/jovyan/*
После выполнения команды удаления проверьте объем файлов в директории
/home/jovyan
с помощью командыКоманда для проверки свободного местаdf -h
Информация о том, что место в директории освободилось, появится в течение двух часов.
Что делать, если возникает ошибка при запуске MLflow?
Переименовать каталог mlruns из Jupyter Server, в котором не запущен MLflow.
Запустить Jupyter Server и проверить, что MLflow работает.
Если эти действия не помогли, обратитесь в техническую поддержку.
Что делать, если при выполнении команды «torch.cuda.is_available()» возвращается «False»?
Данное поведение связанно с инцидентом у вендора. Точные сроки решения зависят от вендора. Как только будут внесены изменения, данная проблема будет исправлена.
В качестве временного решения выполните команду killall5 для завершения всех пользовательских процессов. После этого Jupyter Server будет автоматически перезагружен и ошибка не будет возникать.
Рекомендуем сохранять промежуточные результаты обучения модели, чтобы избежать потери результатов.
Что делать, если в NFS при сохранении файла возникает ошибка «Unexpected error while saving file: directory%%20name/filename.ipynb [Errno 2] No such file or directory»?
Проверьте, есть ли пробел в названиях папок, которые составляют путь до файла. Вместо пробела используйте нижнее подчеркивание или дефис.
Какие TCP-порты можно использовать для выхода в интернет из Jupyter Server или задач обучения?
Для отправки запросов между Jupyter Server и интернетом, а также между задачей обучения и интернетом используйте следующие номера TCP-портов:
80,
443,
8000–8999.