Jupiter hub как пользоваться
Перейти к содержимому

Jupiter hub как пользоваться

  • автор:

Что такое Jupyter-ноутбук и как его использовать

Jupyter Notebook — приложение с открытым исходным кодом, в котором можно сразу увидеть результат выполнения кода (в этом плане это не привычное всем IDE).

Експертний курс від laba: Business English for HR.
Мова бізнесу для HR-професіоналів.

Главное отличие от традиционных инструментов разработки — возможность разбить код на части и выполнять их по отдельности. Например, вы можете написать одну функцию и сразу проверить, как она работает, не запуская остальные фрагменты кода. Также можно менять порядок выполнения кода.

Удобная штука — отображение вывода сразу под выполненным фрагментом. Благодаря этому Jupyter ноутбук очень популярен в аналитике данных и Data Science. Специалисты получают предварительные результаты, строят графики и другую визуализацию.

Jupyter

1. Поддерживаемые языки

Основной язык Jupyter Notebook — Python. Это связано с тем, что он является преемником более старого проекта — IPython Notebook. Но другие языки тоже поддерживаются. Переключаться между ними можно с помощью магических команд.

Інноваційний курс від robotdreams: Android Developer.
Творіть для мобільного світу.

Если вы работаете с Python, никакие дополнительные команды не нужны. Просто создайте новый документ (об этом поговорим подробнее чуть ниже) и пишите код.

def hello_world(): print("Hello world. ") hello_world()

Обратите внимание, на курсы по Python он наших друзей школы Mate Academy и Hillel. Освойте сложные вещи на простом и понятном языке.

Если нужен код на JavaScript, переключитесь на этот язык с помощью магической команды %%javascript .

Код в этой ячейке будет на JS:

%%javascript const text = "hello world" alert(text)

Собственная магическая команда есть и у скриптового языка bash — %%bash . Код после этой команды будет интерпретирован так, будто вы пишете его в окне терминала, а не в ноутбуке. Например:

%%bash mkdir Highload

В рабочем каталоге будет создана папка Highload. Проверить это можно стандартной командой ls :

%%bash ls

Для написания комментариев и добавления разметки используется язык Markdown. Он поддерживается по умолчанию, как и Python.

Синтаксис очень простой.

# Заголовок 1 уровня ## Заголовок 2 уровня ### Заголовок 3 уровня * [Пункт маркированного списка](#ссылка1) * [Следующий пункт маркированного списка](#ссылка2)

С помощью Markdown в Jupyter Notebook можно создавать интерактивные статьи и целые учебники. Подробнее о синтаксисе языка разметки вы можете узнать из этого репозитория на GitHub.

Освітній курс від laba: Клієнтський сервіс.
Залучайте та зберігайте клієнтів.

Jupyter также позволяет установить дополнительные ядра с языками. Можно добавить Java, Ruby, Perl, С#, С++, SQL, Kotlin, Scala и еще несколько десятков ЯП. Ссылки на ядра с примерами использования смотрите в этом репозитории на GitHub.

2. Преимущества

Работа в Jupyter Notebook очень похожа на написание заметок в документе:

  • Вы пишете код.
  • Вы пишете текст, поясняющий код.

И самое главное — все это можно изменить динамически. Вы переписываете фрагмент кода, снова его запускаете и видите другой результат.

Когда вы снова откроете файл, он не только покажет код, который вы написали во всех разных ячейках, но и результат, который остался с момента последнего выполнения. Это очень полезно, когда вы должны программировать не для создания приложений, а для выполнения и анализа математических и/или технических операций.

Возможно, машинное обучение и Data Science — самые большие области применения Jupyter. Но он может быть невероятно полезным почти в каждой программе на Python, где цель состоит в том, чтобы запустить программу и увидеть результат без создания конечного продукта.

Несмотря на все преимущества, у разработчиков отношение к Jupyter Notebook неоднозначное. Например, его не рекомендуют использовать в качестве среды разработки. Причин несколько:

    В Jupyter Notebook вы пишете не программу, а отдельные куски кода, которые запускаете изолированно друг от друга. Из-за этого получается очень сложное глобальное состояние. Код в ячейках редактируется, меняется. Когда ячеек становится слишком много, бывает сложно понять, откуда берутся переменные и как вы добиваетесь результата.

Професійний курс від laba: Управління командою в бізнесі.
Створюйте ефективну робочу атмосферу.

3. Сферы применения

Основные области применения — нейросети, машинное обучение, анализ и визуализация данных, работа со статистикой. Это подтверждает исследование репозиториев GitHub. Например, в 2020 году больше всего звезд на Github получил проект Fastbook. Это введение в глубокое обучение с помощью библиотек Pytorch и FastAI, опубликованное с помощью Jupyter Notebook.

Самое большое количество звезд у справочника Python по Data Science. Полный текст также опубликован в формате Jupyter Notebooks.

Еще одно популярное направление — поэтапная разработка, когда важно быстро проверять разные куски кода и вносить в них исправления. Например, можно экспериментировать с алгоритмами в поисках оптимального решения или пробовать разные входные данные и сравнивать результаты.

Jupyter Notebook также используют для обучения, чтобы новички могли запускать фрагменты кода и сразу видеть результат. Но выше мы уже упоминали, почему это не всегда полезно, а иногда и вовсе вредно. Такой подход все-таки далек от реальной разработки на Python, как и любом другом языке программирования.

4. Запуск на облаке

Самый простой способ запустить Jupyter Notebook — использовать онлайн-сервисы. Наиболее распространенное решение — облако Google Colaboratory или сокращенно Colab. Это бесплатный сервис, для работы с которым нужна только аккаунт Google.

Кроме Colab есть другие варианты — например, AWS от Amazon или Kaggle. Но они сложнее в освоении. Colab — самый простой, поэтому рекомендуем начать знакомство с него.

  1. Откройте Google Drive.
  2. В левом верхнем углу нажмите «Создать».
  3. Разверните меню «Еще».
  4. Нажмите «Подключить другие приложения».
  5. Выберите и установите приложение Colaboratory.

Чтобы создать первый Colab:

  1. Откройте Google Drive.
  2. В левом верхнем углу нажмите «Создать».
  3. Разверните меню «Еще».
  4. Выберите Google Colaboratory.

Откроется среда, в которой вы можете писать и выполнять код, а также добавлять текстовые пояснения. Google сразу выдает виртуальные ресурсы, которые будут использованы для вычислений в Colab. Но их слишком мало.

Поэтому даже самые простые вычисления на облаке будут занимать очень много времени.

Jupyter

5. Локальный запуск

Вместо облачных вычислений можно использовать ресурсы вашего компьютера. Установить Jupyter Notebook локально можно разными способами. Самые популярные — вместе с набором приложений для обработки данных Anaconda или отдельно через pip .

С Anaconda нет никаких сложностей. Скачиваете установочный файл с официального сайта и ставите как любую другую программу. После установки в системе появится приложение Jupyter Notebook. При его запуске будет запускаться браузер, а внутри него — среда для работы с кодом.

Минус Anaconda в том, что вместе с Jupyter Notebook установится куча других приложений и библиотек, которые могут вам не понадобиться. Чтобы избежать этого, используйте другой способ — установку с помощью pip . Для этого на компьютер должен быть установлен Python.

Посмотрим порядок установки Jupyter Notebook на Windows.

  1. Установите последнюю версию Python на Windows На первом экране мастера установки отметьте опцию Add to Path, чтобы Python автоматически прописался в системных и пользовательских переменных пути.
  2. Запустите командную строку и проверьте версию Python командой python —version . Должна вернуться версия. Если появляется ошибка, проверьте правильность установки Python.
  3. Обновите менеджер пакетов pip: python -m pip install -upgrade pip .
  4. Установите Jupyter Notebook командой: python -m pip install notebook .

На Linux и macOS отличается только порядок установки Python. Команды для обновления pip и установки Jupyter Notebook — аналогичные.

Чтобы запустить Jupyter Notebook, выполните в командной строке:

jupyter notebook

Это откроет ноутбук в браузере, который используется в системе по умолчанию.

Запуск на удаленном сервере

Вместо локальной машины можно использовать удаленный сервер. Хорошее решение, если, например, требуется организовать доступ к ноутбуку для разных пользователей.

Установка на удаленный сервер ничем не отличается от инсталляции на локальном компьютере. Отличия начинаются дальше. Если вы попробуете запустить ноутбук на удаленном сервере, то увидите сообщение об ошибке No web browser found: could not locate runnable browser.

Чтобы устранить эту проблему, нужно настроить туннель SSH, по которому вы будете подключаться к серверу и запускать Jupyter Notebook.

Чтобы создать туннель на Linux/macOS, запустите терминал и выполните команду вида:

ssh -L 8000:localhost:8888 username@your_server_ip

8888 — порт Jupyter Notebook по умолчанию. После запуска команды выше все, что вы запускаете на этом порту, будет появляться на порту 8000 локальной машины. Вместо 8000 можно указать другой порт, который вы предпочитаете. Желательно, чтобы он бы не менее 8000 , поскольку такие порты обычно не используются другими процессами.

Вместо username укажите имя пользователя на удаленном сервере без прав root , а после @ впишите IP-адрес сервера.

После успешного выполнения команды вы установите SSH-туннель с удаленным сервером, на котором установлен ноутбук.

Чтобы запустить его, выполните в терминале команду:

jupyter notebook

Чтобы начать работать с ноутбуками, запустите на локальной машине браузер и перейдите по адресу localhost:8000 . Вместо 8000 укажите тот порт, который вы использовали при установке SSH-туннеля.

На Windows для создания SSH-туннелей используют дополнительное ПО. Самое популярное приложение — PuTTY.

  1. Скачайте, установите и запустите PuTTY.
  2. На вкладке Session в поле Host name or IP address укажите имя или IP-адрес сервера с установленным Jupyter Notebook.
  3. Перейдите на вкладку Connection — SSH — Tunnels.
  4. В поле Source port введите порт локальной машины, через который хотите получать данные. Желательно 8000 или выше.
  5. В поле Destination укажите адрес назначения — localhost:8888 . 8888 — это адрес порта ноутбука по умолчанию.
  6. Нажмите Add. Новый порт должен отобразиться в поле Forwarded ports .

Чтобы запустить соединение, нажмите Open. После успешного подключения вызовите Jupyter Notebook на удаленном сервере командой:

jupyter notebook

Чтобы приступить к работе с ноутбуками, откройте на локальной машине любой браузер и перейдите по адресу localhost:8000 , где 8000 — это адрес порта локальной машины, который вы указали в настройках туннеля в PuTTY.

При запуске на удаленном сервере Jupyter Notebook сначала просит ввести токен или пароль. Найти его можно в терминале, в ответе после запуска ноутбука. Например:

localhost:8888/?token=Example_Jupyter_Token_3cadb8b8b7005d9a46ca4d6675

После запуска Jupyter Notebook покажет все каталоги и файлы, которые хранятся в рабочей директории.

6. Как работать с Jupyter Notebook

Если вы уже попробовали Google Colab, то с запущенным локально Jupyter Notebook разберетесь очень быстро. Интерфейс простой, изучим его на нескольких примерах.

Jupyter

Работа начинается с создания нового ноутбука. Чтобы добавить его, нажмите New и выберите Python 3.

Две главные сущности ноутбука — cell (ячейка) и kernel (ядро). Ядро определяет, как будет выполняться код. По умолчанию используется ядро Python, но, как мы говорили выше, его можно изменить. Код и текст добавляется в ячейки.

Добавление текста

Начните с текстового описания проекта. Для этого измените тип первой ячейки: Cell > Cell Type > Markdown. Теперь в эту ячейку можно добавить текст, размеченный с помощью Markdown. Пусть это будет несколько заголовков:

# Highload ## Мой первый проект в Jupyter Notebook

Чтобы превратить заполненную ячейку в текст, нажмите сочетание клавиш Ctrl + Enter. Затем можно вернуться к ячейке, изменить ее содержимое и снова сохранить этим же сочетанием клавиш. Аналогичным образом добавляются другие текстовые описания. Везде используется синтаксис Markdown.

Добавление кода

Следующий шаг — добавление и выполнение фрагментов кода. В качестве примера импортируйте библиотеку numpy для добавления рандомайзера и затем выполните возведение числа в квадрат.

import numpy as np def square(x): return x * x

В этом фрагменте вы определили функцию возведения числа в квадрат. После запуска ячейки с этим кодом вы сможете ссылаться на np и функцию square — ноутбук уже их знает и видит.

Дальше можно выполнять вычисления.

x = np.random.randint(1, 10) y = square(x) print('%d squared is %d' % (x, y))

Jupyter

По умолчанию библиотеки импортируются так же, как в любой другой среде разработке на Python. Однако есть одно исключение.

Если вы хотите, чтобы визуализация Matplotlib отображалась прямо в ноутбуке, используйте конструкцию %matplotlib inline . Пример импорта:

import numpy as np import pandas as pd import matplotlib.pyplot as plt %matplotlib inline

После такого импорта можно добавлять данные и строить графики, которые будут отображаться прямо в ноутбуке.

Важно помнить, что Jupyter Notebook выполняет код сверху вниз. Поэтому если вносите изменения, обязательно проверяйте, что результат тоже корректируется. Если в ячейке сохраняется устаревший вывод, можно сбросить настройки ядра через меню Kernel:

  1. Restart — перезапуск ядра, очищаются все переменные, которые были определены.
  2. Restart & Clear Output — кроме перезапуска с очищением переменных удаляются все результаты в выводе под ячейками.
  3. Restart & Run All — перезапускает ядро и выполняет все ячейки сверху вниз.

Еще одна полезная функция — прерывание выполнения программы, когда она зависает, например, из-за ошибки в функции или слишком большого объема данных. Сделать это можно через меню Kernel > Interrupt.

Сохранение проекта

Перед сохранением можно изменить название проекта. По умолчанию это файл Untitled.ipynb .

За каждым таким файлом в формате ipynb скрывается текстовый документ, который описывает содержимое сохраненного ноутбука в формате JSON. Каждая ячейка преобразуется в строки. К ним добавляются метаданные. Их даже можно редактировать самостоятельно через меню ноутбука: Edit > Edit Notebook Metadata.

Горячие клавиши

Jupyter Notebook работает в двух режимах: edit mode (редактирование) и command mode (командный режим).

Когда вы работаете с ячейкой, она подсвечивается цветом. Если это зеленый цвет, значит, вы в режиме редактирования и можете вносить изменения. Если это синий цвет, значит, вы в командном режиме и можете управлять ячейкой с помощью специальных команд.

Одно сочетание горячих клавиш вы уже знаете — это Ctrl + Enter. Это сочетание заставляет ячейку выполнить код, который в ней записан. А вот список других клавиш и сочетаний, которые можно использовать в командном режиме:

  • Стрелки вверх и вниз помогают перемещаться между ячейками без помощи мыши.
  • Чтобы добавить ячейку выше текущей, нажмите клавишу A. Чтобы добавить ячейку ниже текущей, нажмите клавишу B.
  • Чтобы изменить тип ячейки на Markdown, нажмите клавишу M.
  • Чтобы изменить тип ячейки на код, нажмите клавишу Y.
  • Чтобы удалить ячейку, выделите и дважды нажмите на клавишу D (D+D).
  • Чтобы выбрать несколько ячеек, зажмите клавишу Shift и нажимайте стрелки вверх или вниз в зависимости от нужного направления.

В режиме редактирования тоже есть поддержка горячих клавиш, хотя сочетаний не так много. Например, чтобы разделить ячейку по курсору, нажмите сочетание Ctrl + Shift + —.

Чтобы переключиться из командного режима в режим редактирования, выделите ячейку и нажмите Enter. Чтобы переключиться обратно в командный режим, нажмите Esc.

Расшаривание ноутбука

Поделиться результатами своей работы в Jupyter Notebook с другими пользователями можно разными способами. Самый простой — отправить файл с расширением *.ipynb . Получатель сможет открыть его в своем ноутбуке.

Можно сохранить содержимое ноутбука в формате HTML, Python и даже PDF. Эти варианты доступны в меню File > Download as.
Можно не отправлять файлы, а расшарить ноутбук онлайн. Популярные способы — GitHub Gist и nbviewer.

Заключение

Теперь вы знаете, что такое Jupyter Notebook, для решения каких задач он подходит и какие у него есть преимущества и недостатки. Вы можете пользоваться ноутбуками, размещенными на облаке, или запускать среду для экспериментов локально, на своем компьютере.

Чтобы узнать больше о Jupyter Notebook, смотрите документацию на официальном сайте. Закрепить знания и разобраться с установкой среды вам поможет это качественное тематическое видео:

Установка, запуск и подключение к Jupyter Notebook на удаленном сервере

Установка, запуск и подключение к Jupyter Notebook на удаленном сервере

Jupyter Notebook — интерактивное веб-приложение с открытым исходным кодом, позвоялющее писать и запускать программный код более чем на 40 языках программирования, включая Python, R, Julia и Scala. Jupyter Notebook — это продукт Project Jupyter, очень полезный для итеративного программирования, поскольку он позволяет написать небольшой фрагмент кода, запустить его и вывести результат.

Jupyter Notebook позволяет создавать документы в форме блокнота, обычно называемые «блокнотами». Блокноты, создаваемые Jupyter Notebook, представляют собой доступные для публикации и воспроизведения исследовательские документы, содержащие элементы расширенного текста, уравнения, код и результаты исполнения (рисунки, таблицы, интерактивные графики). Блокноты можно экспортировать в файлы кода, документы HTML или PDF, а также использовать для создания интерактивных слайд-шоу или веб-страниц.

Эта статья расскажет вам о том, как установить и настроить приложение Jupyter Notebook на веб-сервере Ubuntu 18.04 и подключиться к нему с локального компьютера. Также мы покажем, как использовать Jupyter Notebook для запуска примера кода на Python.

Предварительные требования

Для данного обучающего руководства вам потребуется следующее:

  • Один экземпляр сервера Ubuntu 18.04. На этом сервере должны быть настроены пользователь без привилегий root с привилегиями sudo и брандмауэр. Вы можете выполнить настройку с помощью нашего руководства по первоначальной настройке сервера.
  • На сервере должны быть установлены Python 3, pip и модуль Python venv . Для этого нужно выполнить шаги 1 и 2 нашего обучающего модуля Установка Python 3 и настройка локальной среды программирования в Ubuntu 18.04.
  • На локальном компьютере должен быть запущен современный браузер, который вы будете использовать для доступа к Jupyter Notebook.

Кроме того, если на вашем локальном компьютере используется Windows, вам нужно будет установить PuTTY для создания туннеля SSH для подключения к серверу. Для загрузки и установки PuTTY следуйте указаниям обучающего модуля Создание ключей SSH с помощью PuTTY в Windows.

Шаг 1 — Установка Jupyter Notebook

Поскольку блокноты используются для записи, запуска и просмотра результатов выполнения небольших фрагментов программного кода, предварительно нужно настроить поддержку языка программирования. Jupyter Notebook использует ядро с привязкой к языкам, компьютерную программу, которая запускает и проводит внутренний анализ кода. В Jupyter Notebook имеется много ядер для разных языков, по умолчанию используется IPython. В этом обучающем модуле вы научитесь настраивать Jupyter Notebook для запуска кода Python через ядро IPython.

Если вы выполнили обучающие модули, указанные в разделе «Предварительные требования», у вас должны быть установлены Python 3, pip и виртуальная среда. Приведенные в этом руководстве примеры следуют указаниям по конвенции обучающего модуля Python 3, где виртуальной среде присваивается имя my_env , но вы можете использовать любое другое имя.

Начнем с активации виртуальной среды:

После этого в вашей командной строке будет отображаться имя вашей среды в качестве префикса.

Теперь вы находитесь в виртуальной среде и можете начать установку Jupyter Notebook:

Если установка выполнена успешна, вы увидите примерно следующий результат:

Output
. . . Successfully installed MarkupSafe-1.0 Send2Trash-1.5.0 backcall-0.1.0 bleach-2.1.3 decorator-4.3.0 entrypoints-0.2.3 html5lib-1.0.1 ipykernel-4.8.2 ipython-6.4.0 ipython-genutils-0.2.0 ipywidgets-7.2.1 jedi-0.12.0 jinja2-2.10 jsonschema-2.6.0 jupyter-1.0.0 jupyter-client-5.2.3 jupyter-console-5.2.0 jupyter-core-4.4.0 mistune-0.8.3 nbconvert-5.3.1 nbformat-4.4.0 notebook-5.5.0 pandocfilters-1.4.2 parso-0.2.0 pexpect-4.5.0 pickleshare-0.7.4 prompt-toolkit-1.0.15 ptyprocess-0.5.2 pygments-2.2.0 python-dateutil-2.7.3 pyzmq-17.0.0 qtconsole-4.3.1 simplegeneric-0.8.1 six-1.11.0 terminado-0.8.1 testpath-0.3.1 tornado-5.0.2

Установка Jupyter Notebook на ваш сервер завершена. Теперь мы перейдем к запуску приложения.

Шаг 2 — Запуск Jupyter Notebook

Jupyter Notebook необходимо запускать с VPS, чтобы вы могли подключаться к нему с локального компьютера, используя туннель SSH и свой любимый браузер.

Чтобы запустить сервер Jupyter Notebook, введите следующую команду:

После запуска команды вы увидите примерно следующий результат:

Output
[I 19:46:22.031 NotebookApp] Writing notebook server cookie secret to /home/sammy/.local/share/jupyter/runtime/notebook_cookie_secret [I 19:46:22.365 NotebookApp] Serving notebooks from local directory: /home/sammy/environments [I 19:46:22.365 NotebookApp] 0 active kernels [I 19:46:22.366 NotebookApp] The Jupyter Notebook is running at: [I 19:46:22.366 NotebookApp] http://localhost:8888/?token=Example_Jupyter_Token_3cadb8b8b7005d9a46ca4d6675 [I 19:46:22.366 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation). [W 19:46:22.366 NotebookApp] No web browser found: could not locate runnable browser. [C 19:46:22.367 NotebookApp] Copy/paste this URL into your browser when you connect for the first time, to login with a token: http://localhost:8888/?token=Example_Jupyter_Token_3cadb8b8b7005d9a46ca4d6675&tokenExample_Jupyter_Token_3cadb8b8b7005d9a46ca4d6675

Возможно вы заметили в результатах предупреждение No web browser found . Это можно ожидать, поскольку приложение запущено на сервере, а вы вряд ли установили на него браузер. В следующем разделе этого обучающего модуля вы узнаете, как подключиться к Notebook на сервере, используя туннель SSH.

Сейчас закройте Jupyter Notebook. Для этого нажмите CTRL+C , затем y , а затем ENTER для подтверждения:

Output
Shutdown this notebook server (y/[n])? y [C 20:05:47.654 NotebookApp] Shutdown confirmed [I 20:05:47.654 NotebookApp] Shutting down 0 kernels

Затем выйдите из сервера, используя команду exit :

Вы только что запустили Jupyter Notebook на своем сервере. Чтобы получить доступ к приложению и начать работать с блокнотами, вам потребуется подключиться к приложению через туннель SSH и браузер на локальном компьютере.

Шаг 3 — Подключение к приложению Jupyter Notebook через туннель SSH

Туннель SSH — простой и быстрый способ подключиться к приложению Jupyter Notebook, запущенному на вашем сервере. Secure Shell (обычно SSH) — это сетевой протокол, позволяющий выполнить защищенное подключение к удаленному серверу по незащищенной сети.

Протокол SSH включает механизм переадресации портов, позволяющий подключаться через туннель к определенным приложениям на определенном порту сервера с определенного порта на локальном компьютере. Мы научимся выполнять безопасную «переадресацию» приложения Jupyter Notebook на вашем сервере (по умолчанию использует порт 8888 ) на порт вашего локального компьютера.

Предпочтительный метод создания туннеля SSH зависит от операционной системы вашего локального компьютера. Выберите ниже подраздел, больше всего подходящий для вашего компьютера.

Примечание. Приложение Jupyter Notebook можно установить через веб-консоль DigitalOcean, однако подключение к приложению через туннель SSH следует выполнять с помощью терминала или PuTTY.

Создание туннелей SSH в macOS или Linux

Если на вашем локальном компьютере используется Linux или macOS, туннель SSH можно создать, запустив всего одну команду.

ssh — стандартная команда для создания соединения SSH. Когда она используется с директивой -L , вы можете указать перенаправление определенного порта локального хоста (т.е. локального компьютера) на указанный хост и порт удаленного хоста (в данном случае, на ваш сервер). Это означает, что все запускаемое на заданном порту удаленного сервера ( 8888 , порт Jupyter Notebook по умолчанию) будет появляться на заданном порту локального компьютера ( 8000 в данном примере команды).

Чтобы создать собственный туннель SSH, запустите следующую команду. Вы можете изменить порт 8000 на любой предпочитаемый порт (например, если порт 8000 используется другим процессом). Рекомендуется использовать порт с номером не меньше 8000 , поскольку такие номера портов вряд ли используются другими процессами. Обязательно укажите IP-адрес вашего собственного сервера и имя пользователя сервера без привилегий root:

Если эта команда не выдаст никаких ошибок, вы войдете на удаленный сервер. Там вы должны активировать виртуальную среду:

Затем запустите приложение Jupyter Notebook:

Для подключения к Jupyter Notebook откройте в своем предпочитаемом браузере локальный порт на локальном хосте: http://localhost: 8000 . После подключения к Jupyter Notebook переходите к шагу 4, чтобы научиться его использовать.

Создание туннелей SSH с использованием Windows и PuTTY

PuTTY — клиент SSH с открытым исходным кодом для Windows, который можно использовать для подключения к вашему серверу. После загрузки и установки PuTTY на ваш компьютер Windows (как описано в обучающем модуле из предварительных требований) откройте программу и введите URL или IP-адрес вашего сервера, как показано здесь:

Введите URL или IP-адрес сервера в Putty

Затем нажмите + SSH внизу левой панели и нажмите Tunnels (Туннели). В этом окне введите порт, который хотите использовать для доступа к Jupyter на локальном компьютере ( 8000 ). Рекомендуется использовать порт с номером не меньше 8000 , поскольку такие номера портов вряд ли используются другими процессами. Если порт 8000 используется другим процессом, выберите другой неиспользуемый номер порта. Установите адрес назначения localhost:8888 , поскольку порт 8888 — это тот порт, на котором работает Jupyter Notebook. Затем нажмите кнопку Add (Добавить), после чего порты должны появиться в поле Forwarded ports (Перенаправляемые порты):

Настройте туннель SSH в Putty

Затем нажмите кнопку Open (Открыть). Ваш компьютер подключится к серверу через SSH и соединит желаемые порты туннелем. Если никаких ошибок не появится, вы можете активировать свою виртуальную среду:

Затем запустите Jupyter Notebook:

Затем откройте в предпочитаемом браузере локальный порт, например http://localhost: 8000 (или любой выбранный номер порта), чтобы подключиться к экземпляру Jupyter Notebook, запущенному на сервере. После подключения к Jupyter Notebook переходите к шагу 4, чтобы научиться его использовать.

Шаг 4 — Использование Jupyter Notebook

При доступе через браузер Jupyter Notebook предоставляет информационную панель Notebook, которая выступает как обозреватель файлов и дает интерфейс для создания, редактирования и просмотра блокнотов. Эти блокноты следует рассматривать как документы (сохраненные с расширением файла .ipynb ), в которых вы заполняете любое количество отдельных ячеек. Каждая ячейка содержит интерактивный текстовый редактор, который можно использовать для запуска кода или записи сгенерированного текста. Кроме того, блокноты позволяют записывать и запускать уравнения, использовать графические элементы (такие как изображения или интерактивные графики), а также их можно экспортировать и публиковать в различных форматах ( .ipyb , .pdf , .py ). Чтобы проиллюстрировать некоторые из этих функций, мы создадим файл ноутбука из информационной панели Notebook, напишем простую текстовую панель с уравнением и запустим простой код Python 3.

К этому моменту вы должны были подключиться к серверу через туннель SSH и запустить на сервере приложение Jupyter Notebook. После перехода на адрес http://localhost: 8000 вы увидите страницу входа в систему:

Экран входа в систему Jupyter Notebook

В поле Password (Пароль) или поле токена сверху введите токен, показываемый в результатах после запуска jupyter notebook на сервере:

Output
[I 20:35:17.004 NotebookApp] Writing notebook server cookie secret to /run/user/1000/jupyter/notebook_cookie_secret [I 20:35:17.314 NotebookApp] Serving notebooks from local directory: /home/sammy [I 20:35:17.314 NotebookApp] 0 active kernels [I 20:35:17.315 NotebookApp] The Jupyter Notebook is running at: [I 20:35:17.315 NotebookApp] http://localhost:8888/?token=Example_Jupyter_Token_3cadb8b8b7005d9a46ca4d6675 [I 20:35:17.315 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation). [W 20:35:17.315 NotebookApp] No web browser found: could not locate runnable browser. [C 20:35:17.316 NotebookApp] . . .

Также вы можете скопировать URL с экрана терминала и вставить его в адресную строку браузера.

Jupyter Notebook автоматически покажет все файлы и папки, хранящиеся в каталоге, откуда выполняется запуск. Создайте новый файл блокнота, нажав New (Создать) и выбрав Python 3 в правом верхнем углу информационной панели Notebook:

Создайте новый блокнот Python3

В новом блокноте измените первую ячейку так, чтобы она принимала синтаксис разметки. Для этого нажмите Cell > Cell Type > Markdown (Ячейка > Тип ячейки > Разметка) на панели навигации сверху. Помимо разметки этот тип ячейки также позволяет записывать уравнения в LaTeX. Например, введите в ячейку следующее после ее переключения на разметку:

# Simple Equation Let us now implement the following equation in Python: $$ y = x^2$$ where $x = 2$ 

Чтобы преобразовать разметку в расширенный текстовый формат, нажмите CTRL + ENTER , и получите следующий результат:

Превратите образец уравнения в расширенный текст

Вы можете использовать ячейки разметки для заметок и документирования программного кода.

Теперь выполним простое уравнение и распечатаем результат. Нажмите Insert > Insert Cell Below (Вставка > Вставить ячейку снизу), чтобы вставить ячейку. Введите в новую ячейку следующий код:

x = 2 y = x*x print(y) 

Для запуска кода нажмите CTRL + ENTER и получите следующий результат:

Решение примера уравнения

Это довольно простые примеры того, что можно сделать с Jupyter Notebook. Однако это очень мощное приложение, которое можно использовать для самых разных целей. Отсюда вы можете добавить некоторые библиотеки Python и использовать блокнот, как и в любой другой среде разработки Python.

Заключение

Теперь вы можете писать воспроизводимый код Python и текст, используя приложение Jupyter Notebook на удаленном сервере. Чтобы пройти быстрый обзор Jupyter Notebook, нажмите Help (Справка) в верхней панели навигации и выберите пункт User Interface Tour (Обзор пользовательского интерфейса), как показано здесь:

Поиск обзора Jupyter Notebook

Если вы заинтересовались, вы можете узнать больше о Jupyter Notebook из документации Project Jupyter. Также вы можете использовать полученные в этом обучающем модуле знания, чтобы научиться программировать на Python 3.

Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.

Подключение к JupyterHub с помощью Visual Studio Code

Данная инструкция поможет вам подключиться к серверу JupyterHub в облаке, используя VS Code, установленный на вашем локальном рабочем месте. Таким образом, вы можете использовать мощные сервера в облаке, которые превосходят ваш локальный ноутбук, для запуска ресурсоемких вычислений.

Вы можете развернуть JupyterHub в облаке на ВМ с несколькими GPU, десятками ядер и сотнями гигабайт оперативной памяти.

Для начала работы с JupyterHub через Visual Studio Code на вашем локальном компьютере, выполните шаги:

  1. Получите JupyterHub access token.
    1. Авторизуйтесь в JupyterHub, введя свой логин и пароль.
    2. Перейдите в Hub Control Panel. Данный пункт можно найти, выбрав File -> Hub Control Panel. Затем перейдите на вкладку Token, выбрав этот пункт в верхней части меню.
    3. Введите описание нового токена, выберите срок действия токена и нажмите «Request new API token».
    4. Скопируйте сгенерированный токен и сохраните его в безопасном месте. Вы должны рассматривать его как пароль для вашего JupyterHub. Вы можете и должны отозвать токен, используя этот же раздел Hub Control Panel, когда вы прекратите его использовать.
    https://ml-platform-3c000000000000.ml.msk.vkcs.cloud/jh/user/admin/?token=000f00bdf7d00fbd0000000c0006ebfd 

    Jupyter Hub для высокопроизводительных вычислений

    Назначение: только для запуска уже подготовленных расчетов на суперкомпьютере.
    Запрещается использовать установленный на суперкомпьютере JUPYTER HUB для учебной работы и для процесса разработки!
    Для учебных целей рекомендуется использовать бесплатный web-сервис Google Colab .

    Запускать Jupyter Notebook можно только на вычислительных узлах, используя JupyterHub, доступный в личном кабинете пользователя суперкомпьютера. Ноутбуки, запущенные на головном логин-сервере (sms), будут принудительно завершены.

    Запуск Jupyter Notebook

    Для запуска Jupyter Notebook авторизуйтесь в Личном кабинете пользователя суперкомпьютера при помощи учетных данных от ЕЛК.
    В меню слева выберите Jupyter Notebook, откроется страница:

    Нажмите кнопку «Запустить ноутбук», укажите параметры для запуска задачи и кликните «Запуск»:

    Задача будет поставлена в очередь для ожидания освобождения запрошенных ресурсов:
    Чем меньше ресурсов требует ваша задача и чем меньше у нее временной лимит, тем быстрее она будет запущена планировщиком задач. Например, задачи на 1 ядро с ограничением 30 минут обычно запускаются сразу.
    После запуска задачи на вычислительном узле кластера, откроется интерфейс Jupyter Notebook в оболочке JupyterLab:

    Использование собственных окружений Anaconda в JupyterHub

    Для того, чтобы запустить Jupyter Notebook через JupyterHub в собственном окружении Anaconda необходимо добавить в окружение пакет ipykernel. Для этого в своем окружении выполните команду conda install ipykernel

    Обратите внимание: на вычислительных узлах нет доступа в Интернет. Все необходимые пакеты необходимо предварительно установить, подключившись к логин-серверу суперкомпьютера.

    После установки ядра это окружение появится в списке на главной странице JupyterLab:

    Переключить используемое окружение и ядро можно в уже запущенном ноутбуке, кликнув по названию ядра в правом верхнем углу или в меню Kernel -> Change Kernel.

    Для использования других языков программирования установите соответствующее ядро: https://github.com/jupyter/jupyter/wiki/Jupyter-kernels

    Конвертация Jupyter-ноутбуков для запуска в пакетном режиме

    Код из Jupyter-ноутбуков можно удобно сконвертировать в py-файл для запуска на суперкомпьютере в пакетном режиме. В этом случае ресурсы на вычислительных узлах будут освобождены сразу по завершению расчётов. Пошаговое руководство по конвертации описано в отдельной инструкции.

    Нашли опечатку ?
    Выделите её, нажмите Ctrl+Enter и отправьте нам уведомление. Спасибо за участие!
    Сервис предназначен только для отправки сообщений об орфографических и пунктуационных ошибках.

    • О ВЫШКЕ
    • Цифры и факты
    • Руководство и структура
    • Преподаватели и сотрудники
    • Корпуса и общежития
    • Закупки
    • Обращения граждан в НИУ ВШЭ
    • Фонд целевого капитала
    • Противодействие коррупции
    • Сведения о доходах, расходах, об имуществе и обязательствах имущественного характера
    • Сведения об образовательной организации
    • Людям с ограниченными возможностями здоровья
    • Единая платежная страница
    • Работа в Вышке
    • ОБРАЗОВАНИЕ
    • Лицей
    • Довузовская подготовка
    • Олимпиады
    • Прием в бакалавриат
    • Вышка+
    • Прием в магистратуру
    • Аспирантура
    • Дополнительное образование
    • Центр развития карьеры
    • Бизнес-инкубатор ВШЭ
    • НАУКА
    • Научные подразделения
    • Исследовательские проекты
    • Мониторинги
    • Диссертационные советы
    • Защиты диссертаций
    • Академическое развитие
    • Конкурсы и гранты
    • Научно-образовательный портал IQ.hse.ru
    • XXIV Ясинская (Апрельская) международная научная конференция по проблемам развития экономики и общества
    • РЕСУРСЫ
    • Библиотека
    • Издательский дом ВШЭ
    • Книжный магазин «БукВышка»
    • Типография
    • Медиацентр
    • Журналы ВШЭ
    • Публикации
    • Единый архив экономических и социологических данных
    • Полезные ссылки
    • Министерство науки и высшего образования РФ
    • Министерство просвещения РФ
    • Федеральный портал «Российское образование»
    • Массовые открытые онлайн-курсы

    Шрифты HSE Sans и HSE Slab разработаны в Школе дизайна НИУ ВШЭ

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *